The Prolog Technology Theorem Prover (
PTTP) is an implementation (in
Common Lisp) of the model elimination theorem-proving procedure that extends
Prolog to the full first-order predicate calculus. PTTP differs from Prolog in its use of: (1)
unification with the occurs check for soundness, (2) depth-first iterative deepening search instead of unbounded depth-first search to make the search strategy complete, and (3) the model elimination inference rule that is added to Prolog inferences to make the inference system complete. PTTP also extends Prolog by providing the capability of printing the proofs it finds. Because PTTP compiles the clauses of a problem, its inference rate is very high. Because PTTP uses depth-first search, its storage requirements are low and term size need not be limited to reduce memory usage at the expense of completeness. PTTP's simple architecture facilitates its adaptation and use in applications.
A version in portable Common Lisp is available here under a BSD-like license; the original is here.
Application Theorem Provers