cmodels – SAT-Based Disjunctive Answer Set Solver

  • Yuliya Lierler
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3662)


Disjunctive logic programming under the stable model semantics [GL91] is a new methodology called answer set programming (ASP) for solving combinatorial search problems. This programming method uses answer set solvers, such as dlv [Lea05], gnt[Jea05], smodels [SS05], assat [LZ02], cmodels[Lie05a]. Systems dlv and gnt are more general as they work with the class of disjunctive logic programs, while other systems cover only normal programs. DLV is uniquely designed to find the answer sets for disjunctive logic programs. On the other hand, gnt first generates possible stable model candidates and then tests the candidate on the minimality using system SMODELS as an inference engine for both tasks. Systems CMODELS and ASSAT use SAT solvers as search engines. They are based on the relationship between the completion semantics [Cla78], loop formulas [LZ02] and answer set semantics for logic programs. Here we present the implementation of a SAT-based algorithm for finding answer sets for disjunctive logic programs within cmodels. The work is based on the definition of completion for disjunctive programs [LL03] and the generalisation of loop formulas [LZ02] to the case of disjunctive programs [LL03]. We propose the necessary modifications to the SAT based ASSAT algorithm [LZ02] as well as to the generate and test algorithm from [GLM04] in order to adapt them to the case of disjunctive programs. We implement the algorithms in cmodels and demonstrate the experimental results.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [Cla78]
    Clark, K.: Negation as failure. In: Gallaire, H., Minker, J. (eds.) Logic and Data Bases, pp. 293–322. Plenum Press, New York (1978)Google Scholar
  2. [FL05]
    Ferraris, P., Lifschitz, V.: Weight constraints as nested expressions. Theory and Practice of Logic Programming 5, 45–74 (2005)zbMATHCrossRefMathSciNetGoogle Scholar
  3. [GL91]
    Gelfond, M., Lifschitz, V.: Classical negation in logic programs and disjunctive databases. New Generation Computing 9, 365–385 (1991)CrossRefGoogle Scholar
  4. [GLM04]
    Giunchiglia, E., Lierler, Y., Maratea, M.: Sat-based answer set programming. In: Proc. AAAI 2004, pp. 61–66 (2004)Google Scholar
  5. [Jea05]
    Janhunen, T., et al.: GnT (Generate’n’Test): A Solver for Disjunctive Logic Programs (2005), Available under
  6. [JNSY00]
    Janhunen, T., Niemela, I., Simons, P., You, J.H.: Unfolding partiality and disjunctions in stable model semantics. In: Proc. KR (2000)Google Scholar
  7. [KLP03]
    Koch, C., Leone, N., Pfeifer, G.: Enhancing disjunctive logic programming systems by sat checkers. Artificial Intelligence 151, 177–212 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  8. [Lea05]
    Leone, N., et al.: A disjunctive datalog system DLV (2005-02-23) (2005), Available under
  9. [Lie05a]
    Lierler, Y.: CMODELS – a tool for computing answer set using SAT solvers (2005), Available under
  10. [Lie05b]
    Lierler, Y.: Cmodels for tight disjunctive logic programs. In: 19th Workshop on (Constraint) Logic Programming W(C)LP (2005)Google Scholar
  11. [LL03]
    Lee, J., Lifschitz, V.: Loop formulas for disjunctive logic programs. In: Palamidessi, C. (ed.) ICLP 2003. LNCS, vol. 2916, pp. 451–465. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  12. [LZ02]
    Lin, F., Zhao, Y.: ASSAT: Computing answer sets of a logic program by SAT solvers. In: Proc. AAAI 2002 (2002)Google Scholar
  13. [NS00]
    Niemelä, I., Simons, P.: Extending the Smodels system with cardinality and weight constraints. In: Logic-Based Artificial Intelligence, pp. 491–521 (2000)Google Scholar
  14. [SS05]
    Simons, P., Syrjaenen, T.: SMODELS and LPARSE – a solver and a grounder for normal logic programs (2005),

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Yuliya Lierler
    • 1
  1. 1.Erlangen-Nürnberg Universität 

Personalised recommendations