Predicate Answer Set Programming with Coinduction

We introduce negation into coinductive logic programming (co-LP) via what we term Coinductive SLDNF (co-SLDNF ) resolution. We present declarative and operational semantics of co-SLDNF resolution and present their equivalence under the restriction of rationality and its applications. We apply co-LP with co-SLDNF resolution to Answer Set Programming (ASP). ASP is a powerful programming paradigm for performing nonmonotonic reasoning within logic programming. The current state of ASP solvers has been restricted to “grounded range-restricted function-free normal programs”, with a “bottom-up” evaluation strategy (that is, not goal-driven) until now. The introduction of co-LP with co-SLDNF resolution has enabled the development of top-down goal evaluation strategies for ASP. We present a novel and innovative approach to solving ASP programs with co-LP. Our method eliminates the need for grounding, allows functions, and effectively handles a large class of predicate ASP programs including possibly infinite ASP programs. Moreover, it is goal-directed and top-down execution method that provides an innovative and attractive alternative to current ASP solver technology.

[1]  Kenneth Kunen,et al.  Negation in Logic Programming , 1987, J. Log. Program..

[2]  Gopal Gupta,et al.  Coinductive Logic Programming , 2006, ICLP.

[3]  Taisuke Sato,et al.  Completed Logic Programs and their Consistency , 1990, J. Log. Program..

[4]  Peter J. Stuckey,et al.  Programming with Constraints: An Introduction , 1998 .

[5]  Kees Doets,et al.  From logic to logic programming , 1994, Foundations of computing series.

[6]  Michael J. Maher,et al.  Logic Programming Language Scheme , 1986, Logic Programming: Functions, Relations, and Equations.

[7]  Enrico Pontelli,et al.  A constraint-based approach for specification and verification of real-time systems , 1997, Proceedings Real-Time Systems Symposium.

[8]  Tuomas Aura,et al.  Analyzing single-server network inhibition , 2000, Proceedings 13th IEEE Computer Security Foundations Workshop. CSFW-13.

[9]  François Fages,et al.  A new fixpoint semantics for general logic programs compared with the well-founded and the stable model semantics , 1990, New Generation Computing.

[10]  Esra Erdem,et al.  Fages' Theorem for Programs with Nested Expressions , 2001, ICLP.

[11]  Peter J. Stuckey,et al.  Semantics of Infinite Tree Logic Programming , 1986, Theor. Comput. Sci..

[12]  Ilkka Niemelä,et al.  Efficient Implementation of the Well-founded and Stable Model Semantics , 1996, JICSLP.

[13]  Michael J. Maher,et al.  PROLOG - II as an instance of the logic programming language scheme , 1987, Formal Description of Programming Concepts.

[14]  Joxan Jaffar,et al.  Completeness of the Negation as Failure Rule , 1983, IJCAI.

[15]  Guo He Towards Constraint Satisfaction and Optimization for Dynamic Web Service Composition , 2006 .

[16]  Robert A. Kowalski,et al.  Predicate Logic as Programming Language , 1974, IFIP Congress.

[17]  Benjamin C. Pierce,et al.  Types and programming languages: the next generation , 2003, 18th Annual IEEE Symposium of Logic in Computer Science, 2003. Proceedings..

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

[19]  Krzysztof R. Apt,et al.  Principles of constraint programming , 2003 .

[20]  Joseph E. Stoy,et al.  Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory , 1981 .

[21]  Phan Minh Dung,et al.  On the Generalized Predicate Completion of Non-Horn Programs , 1989, NACLP.

[22]  Michael J. Maher,et al.  A Theory of Complete Logic Programs with Equality , 1984, J. Log. Program..

[23]  Michael Gelfond,et al.  Logic Programs with Classical Negation , 1990, ICLP.

[24]  David Chan,et al.  Constructive Negation Based on the Completed Database , 1988, ICLP/SLP.

[25]  Keijo Heljanko Using Logic Programs with Stable Model Semantics to Solve Deadlock and Reachability Problems for 1-Safe Petri Nets , 1999, Fundam. Informaticae.

[26]  Bruno Courcelle,et al.  Fundamental Properties of Infinite Trees , 1983, Theor. Comput. Sci..

[27]  Ivan Bratko,et al.  Prolog Programming for Artificial Intelligence , 1986 .

[28]  John McCarthy,et al.  Applications of Circumscription to Formalizing Common Sense Knowledge , 1987, NMR.

[29]  Miroslaw Truszczynski,et al.  More on Wire Routing with ASP , 2001, Answer Set Programming.

[30]  Zohar Manna,et al.  The Theoretical Aspects of the Optimal Fixed Point , 1976, SIAM J. Comput..

[31]  Robert A. Kowalski,et al.  The Semantics of Predicate Logic as a Programming Language , 1976, JACM.

[32]  Krzysztof R. Apt,et al.  Logic Programming and Negation: A Survey , 1994, The Journal of Logic Programming.

[33]  Joohyung Lee,et al.  A New Perspective on Stable Models , 2007, IJCAI.

[34]  Alan van Gelser Negation as failure using tight derivations for general logic programs , 1989 .

[35]  Michael J. Maher,et al.  Invited Talk: Some Issues and Trends in the Semantics of Logic Programming , 1986, ICLP.

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

[37]  Esra Erdem,et al.  Transformations of Logic Programs Related to Causality and Planning , 1999, LPNMR.

[38]  David Pearce,et al.  Strongly equivalent logic programs , 2001, ACM Trans. Comput. Log..

[39]  Melvin Fitting,et al.  A Kripke-Kleene Semantics for Logic Programs , 1985, J. Log. Program..

[40]  Michael Gelfond,et al.  Classical negation in logic programs and disjunctive databases , 1991, New Generation Computing.

[41]  Moshe Y. Vardi Verification of Concurrent Programs: The Automata-Theoretic Framework , 1991, Ann. Pure Appl. Log..

[42]  Ulrich Furbach,et al.  Nonmonotonic Reasoning: Towards Efficient Calculi and Implementations , 2001, Handbook of Automated Reasoning.

[43]  V. S. Subrahmanian,et al.  WFS + Branch and Bound = Stable Models , 1995, IEEE Trans. Knowl. Data Eng..

[44]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[45]  Nuel D. Belnap,et al.  A Useful Four-Valued Logic , 1977 .

[46]  K. Schlechta Nonmonotonic Logics: Basic Concepts, Results, and Techniques , 1997 .

[47]  Grigoris Antoniou,et al.  Nonmonotonic reasoning , 1997 .

[48]  R. Kowalski,et al.  Linear Resolution with Selection Function , 1971 .

[49]  Jorge Lobo,et al.  Reasoning about Policies using Logic Programs , 2001, Answer Set Programming.

[50]  Diego Calvanese,et al.  The Description Logic Handbook: Theory, Implementation, and Applications , 2003, Description Logic Handbook.

[51]  Rong Yang,et al.  Andorra I: a parallel Prolog system that transparently exploits both And-and or-parallelism , 1991, PPOPP '91.

[52]  Peter Lucas,et al.  Formal Semantics of Programming Languages: VDL , 1981, IBM J. Res. Dev..

[53]  Yuliya Lierler,et al.  Fages' Theorem and Answer Set Programming , 2000, ArXiv.

[54]  John C. Shepherdson,et al.  Negation as Failure II , 1985, J. Log. Program..

[55]  Alfred Horn,et al.  On sentences which are true of direct unions of algebras , 1951, Journal of Symbolic Logic.

[56]  Martin D. F. Wong,et al.  Wire Routing and Satisfiability Planning , 2000, Computational Logic.

[57]  Kenneth A. Ross,et al.  The well-founded semantics for general logic programs , 1991, JACM.

[58]  Richard Fikes,et al.  STRIPS: A New Approach to the Application of Theorem Proving to Problem Solving , 1971, IJCAI.

[59]  Andrew E. Santosa,et al.  A Coinduction Rule for Entailment of Recursively Defined Properties , 2008, CP.

[60]  Esra Erdem,et al.  Tight logic programs , 2003, Theory and Practice of Logic Programming.

[61]  Christel Baier,et al.  Principles of model checking , 2008 .

[62]  A. J. Batista-Leyva,et al.  On the interpretation of , 2004 .

[63]  Gerhard Brewka,et al.  Nonmonotonic Reasoning: Logical Foundations of Commonsense By Gerhard Brewka (Cambridge University Press, 1991) , 1991, SGAR.

[64]  Jürgen Dix,et al.  Nonmonotonic Reasoning: An Overview , 1997, CSLI Lecture Notes.

[65]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

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

[67]  Bart Selman,et al.  Planning as Satisfiability , 1992, ECAI.

[68]  Victor W. Marek,et al.  Stable models and an alternative logic programming paradigm , 1998, The Logic Programming Paradigm.

[69]  Melvin Fitting Negation as refutation , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[70]  Michael L. Scott,et al.  Programming Language Pragmatics , 1999 .

[71]  David Scott Warren,et al.  Efficient Top-Down Computation of Queries under the Well-Founded Semantics , 1995, J. Log. Program..

[72]  Phan Minh Dung,et al.  A Fixpoint Approach to Declarative Semantics of Logic Programs , 1989, NACLP.

[73]  Agostino Dovier,et al.  A Comparison of CLP(FD) and ASP Solutions to NP-Complete Problems , 2005, ICLP.

[74]  Giorgio Levi,et al.  A Model-Theoretic Reconstruction of the Operational Semantics of Logic Programs , 1993, Inf. Comput..

[75]  Vladimir Lifschitz,et al.  Answer Sets in General Nonmonotonic Reasoning (Preliminary Report) , 1992, KR.

[76]  Esra Erdem,et al.  Transitive Closure, Answer Sets and Predicate Completion , 2001 .

[77]  Peter Aczel,et al.  An Introduction to Inductive Definitions , 1977 .

[78]  John McCarthy,et al.  Circumscription - A Form of Non-Monotonic Reasoning , 1980, Artif. Intell..

[79]  Jürgen Dix,et al.  A Classification Theory of Semantics of Normal Logic Programs: I. Strong Properties , 1995, Fundam. Informaticae.

[80]  M. A. Nait Abdallah,et al.  Top-Down Semantics of Fair Computations of Logic Programs , 1985, J. Log. Program..

[81]  Luís Moniz Pereira,et al.  Revised Stable Models - A Semantics for Logic Programs , 2005, EPIA.

[82]  Timo Soininen,et al.  Extending and implementing the stable model semantics , 2000, Artif. Intell..

[83]  Vladimir Lifschitz,et al.  Answer set programming and plan generation , 2002, Artif. Intell..

[84]  Robin Milner,et al.  Co-Induction in Relational Semantics , 1991, Theor. Comput. Sci..

[85]  Jon Doyle,et al.  A Truth Maintenance System , 1979, Artif. Intell..

[86]  Enrico Pontelli,et al.  Credulous Resolution for Answer Set Programming , 2008, AAAI.

[87]  James Hein Completions of Perpetual Logic Programs , 1992, Theor. Comput. Sci..

[88]  C. A. R. Hoare,et al.  An axiomatic basis for computer programming , 1969, CACM.

[89]  Michael J. Maher,et al.  Optimal Fixedpoints of Logic Programs , 1985, Theor. Comput. Sci..

[90]  John McCarthy,et al.  Programs with common sense , 1960 .

[91]  Melvin Fitting,et al.  The Family of Stable Models , 1993, J. Log. Program..

[92]  David Park,et al.  Concurrency and Automata on Infinite Sequences , 1981, Theoretical Computer Science.

[93]  Melvin Fitting,et al.  Notes on the mathematical aspects of Kripke's theory of truth , 1986, Notre Dame J. Formal Log..

[94]  Jia-Huai You,et al.  Unfolding partiality and disjunctions in stable model semantics , 2000, TOCL.

[95]  François Fages,et al.  Consistency of Clark's completion and existence of stable models , 1992, Methods Log. Comput. Sci..

[96]  Viktor Schuppan,et al.  Liveness Checking as Safety Checking for Infinite State Spaces , 2006, INFINITY.

[97]  J. A. Robinson,et al.  A Machine-Oriented Logic Based on the Resolution Principle , 1965, JACM.

[98]  Keith L. Clark,et al.  Negation as Failure , 1987, Logic and Data Bases.

[99]  C. R. Ramakrishnan,et al.  Efficient Model Checking Using Tabled Resolution , 1997, CAV.

[100]  Hassan Aït-Kaci,et al.  Warren's Abstract Machine: A Tutorial Reconstruction , 1991 .

[101]  Michael J. Maher Complete axiomatizations of the algebras of finite, rational and infinite trees , 1988, [1988] Proceedings. Third Annual Information Symposium on Logic in Computer Science.

[102]  Robert F. Stark,et al.  The Proof Theory of Logic Programs with Negation , 1992 .

[103]  Bart Selman,et al.  Encoding Plans in Propositional Logic , 1996, KR.

[104]  Ulf Nilsson,et al.  Logic, programming and Prolog , 1990 .

[105]  Dina Q. Goldin,et al.  Interaction, evolution, and intelligence , 2001, Proceedings of the 2001 Congress on Evolutionary Computation (IEEE Cat. No.01TH8546).

[106]  David Scott Warren,et al.  Tabled evaluation with delaying for general logic programs , 1996, JACM.

[107]  D. Loveland A Linear Format for Resolution , 1970 .

[108]  Vladimir Lifschitz,et al.  Nested expressions in logic programs , 1999, Annals of Mathematics and Artificial Intelligence.

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

[110]  Mathieu Jaume,et al.  On Greatest Fixpoint Semantics of Logic Programming , 2002, J. Log. Comput..

[111]  Reijo Sulonen,et al.  A Practical Tool for Mass-Customising Configurable Products , 2003 .

[112]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[113]  Gopal Gupta,et al.  Towards Predicate Answer Set Programming via Coinductive Logic Programming , 2009, AIAI.

[114]  Ilkka Niemelä,et al.  Smodels - An Implementation of the Stable Model and Well-Founded Semantics for Normal LP , 1997, LPNMR.

[115]  Zohar Manna,et al.  The optimal approach to recursive programs , 1977, Commun. ACM.

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

[117]  Bart Selman,et al.  Pushing the Envelope: Planning, Propositional Logic and Stochastic Search , 1996, AAAI/IAAI, Vol. 2.

[118]  John C. Shepherdson,et al.  Negation as Failure: A Comparison of Clark's Completed Data Base and Reiter's Closed World Assumption , 1984, J. Log. Program..

[119]  Bernhard Nebel,et al.  Encoding Planning Problems in Nonmonotonic Logic Programs , 1997, ECP.

[120]  R. Reiter On Closed World Data Bases , 1987, Logic and Data Bases.

[121]  Gopal Gupta,et al.  Coinductive Logic Programming and its Application to Boolean SAT , 2009, FLAIRS.

[122]  Franz Baader,et al.  Unification theory , 1986, Decis. Support Syst..

[123]  Joseph R. Shoenfield,et al.  Mathematical logic , 1967 .

[124]  Vladimir Lifschitz,et al.  Two components of an action language , 1997, Annals of Mathematics and Artificial Intelligence.

[125]  Alain Colmerauer,et al.  Equations and Inequations on Finite and Infinite Trees , 1984, FGCS.

[126]  John W. Lloyd,et al.  A Completeness Theorem for SLDNF Resolution , 1989, J. Log. Program..

[127]  Li-Yan Yuan,et al.  Enhancing global SLS-resolution with loop cutting and tabling mechanisms , 2004, Theor. Comput. Sci..

[128]  J Edgecumbe,et al.  The birth. , 1978, The Australian nurses' journal. Royal Australian Nursing Federation.

[129]  A. Satterfield,et al.  TREATMENT , 1924, California and western medicine.

[130]  Vladimir Lifschitz,et al.  Representing Transition Systems by Logic Programs , 1999, LPNMR.

[131]  William G. Golson Toward a Declarative Semantics for Infinite Objects in Logic Programming , 1988, J. Log. Program..

[132]  David A. Schmidt The structure of typed programming languages , 1994, Foundations of computing series.

[133]  Jürgen Dix,et al.  Semantics of Logic Programs: Their Intuitions and Formal Properties. An Overview , 1996, Logic, Action, and Information.

[134]  Tommi Syrjanen,et al.  A Rule-Based Formal Model For Software Configuration , 1999 .

[135]  Davide Sangiorgi,et al.  The Pi-Calculus - a theory of mobile processes , 2001 .

[136]  Krzysztof R. Apt,et al.  Contributions to the Theory of Logic Programming , 1982, JACM.

[137]  Vladimir Lifschitz,et al.  Splitting a Logic Program , 1994, ICLP.

[138]  Gerald Pfeifer,et al.  The KR System dlv: Progress Report, Comparisons and Benchmarks , 1998, KR.

[139]  Richard L. Mendelsohn,et al.  First-Order Modal Logic , 1998 .

[140]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[141]  Kenneth Kunen,et al.  Signed Data Dependencies in Logic Programs , 1989, J. Log. Program..

[142]  Patrik Simons,et al.  Extending the Stable Model Semantics with More Expressive Rules , 1999, LPNMR.

[143]  Saul A. Kripke,et al.  Outline of a Theory of Truth , 1975 .

[144]  M. A. Nait Abdallah,et al.  On the Interpretation of Infinite Computations in Logic Programming , 1984, ICALP.

[145]  Richard S. Bird,et al.  Programs and Machines , 1976 .

[146]  Adrian Walker,et al.  Towards a Theory of Declarative Knowledge , 1988, Foundations of Deductive Databases and Logic Programming..

[147]  Liz Sonenberg,et al.  Fixed Point Theorems and Semantics: A Folk Tale , 1982, Inf. Process. Lett..

[148]  Giorgio Levi,et al.  Declarative Modeling of the Operational Behavior of Logic Languages , 1989, Theor. Comput. Sci..

[149]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[150]  Giorgio Levi,et al.  Contributions to the semantics of logic perpetual processes , 2004, Acta Informatica.

[151]  Raymond Reiter,et al.  A Logic for Default Reasoning , 1987, Artif. Intell..

[152]  Michael Gelfond,et al.  An A Prolog decision support system for the Space Shuttle , 2001, Answer Set Programming.

[153]  Robert C. Moore Semantical Considerations on Nonmonotonic Logic , 1985, IJCAI.

[154]  Gerald Pfeifer,et al.  A Deductive System for Non-Monotonic Reasoning , 1997, LPNMR.

[155]  Chitta Baral,et al.  Knowledge Representation, Reasoning and Declarative Problem Solving , 2003 .

[156]  Martin Gebser,et al.  Tableau Calculi for Answer Set Programming , 2006, ICLP.

[157]  Alan Mycroft,et al.  Logic Programs and Many-Valued Logic , 1984, STACS.

[158]  Fangzhen Lin,et al.  ASSAT: computing answer sets of a logic program by SAT solvers , 2002, Artif. Intell..

[159]  Krzysztof R. Apt,et al.  Constraint logic programming using Eclipse , 2007 .

[160]  Alain Colmerauer,et al.  The birth of Prolog , 1996 .

[161]  Chitta Baral,et al.  Logic Programming and Knowledge Representation , 1994, J. Log. Program..

[162]  Michael Gelfond,et al.  Towards an Integration of Answer Set and Constraint Solving , 2005, ICLP.

[163]  Andrew D. Gordon A Tutorial on Co-induction and Functional Programming , 1994, Functional Programming.

[164]  Vladimir Lifschitz,et al.  On the Declarative Semantics of Logic Programs with Negation , 1987, Foundations of Deductive Databases and Logic Programming..

[165]  Teodor C. Przymusinski On the Declarative Semantics of Deductive Databases and Logic Programs , 1988, Foundations of Deductive Databases and Logic Programming..

[166]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[167]  Ilkka Niemelä,et al.  Developing a Declarative Rule Language for Applications in Product Configuration , 1999, PADL.

[168]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[169]  Mark Wallace,et al.  A Treatment of Negation during Partial Evaluation , 1989, META.

[170]  Ilkka Niemelä,et al.  Logic programs with stable model semantics as a constraint programming paradigm , 1999, Annals of Mathematics and Artificial Intelligence.

[171]  Kenneth A. Ross,et al.  Unfounded sets and well-founded semantics for general logic programs , 1988, PODS.

[172]  Zohar Manna,et al.  The optimal fixedpoint of recursive programs , 1975, STOC.

[173]  Wolfgang Bibel,et al.  Automated Theorem Proving , 1987, Artificial Intelligence / Künstliche Intelligenz.

[174]  Vladimir Lifschitz,et al.  Missionaries and Cannibals in the Causal Calculator , 2000, KR.

[175]  Robert A. Kowalski,et al.  Algorithm = logic + control , 1979, CACM.

[176]  Kevin Knight,et al.  Unification: a multidisciplinary survey , 1989, CSUR.

[177]  Raymond Reiter,et al.  Knowledge in Action: Logical Foundations for Specifying and Implementing Dynamical Systems , 2001 .

[178]  J. W. LLOYD,et al.  Making Prolog more Expressive , 1984, J. Log. Program..

[179]  Daniel M. Berry,et al.  Operational and Denotational Semantics of Prolog , 1987, J. Log. Program..

[180]  Javier Esparza,et al.  Implementing LTL model checking with net unfoldings , 2001, SPIN '01.

[181]  Zohar Manna,et al.  A new approach to recursive programs. , 1975 .

[182]  Mathieu Jaume,et al.  Logic Programming and Co-inductive Definitions , 2000, CSL.

[183]  Alain Colmerauer,et al.  An introduction to Prolog III , 1989, CACM.

[184]  Agostino Cortesi,et al.  Graph Properties for Normal Logic Programs , 1993, Theor. Comput. Sci..

[185]  Vladimir Lifschitz,et al.  Answer Set Planning (Abstract) , 1999, LPNMR.

[186]  Fabio Massacci,et al.  Verifying security protocols as planning in logic programming , 2001, ACM Trans. Comput. Log..

[187]  Wolfgang Faber,et al.  The Diagnosis Frontend of the dlv System , 1999, AI Commun..

[188]  Alberto Martelli,et al.  An Efficient Unification Algorithm , 1982, TOPL.

[189]  Michael Gelfond,et al.  On Stratified Autoepistemic Theories , 1987, AAAI.