8.2 Wrapping it up (Theorem Proving)

Driver Predicate and Code Summary for the code of this Chapter.

The file prop.pl contains a simple driver for theorem proving:

theorem(Formula) :-         
        naonly(Formula,ConvFormula),
        \+ tabl(false(ConvFormula),[],_).

Test it! theorem(walk(john) v (~walk(john))).

All Files

Here's a summary of the files that make up the implementation we've discussed:

propTabl.pl: View Download

The core of the implementation: tabl/3 and clash/3

comsemLib.pl: View Download

Auxiliary predicates: naonly/2 and toconj/2

prop.pl: View Download

The wrapper for model generation and theorem proving: modGen/3 and theorem/1.

comsemOperators.pl: View Download

Our usual operator definitions


Aljoscha Burchardt, Stephan Walter, Alexander Koller, Michael Kohlhase, Patrick Blackburn and Johan Bos
Version 1.2.5 (20030212)