SATCHMORE: SATCHMO with RElevancy

We introduce a relevancy detection algorithm to be used in conjunction with the SATCHMO prover. The version of SATCHMO considered here is essentially a bidirectional prover, utilizing Prolog (back chaining) on Horn clauses and forward chaining on non-Horn clauses. Our extension, SATCHMORE (SATCHMO with RElevancy), addresses the major weakness of SATCHMO: the uncontrolled use of forward chaining. By marking potentially relevant clause head literals, and then requiring that all the head literals be marked relevant (be “totally relevant”) before a clause is used for forward chaining, SATCHMORE is able to guide the use of these rules. Furthermore, the relevancy testing is performed without extending the proof search beyond what is done in SATCHMO. A simple implementation of the extended SATCHMO can be written in Prolog. We describe our relevancy testing approach, present the implementation, prove soundness and completeness, and provide examples that demonstrate the power of relevancy testing.

[1]  Catriel Beeri,et al.  On the power of magic , 1987, J. Log. Program..

[2]  Richard C. T. Lee,et al.  Symbolic logic and mechanical theorem proving , 1973, Computer science classics.

[3]  David W. Reed,et al.  The Near-Horn Approach to Disjunctive Logic Programming , 1991, ELP.

[4]  Robert Demolombe An Efficient Strategy for Non-Horn Deductive Databases , 1991, Theor. Comput. Sci..

[5]  Jack Minker,et al.  Circumscription and Disjunctive Logic Programming , 1991, Artificial and Mathematical Theory of Computation.

[6]  Donald W. Loveland,et al.  Automated theorem proving: a logical basis , 1978, Fundamental studies in computer science.

[7]  Jorge Lobo,et al.  Foundations of disjunctive logic programming , 1992, Logic Programming.

[8]  Jack Minker,et al.  A Fixpoint Semantics for Disjunctive Logic Programs , 1990, J. Log. Program..

[9]  Allan Ramsay Generating relevant models , 2004, Journal of Automated Reasoning.

[10]  Mark E. Stickel,et al.  Upside-down meta-interpretation of the model elimination theorem-proving procedure for deduction and abduction , 1994, Journal of Automated Reasoning.

[11]  J. W. Lloyd,et al.  Foundations of logic programming; (2nd extended ed.) , 1987 .

[12]  David Maier,et al.  Magic sets and other strange ways to implement logic programs (extended abstract) , 1985, PODS '86.

[13]  François Bry,et al.  Query Evaluation in Recursive Databases , 1990 .

[14]  S. D. Wilson,et al.  Incorporating Relevancy Testing in SATCHMO , 1989 .

[15]  John Wylie Lloyd,et al.  Foundations of Logic Programming , 1987, Symbolic Computation.

[16]  François Bry,et al.  SATCHMO: A Theorem Prover Implemented in Prolog , 1988, CADE.

[17]  Hiroshi Fujita,et al.  A Model Generation Theorem Prover in KL1 Using a Ramified -Stack Algorithm , 1991, International Conference on Logic Programming.

[18]  Hirohisa Seki,et al.  On the power of Alexander templates , 1989, PODS.

[19]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[20]  Mark E. Stickel Schubert's Steamroller problem: Formulations and solutions , 2004, Journal of Automated Reasoning.