Combining interactive and automatic reasoning in first order theories of functional programs

  • Authors:
  • Ana Bove;Peter Dybjer;Andrés Sicard-Ramírez

  • Affiliations:
  • Chalmers University of Technology, Gothenburg, Sweden;Chalmers University of Technology, Gothenburg, Sweden;EAFIT University, Medellín, Colombia

  • Venue:
  • FOSSACS'12 Proceedings of the 15th international conference on Foundations of Software Science and Computational Structures
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

We propose a new approach to the computer-assisted verification of functional programs. We work in first order theories of functional programs which are obtained by extending Aczel's first order theory of combinatory formal arithmetic with positive inductive and coinductive predicates. Rather than building a special purpose system we implement our theories in Agda, a proof assistant for dependent type theory which can be used as a generic theorem prover. Agda provides support for interactive reasoning by encoding first order theories using the formulae-as-types principle. Further support is provided by off-the-shelf automatic theorem provers for first order logic which can be called by a program which translates Agda representations of first order formulae into the TPTP language understood by the provers. We show some examples where we combine interactive and automatic reasoning, covering both proof by induction and coinduction.