Document Type


Publication Date

January 2015


Answer set programming and propositional satisfiability (or satisfiability) are two closely related subareas of Artificial Intelligence that are used to model and solve difficult combinatorial search problems. Answer set solvers and Satisfiability solvers are the software systems that find answer sets and satisfying interpretations for given logic programs and propositional formulas respectively. These systems are closely related in their common design patterns. Niemela, Marek and Truszczynski coined answer set programming paradigm in 1999: in this paradigm a logic program encodes problem specifications in a way that the answer sets of a logic program represent the solutions of the problem. As a result, to find solutions to a problem it is sufficient to use an answer set solver on a corresponding program. Similarly, in satisfiability propositional formulas are used to encode problems specifications in a way that the satisfying interpretations correspond to the solutions of the problem. To find solutions to a problem it is then sufficient to use a satisfiability solver on a corresponding formula. These parallels that we just draw between paradigms naturally bring up a question: what is a fundamental difference between the two? This paper takes a close look at this question.