The Applicability of Logic Program Analysis and Transformation to Theorem Proving

Analysis and transformation techniques developed for logic programming can be successfully applied to automatic theorem proving. In this paper we demonstrate how these techniques can prune the search space of the theorem prover, by detecting inference rules and clauses that cannot contribute to proofs. The specialisation techniques developed in this paper are applied to first order clausal theorem provers, but are independent of the logic and the proof system and can therefore be applied to all theorem provers written as logic programs.

[1]  John P. Gallagher,et al.  Fast and Precise Regular Approximations of Logic Programs , 1994, ICLP.

[2]  Justin Zobel,et al.  Derivation of Polymorphic Types for PROLOG Programs , 1987, ICLP.

[3]  Maurice Bruynooghe,et al.  A Practical Framework for the Abstract Interpretation of Logic Programs , 1991, J. Log. Program..

[4]  JOHN F. Young Machine Intelligence , 1971, Nature.

[5]  Corin A. Gurr,et al.  Specialising the Ground Representation in the Logic Programming Language Gödel , 1993, LOPSTR.

[6]  John W. Lloyd,et al.  Foundations of Logic Programming, 1st Edition , 1984 .

[7]  Patrick Cousot Abstract Interpretation of Logic Programs , 1991, ICLP.

[8]  Alan Bundy,et al.  Logic Program Synthesis via Proof Planning , 1992, LOPSTR.

[9]  Bart Selman,et al.  Knowledge Compilation using Horn Approximations , 1991, AAAI.

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

[11]  Peter Sestoft,et al.  Partial evaluation and automatic program generation , 1993, Prentice Hall international series in computer science.

[12]  Lee Naish,et al.  Types and the Intended Meaning of Logic Programs , 1992, Types in Logic Programming.

[13]  Furio Honsell,et al.  A framework for defining logics , 1993, JACM.

[14]  Geoff Sutcliffe Linear-Input Subset Analysis , 1992, CADE.

[15]  Thomas H. Payne,et al.  Case-Free Programs: An Abstraction of Definite Horn Programs , 1990, CADE.

[16]  Randy Goebel,et al.  Gracefully adding negation and disjunction to Prolog , 1986, ICLP.

[17]  Thom W. Frühwirth,et al.  Logic programs as types for logic programs , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[18]  John P. Gallagher,et al.  Deletion of Redundant Unary Type Predicates from Logic Programs , 1992, LOPSTR.

[19]  Ehud Shapiro,et al.  A Type System for Logic Programs , 1988, J. Log. Program..

[20]  William H. Winsborough,et al.  Path-Dependent Reachability Analysis for Multiple Specialization , 1989, NACLP.

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

[22]  John W. Lloyd,et al.  Partial Evaluation in Logic Programming , 1991, J. Log. Program..

[23]  F. Honsell,et al.  A Framework for De ning LogicsRobert Harper , 1987 .

[24]  Pascal Van Hentenryck,et al.  Type analysis of Prolog using type graphs , 1994, PLDI '94.

[25]  John P. Gallagher,et al.  Logic Program Specialisation With Deletion of Useless Clauses , 1993, ILPS.

[26]  Bart Selman,et al.  Forming Concepts for Fast Inference , 1992, AAAI.

[27]  Yves Deville Logic Program Synthesis and Transformation, Proceedings of LOPSTR 93, International Workshop on Logic Program Synthesis and Transformation, Louvain-la-Neuve, Belgium, 7-9 July 1993 , 1994, LOPSTR.

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

[29]  Geoff Sutcliffe,et al.  The TPTP Problem Library , 1994, CADE.

[30]  John P. Gallagher,et al.  Regular approximations of logic programs and their uses , 1992 .

[31]  D. Andre de Waal,et al.  The Power of Partial Evaluation , 1993, LOPSTR.

[32]  John P. Gallagher,et al.  Tutorial on specialisation of logic programs , 1993, PEPM '93.