Enhancing disjunctive logic programming systems by SAT checkers

Disjunctive logic programming (DLP) with stable model semantics is a powerful nonmonotonic formalism for knowledge representation and reasoning. Reasoning with DLP is harder than with normal (v-free) logic programs, because stable model checking--deciding whether a given model is a stable model of a propositional DLP program--is co-NP-complete, while it is polynomial for normal logic programs.This paper proposes a new transformation ΓM(P), which reduces stable model checking to UNSAT--i.e., to deciding whether a given CNF formula is unsatisfiable. The stability of a model M of a program P thus can be verified by calling a Satisfiability Checker on the CNF formula ΓM(P). The transformation is parsimonious (i.e., no new symbol is added), and efficiently computable, as it runs in logarithmic space (and therefore in polynomial time). Moreover, the size of the generated CNF formula never exceeds the size of the input (and is usually much smaller). We complement this transformation with modular evaluation results, which allow for efficient handling of large real-world reasoning problems.The proposed approach to stable model checking has been implemented in DLV--a state-of-the-art implementation of DLP. A number of experiments and benchmarks have been run using SATZ as Satisfiability checker. The results of the experiments are very positive and confirm the usefulness of our techniques.

[1]  Rina Dechter,et al.  Propositional semantics for disjunctive logic programs , 1994, Annals of Mathematics and Artificial Intelligence.

[2]  Jack Minker,et al.  Logic-Based Artificial Intelligence , 2000 .

[3]  L. Sterling Disjunctive Semantics based upon Partial and Bottom-Up Evaluation , 1995 .

[4]  Francesco Buccafurri,et al.  Enhancing Disjunctive Datalog by Constraints , 2000, IEEE Trans. Knowl. Data Eng..

[5]  Georg Gottlob,et al.  The Complexity of Logic-Based Abduction , 1993, STACS.

[6]  Christine Froidevaux,et al.  Negation by Default and Unstratifiable Logic Programs , 1991, Theor. Comput. Sci..

[7]  autoepistemic Zogic Logic programming and negation : a survey , 2001 .

[8]  Clara Pizzuti,et al.  Efficient Evaluation of a Class of Ordered Logic Programs , 1997, Data Knowl. Eng..

[9]  Teodor C. Przymusinski Stationary Semantics for Disjunctive Logic Programs and Deductive Databases , 1990, NACLP.

[10]  Georg Gottlob,et al.  Complexity Results for Nonmonotonic Logics , 1992, J. Log. Comput..

[11]  Chiaki Sakama,et al.  Possible Model Semantics for Disjunctive Databases , 1989, DOOD.

[12]  Jürgen Dix,et al.  DisLoP: A Research Project on Disjunctive Logic Programming , 1997, AI Commun..

[13]  D. Warren,et al.  Xsb -a System for Eeciently Computing Well Founded Semantics , 1997 .

[14]  Michael Kifer,et al.  Deductive and Object-Oriented Databases , 1991 .

[15]  Jürgen Dix,et al.  Implementing Semantics of Disjunctive Logic Programs Using Fringes and Abstract Properties (Extended Abstract) , 1993, LPNMR.

[16]  Georg Gottlob,et al.  Complexity of Propositional Knowledge Base Revision , 1992, CNKBS.

[17]  Hudson Turner,et al.  Satisfiability planning with Causal Theories , 1998, KR.

[18]  Dietmar Seipel,et al.  DisLog - A System for Reasoning in Disjunctive Deductive Databases , 1994 .

[19]  Esra Erdem,et al.  Applications of Logic Programming to Planning: Computational Experiments , 1999 .

[20]  Wolfgang Faber,et al.  Declarative problem-solving using the DLV system , 2000 .

[21]  Jack Minker,et al.  Bottom-Up Compuation of Perfect Models for Disjunctive Theories , 1995, J. Log. Program..

[22]  Francesco Scarcello,et al.  Disjunctive Stable Models: Unfounded Sets, Fixpoint Semantics, and Computation , 1997, Inf. Comput..

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

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

[25]  Frédéric Saubion,et al.  New Generation Systems for Non-monotonic Reasoning , 2001, LPNMR.

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

[27]  Ilkka Niemelä,et al.  Smodels: A System for Answer Set Programming , 2000, ArXiv.

[28]  Hudson Turner,et al.  Polynomial-Length Planning Spans the Polynomial Hierarchy , 2002, JELIA.

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

[30]  Kenneth A. Ross,et al.  The Well Founded Semantics for Disjunctive Logic Programs , 1989, DOOD.

[31]  Nicola Leone,et al.  Stable Model Checking Made Easy , 1999, IJCAI.

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

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

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

[35]  Victor W. Marek,et al.  Default Reasoning System DeReS , 1996, KR.

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

[37]  Vladik Kreinovich,et al.  Computational Complexity of Planning and Approximate Planning in Presence of Incompleteness , 1999, IJCAI.

[38]  Juliana Freire,et al.  XSB: A System for Effciently Computing WFS , 1997, LPNMR.

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

[40]  Georg Gottlob,et al.  Default Logic as a Query Language , 1997, IEEE Trans. Knowl. Data Eng..

[41]  Arthur B. Markman,et al.  Knowledge Representation , 1998 .

[42]  Georg Gottlob,et al.  On the Complexity of Propositional Knowledge Base Revision, Updates, and Counterfactuals , 1992, Artif. Intell..

[43]  Stefan Woltran,et al.  Solving Advanced Reasoning Tasks Using Quantified Boolean Formulas , 2000, AAAI/IAAI.

[44]  Georg Gottlob,et al.  On the complexity of propositional knowledge base revision, updates, and counterfactuals , 1992, Artif. Intell..

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

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

[47]  Christos H. Papadimitriou,et al.  Computational complexity , 1993 .

[48]  Thomas Linke,et al.  NoMoRe : A System for Non-Monotonic Reasoning under Answer Set Semantics , 2001, LPNMR.

[49]  Luigi Palopoli,et al.  Reasoning with Minimal Models: Efficient Algorithms and Applications. , 1994, KR 1994.

[50]  Georg Gottlob,et al.  Complexity and expressive power of logic programming , 1997, Proceedings of Computational Complexity. Twelfth Annual IEEE Conference.

[51]  Thomas Linke,et al.  NoMoRe : A System for Non-monotonic Reasoning with Logic Programs under Answer Set Semantics , 2001, IJCAR.

[52]  Miroslaw Truszczynski,et al.  dcs: An Implementation of DATALOG with Constraints , 2000, ArXiv.

[53]  Chu Min Li,et al.  Heuristics Based on Unit Propagation for Satisfiability Problems , 1997, IJCAI.

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

[55]  Pascal Van Hentenryck Computing Stable Models by Program Transformation , 1994 .

[56]  Ilkka Niemelä,et al.  Bounded LTL model checking with stable models , 2003, Theory Pract. Log. Program..

[57]  Toby Walsh,et al.  Beyond NP: the QSAT phase transition , 1999, AAAI/IAAI.

[58]  A. Nerode,et al.  Implementing Semantics of Disjunctive Logic Programs Using Fringes and Abstract Properties , 1993 .

[59]  Chitta Baral Knowledge Representation, Reasoning and Declarative Problem Solving: Query answering and answer set computing systems , 2003 .

[60]  Georg Gottlob,et al.  Disjunctive datalog , 1997, TODS.

[61]  Georg Gottlob,et al.  On the computational cost of disjunctive logic programming: Propositional case , 1995, Annals of Mathematics and Artificial Intelligence.

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

[63]  Patrick Brézillon,et al.  Lecture Notes in Artificial Intelligence , 1999 .

[64]  Teodor C. Przymusinski Static semantics for normal and disjunctive logic programs , 1995, Annals of Mathematics and Artificial Intelligence.

[65]  Danny De Schreye,et al.  Answer Set Planning , 1999 .

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

[67]  Wolfgang Faber,et al.  DLV - A System for Declarative Problem Solving , 2000, ArXiv.

[68]  Jack Minker,et al.  On Indefinite Databases and the Closed World Assumption , 1987, CADE.

[69]  Nils J. Nilsson,et al.  Artificial Intelligence , 1974, IFIP Congress.