On the Relation Between Answer Set and SAT Procedures (or, Between cmodels and smodels)

Answer Set Programming (ASP) is a declarative paradigm for solving search problems. State-of-the-art systems for ASP include smodels,dlv, cmodels, and assat. In this paper, our goal is to study the computational properties of such systems both from a theoretical and an experimental point of view. From the theoretical point of view, we start our analysis with cmodels and smodels. We show that though these two systems are apparently different, they are equivalent on a significant class of programs, called tight. By equivalent, we mean that they explore search trees with the same branching nodes, (assuming, of course, a same branching heuristic). Given our result and that the cmodels search engine is based on the Davis Logemann Loveland procedure (dll) for propositional satisfiability (SAT), we are able to establish that many of the properties holding for dll also hold for cmodels and thus for smodels. On the other hand, we also show that there exist classes of non-tight programs which are exponentially hard for cmodels, but “easy” for smodels. We also discuss how our results extend to other systems. From the experimental point of view, we analyze which combinations of reasoning strategies work best on which problems. In particular, we extended cmodels in order to obtain a unique platform with a variety of reasoning strategies, and conducted an extensive experimental analysis on “small” randomly generated and on “large” non randomly generated programs. Considering these programs, our results show that the reasoning strategies that work best on the small problems are completely different from the ones that are best on the large ones. These results point out, e.g., that we can hardly expect to develop one solver with the best performances on all the categories of problems. As a consequence, (i) developers should focus on specific classes of benchmarks, and (ii) benchmarking should take into account whether solvers have been designed for specific classes of programs.

[1]  Endre Szemerédi,et al.  Many hard examples for resolution , 1988, JACM.

[2]  Laurent Simon,et al.  The Essentials of the SAT 2003 Competition , 2003, SAT.

[3]  Miroslaw Truszczynski,et al.  Towards Systematic Benchmarking in Answer Set Programming: The Dagstuhl Initiative , 2004, LPNMR.

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

[5]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[6]  Yuliya Lierler,et al.  SAT-Based Answer Set Programming , 2004, AAAI.

[7]  Armin Haken,et al.  The Intractability of Resolution , 1985, Theor. Comput. Sci..

[8]  Armando Tacchella,et al.  Evaluating Search Heuristics and Optimization Techniques in Propositional Satisfiability , 2001, IJCAR.

[9]  John S. Schlipf,et al.  Answer Set Programming with Clause Learning , 2004, LPNMR.

[10]  E DixonHeidi,et al.  Generalizing Boolean satisfiability II , 2004 .

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

[12]  Fangzhen Lin,et al.  Answer Set Programming Phase Transition: A Study on Randomly Generated Programs , 2003, ICLP.

[13]  Larry Wos,et al.  What Is Automated Reasoning? , 1987, J. Autom. Reason..

[14]  Matthew L. Ginsberg,et al.  Generalizing Boolean Satisfiability II: Theory , 2004, J. Artif. Intell. Res..

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

[16]  Michael Molloy,et al.  A sharp threshold in proof complexity , 2001, STOC '01.

[17]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[18]  Remi Monasson,et al.  On the Analysis of Backtrack Procedures for the Colouring of Random Graphs , 2004 .

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

[20]  Paolo Liberatore,et al.  On the complexity of choosing the branching literal in DPLL , 2000, Artif. Intell..

[21]  Vladimir Lifschitz,et al.  Computing answer sets using program completion , 2003 .

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

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