Pruning Operators for Disjunctive Logic Programming Systems

Disjunctive Logic Programming (DLP) is an advanced formalism for knowledge representation and reasoning. The language of DLP is very expressive and supports the representation of problems of high computational complexity (specifically, all problems in the complexity class Σ$^p_2$=NP$^{NP}$). The DLP encoding of a large variety of problems is often very concise, simple, and elegant. In this paper, we explain the computational process commonly performed by DLP systems, with a focus on search space pruning, which is crucial for the efficiency of such systems. We present two suitable operators for pruning (Fitting's and Well-founded), discuss their peculiarities and differences with respect to efficiency and effectiveness. We design an intelligent strategy for combining the two operators, exploiting the advantages of both. We implement our approach in DLV - the state-of-the-art DLP system - and perform some experiments. These experiments show interesting results, and evidence how the choice of the pruning operator affects the performance of DLP systems.

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

[2]  Jean H. Gallier,et al.  Linear-Time Algorithms for Testing the Satisfiability of Propositional Horn Formulae , 1984, J. Log. Program..

[3]  David Scott Warren,et al.  Computation of Stable Models and Its Integration with Logical Query Processing , 1996, IEEE Trans. Knowl. Data Eng..

[4]  Wolfgang Faber,et al.  Enhancing Eciency and Expressiveness in Answer Set Programming Systems , 2002 .

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

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

[7]  Yuliya Lierler,et al.  Disjunctive Answer Set Programming via Satisfiability , 2005, Answer Set Programming.

[8]  Miroslaw Truszczynski,et al.  Propositional Satisfiability in Answer-Set Programming , 2001, KI/ÖGAI.

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

[10]  Wolfgang Faber,et al.  The DLV system for knowledge representation and reasoning , 2002, TOCL.

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

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

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

[14]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms (Working Paper) , 1971, SWAT.

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

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

[17]  Jürgen Dix,et al.  Transformation-based bottom-up computation of the well-founded model , 1996, Theory and Practice of Logic Programming.

[18]  Rynson W. H. Lau,et al.  Knowledge and Data Engineering for e-Learning Special Issue of IEEE Transactions on Knowledge and Data Engineering , 2008 .

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

[20]  John S. Schlipf,et al.  Computing Well-founded Semantics Faster , 1995, LPNMR.

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

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

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

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

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

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

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

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

[29]  Wolfgang Faber,et al.  Experimenting with Heuristics for Answer Set Programming , 2001, IJCAI.

[30]  Anil Nerode,et al.  Mixed integer programming methods for computing nonmonotonic deductive databases , 1994, JACM.

[31]  Yuliya Lierler,et al.  Cmodels-2: SAT-based Answer Set Solver Enhanced to Non-tight Programs , 2004, LPNMR.

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

[33]  Victor W. Marek,et al.  Computing with Default Logic , 1999, Artif. Intell..

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

[35]  Michael Gelfond,et al.  Logic programming and knowledge representation - The A-Prolog perspective , 2002, Artif. Intell..

[36]  Miroslaw Truszczynski,et al.  aspps - An Implementation of Answer-Set Programming with Propositional Schemata , 2001, LPNMR.

[37]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

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

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

[40]  Michel Minoux,et al.  LTUR: A Simplified Linear-Time Unit Resolution Algorithm for Horn Formulae and Computer Implementation , 1988, Inf. Process. Lett..

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

[42]  Burkhard Freitag,et al.  Transformation-Based Bottom-Up Computation of the Well-Founded Model , 1996, NMELP.

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

[44]  Ann Q. Gates,et al.  TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING , 2005 .

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

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

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

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

[49]  Domenico Saccà,et al.  Effective Implementation of Negation in Database Logic Query Languages , 1993, LOGIDATA+: Deductive Databases with Complex Objects.

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

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