Document Type


Publication Date



A fundamental task in answer set programming is to compute answer sets of logic programs. Answer set solvers are the programs that perform this task. The problem of deciding whether a disjunctive program has an answer set isΣP2 -complete. The high complexity of reasoning within disjunctive logic programming is responsible for few solvers capable of dealing with such programs, namely DLV, GNT, CMODELS and CLASP. We show that transition systems introduced by Nieuwenhuis, Oliveras, and Tinelli to model and analyze satisfiability solvers can be adapted for disjunctive answer set solvers. In particular, we present transition systems for CMODELS (without backjumping and learning), GNT and DLV (without backjumping). The unifying perspective of transition systems on satisfiability and non-disjunctive answer set solvers proved to be an effective tool for analyzing, comparing, proving correctness of each underlying search algorithm as well as bootstrapping new algorithms. Given this, we believe that this work will bring clarity and inspire new ideas in design of more disjunctive answer set solvers.


21st European Conference on Artificial Intelligence