Answer Set Programming Based on Propositional Satisfiability
Journal of Automated Reasoning
SAT-based answer set programming
AAAI'04 Proceedings of the 19th national conference on Artifical intelligence
Evaluating search strategies and heuristics for efficient answer set programming
AI*IA'05 Proceedings of the 9th conference on Advances in Artificial Intelligence
Using answer set programming for the automatic compilation of assessment tests
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
Computing weighted solutions in ASP: representation-based method vs. search-based method
Annals of Mathematics and Artificial Intelligence
Building business process description and reasoning meta-model Mbp in a-prolog
SPW/ProSim'06 Proceedings of the 2006 international conference on Software Process Simulation and Modeling
Hi-index | 0.00 |
Answer set programming (ASP) is a new form of declarative logic programming. ASP interprets a logic program as a constraint on sets of literals, just as a propositional formula can be viewed as a constraint on assignments of truth values to atoms. The concept of an answer set was originally proposed as a semantics of negation as failure in Prolog. Instead of traditional Prolog systems, ASP uses answer set solvers. The input of Prolog consists of a logic program and a query, and Prolog computes answer substitutions; the input of an answer set solver is a logic program, and the solver computes the program's answer sets. The idea of ASP is to represent a given computational problem as a logic program whose answer sets correspond to solutions, and to use an answer set solver to find an answer set. We have investigated the application of ASP to several combinatorial search problems, including planning, wire routing, and phylogeny reconstruction. Planning is the problem of finding a sequence of actions that leads to a given goal. Wire routing is the problem of determining the physical locations of all wires interconnecting the circuit components on a chip. Phylogeny reconstruction is the problem of constructing and labeling an evolutionary tree for a set of taxa (taxonomic units), which describes the evolution of the taxa in that set from their most recent common ancestor. In our work on phylogeny reconstruction, we have generated several conjectures about the evolutionary history of Indo-European languages. The work on the use of ASP for planning has led us to the investigation of some theoretical questions related to answer sets. One is the problem of equivalent transformations of logic programs: under what conditions can we replace a program by an equivalent program that can be processed by an answer set solver more efficiently? Another problem is related to completion—a process that can translate a logic program into a set of formulas of classical logic. In some cases, the interpretations satisfying the completion of a program are also the answer sets for that program. In such cases, we can use propositional solvers—systems that compute a model of a given set of clauses—to find the program's answer sets. For some problems, propositional solvers are more efficient than answer set solvers. Therefore, we have investigated under what conditions we can use propositional solvers to find the program's answer sets.