| | |
Summary: Connecting a Logical Framework to a
FirstOrder Logic Prover #
Andreas Abel, Thierry Coquand, and Ulf Norell
Department of Computing Science, Chalmers University of Technology
{abel,coquand,ulfn}@cs.chalmers.se
Abstract. We present one way of combining a logical framework and firstorder
logic. The logical framework is used as an interface to a firstorder 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 firstorder reasoning are left to a firstorder resolution
prover (the system Gandalf in our prototype). The correctness of this interaction
is based on a general metatheoretic result. One feature is the simplicity of our
translation between the logical framework and firstorder logic, which uses im
plicit typing. Implementation and case studies are described.
Introduction
We work towards humanreadable and machineverifiable proof documents for mathe
matics and computer science. As argued by de Bruijn [11], dependent type theory offers
an ideal formal system for representing reasoning steps, such as introducing parameters
or hypotheses, naming constants or lemmas, using a lemma or a hypothesis. Type the
ory provides explicit notations for these proof steps, with good logical properties. Using
|