@MISC{Schwichtenberg00proofsearch, author = {Helmut Schwichtenberg}, title = {Proof Search in Minimal Logic}, year = {2000} }

Share

OpenURL

Abstract

this paper was the necessity to have a guide for our implementation, we have paid particular attention to write at least the parts of the proofs with algorithmic content as clear and complete as possible. The paper is organized as follows. Section 2 defines the pattern unification algorithm, and in section 3 its correctness and completeness is proved. Section 4 presents the proof search algorithm, and again its correctness and completeness is proved. The final section 5 contains what we have to say about extensions to and 9. 2 The unification algorithm Unif We work in the simply typed -calculus, with the usual conventions. For instance, whenever we write a term we assume that it is correctly typed. Substitutions are denoted by '; /; ae. The result of applying a substitution ' to a term t or a formula A is written as t' or A', with the understanding that after the substitution all terms are brought into long normal form. Q always denotes a 898-prefix, say 8~x9~y8~z, with distinct variables. We call ~x the signature variables, ~y the flexible variables and ~z the forbidden variables of Q, and write Q 9 for the existential part 9~y of Q. Q-terms are inductively defined by the following clauses. ffl If u is a universally quantified variable in Q or a constant, and ~r are Q-terms, then u~r is a Q-term. ffl For any flexible variable y and distinct forbidden variables ~z from Q, y~z is a Q-term. ffl If r is a Q8z-term, then zr is a Q-term. Explicitely, r is a Q-term iff all its free variables are in Q, and for every subterm y~r of r with y free in r and flexible in Q, the ~r are distinct variables either -bound in r (such that y~r is in the scope of this ) or else forbidden in Q. Q-goals and Q-clauses are simultaneously defined by ffl If ~r are Q-terms, then P~r is...