Summary: Connecting a Logical Framework to a
First≠Order Logic Prover (Extended Version) #
Andreas Abel, Thierry Coquand, and Ulf Norell
Department of Computing Science, Chalmers University of Technology
Abstract. We present one way of combining a logical framework and
first≠order logic. The logical framework is used as an interface to a first≠
order theorem prover. Its main purpose is to keep track of the structure
of the proof and to deal with the high level steps, for instance, induction.
The steps that involve purely propositional or simple first≠order reasoning
are left to a first≠order resolution prover (the system Gandalf in our
prototype). The correctness of this interaction is based on a general meta≠
theoretic result. One feature is the simplicity of our translation between
the logical framework and first≠order logic, which uses implicit typing.
Implementation and case studies are described.
We work towards human≠readable and machine≠verifiable proof documents for
mathematics and computer science. As argued by de Bruijn [dB80], dependent
type theory o#ers an ideal formal system for representing reasoning steps, such
as introducing parameters or hypotheses, naming constants or lemmas, using