scholarly journals Grounding and Solving in Answer Set Programming

AI Magazine ◽  
2016 ◽  
Vol 37 (3) ◽  
pp. 25-32 ◽  
Author(s):  
Benjamin Kaufmann ◽  
Nicola Leone ◽  
Simona Perri ◽  
Torsten Schaub

Answer set programming is a declarative problem solving paradigm that rests upon a workflow involving modeling, grounding, and solving. While the former is described by Gebser and Schaub (2016), we focus here on key issues in grounding, or how to systematically replace object variables by ground terms in a effective way, and solving, or how to compute the answer sets of a propositional logic program obtained by grounding.

2019 ◽  
Vol 19 (04) ◽  
pp. 603-628 ◽  
Author(s):  
FRANCESCO CALIMERI ◽  
SIMONA PERRI ◽  
JESSICA ZANGARI

AbstractAnswer Set Programming (ASP) is a purely declarative formalism developed in the field of logic programming and non-monotonic reasoning: computational problems are encoded by logic programs whose answer sets, corresponding to solutions, are computed by an ASP system. Different, semantically equivalent, programs can be defined for the same problem; however, performance of systems evaluating them might significantly vary. We propose an approach for automatically transforming an input logic program into an equivalent one that can be evaluated more efficiently. One can make use of existing tree-decomposition techniques for rewriting selected rules into a set of multiple ones; the idea is to guide and adaptively apply them on the basis of proper new heuristics, to obtain a smart rewriting algorithm to be integrated into an ASP system. The method is rather general: it can be adapted to any system and implement different preference policies. Furthermore, we define a set of new heuristics tailored at optimizing grounding, one of the main phases of the ASP computation; we use them in order to implement the approach into the ASP systemDLV, in particular into its grounding subsystemℐ-DLV, and carry out an extensive experimental activity for assessing the impact of the proposal.


2019 ◽  
Vol 19 (5-6) ◽  
pp. 891-907
Author(s):  
MARIO ALVIANO ◽  
CARMINE DODARO ◽  
JOHANNES K. FICHTE ◽  
MARKUS HECHER ◽  
TOBIAS PHILIPP ◽  
...  

AbstractAnswer Set Programming (ASP) solvers are highly-tuned and complex procedures that implicitly solve the consistency problem, i.e., deciding whether a logic program admits an answer set. Verifying whether a claimed answer set is formally a correct answer set of the program can be decided in polynomial time for (normal) programs. However, it is far from immediate to verify whether a program that is claimed to be inconsistent, indeed does not admit any answer sets. In this paper, we address this problem and develop the new proof format ASP-DRUPE for propositional, disjunctive logic programs, including weight and choice rules. ASP-DRUPE is based on the Reverse Unit Propagation (RUP) format designed for Boolean satisfiability. We establish correctness of ASP-DRUPE and discuss how to integrate it into modern ASP solvers. Later, we provide an implementation of ASP-DRUPE into the wasp solver for normal logic programs.


2006 ◽  
Vol 6 (1-2) ◽  
pp. 23-60 ◽  
Author(s):  
THOMAS EITER ◽  
AXEL POLLERES

Answer set programming (ASP) with disjunction offers a powerful tool for declaratively representing and solving hard problems. Many NP-complete problems can be encoded in the answer set semantics of logic programs in a very concise and intuitive way, where the encoding reflects the typical “guess and check” nature of NP problems: The property is encoded in a way such that polynomial size certificates for it correspond to stable models of a program. However, the problem-solving capacity of full disjunctive logic programs (DLPs) is beyond NP, and captures a class of problems at the second level of the polynomial hierarchy. While these problems also have a clear “guess and check” structure, finding an encoding in a DLP reflecting this structure may sometimes be a non-obvious task, in particular if the “check” itself is a co-NP-complete problem; usually, such problems are solved by interleaving separate guess and check programs, where the check is expressed by inconsistency of the check program. In this paper, we present general transformations of head-cycle free (extended) disjunctive logic programs into stratified and positive (extended) disjunctive logic programs based on meta-interpretation techniques. The answer sets of the original and the transformed program are in simple correspondence, and, moreover, inconsistency of the original program is indicated by a designated answer set of the transformed program. Our transformations facilitate the integration of separate “guess” and “check” programs, which are often easy to obtain, automatically into a single disjunctive logic program. Our results complement recent results on meta-interpretation in ASP, and extend methods and techniques for a declarative “guess and check” problem solving paradigm through ASP.


2019 ◽  
Vol 19 (5-6) ◽  
pp. 757-772 ◽  
Author(s):  
GIOVANNI AMENDOLA ◽  
CARMINE DODARO ◽  
FRANCESCO RICCA

AbstractAnswer Set Programming (ASP) is a well-established formalism for logic programming. Problem solving in ASP requires to write an ASP program whose answers sets correspond to solutions. Albeit the non-existence of answer sets for some ASP programs can be considered as a modeling feature, it turns out to be a weakness in many other cases, and especially for query answering. Paracoherent answer set semantics extend the classical semantics of ASP to draw meaningful conclusions also from incoherent programs, with the result of increasing the range of applications of ASP. State of the art implementations of paracoherent ASP adopt the semi-equilibrium semantics, but cannot be lifted straightforwardly to compute efficiently the (better) split semi-equilibrium semantics that discards undesirable semi-equilibrium models. In this paper an efficient evaluation technique for computing a split semi-equilibrium model is presented. An experiment on hard benchmarks shows that better paracoherent answer sets can be computed consuming less computational resources than existing methods.


Author(s):  
ZEYNEP G. SARIBATUR ◽  
THOMAS EITER

Abstract Abstraction is a well-known approach to simplify a complex problem by over-approximating it with a deliberate loss of information. It was not considered so far in Answer Set Programming (ASP), a convenient tool for problem solving. We introduce a method to automatically abstract ASP programs that preserves their structure by reducing the vocabulary while ensuring an over-approximation (i.e., each original answer set maps to some abstract answer set). This allows for generating partial answer set candidates that can help with approximation of reasoning. Computing the abstract answer sets is intuitively easier due to a smaller search space, at the cost of encountering spurious answer sets. Faithful (non-spurious) abstractions may be used to represent projected answer sets and to guide solvers in answer set construction. For dealing with spurious answer sets, we employ an ASP debugging approach to help with abstraction refinement, which determines atoms as badly omitted and adds them back in the abstraction. As a show case, we apply abstraction to explain unsatisfiability of ASP programs in terms of blocker sets, which are the sets of atoms such that abstraction to them preserves unsatisfiability. Their usefulness is demonstrated by experimental results.


2007 ◽  
Vol 7 (6) ◽  
pp. 697-744 ◽  
Author(s):  
TOMI JANHUNEN ◽  
EMILIA OIKARINEN

AbstractIn answer set programming (ASP), a problem at hand is solved by (i) writing a logic program whose answer sets correspond to the solutions of the problem, and by (ii) computing the answer sets of the program using ananswer set solveras a search engine. Typically, a programmer creates a series of gradually improving logic programs for a particular problem when optimizing program length and execution time on a particular solver. This leads the programmer to a meta-level problem of ensuring that the programs are equivalent, i.e., they give rise to the same answer sets. To ease answer set programming at methodological level, we propose a translation-based method for verifying the equivalence of logic programs. The basic idea is to translate logic programsPandQunder consideration into a single logic program EQT(P,Q) whose answer sets (if such exist) yield counter-examples to the equivalence ofPandQ. The method is developed here in a slightly more general setting by taking thevisibilityof atoms properly into account when comparing answer sets. The translation-based approach presented in the paper has been implemented as a translator calledlpeqthat enables the verification of weak equivalence within thesmodelssystem using the same search engine as for the search of models. Our experiments withlpeqandsmodelssuggest that establishing the equivalence of logic programs in this way is in certain cases much faster than naive cross-checking of answer sets.


2020 ◽  
Vol 20 (5) ◽  
pp. 767-782 ◽  
Author(s):  
PEDRO CABALAR ◽  
JORGE FANDINNO ◽  
YULIYA LIERLER

AbstractIn this paper, we study the problem of formal verification for Answer Set Programming (ASP), namely, obtaining a formal proof showing that the answer sets of a given (non-ground) logic program P correctly correspond to the solutions to the problem encoded by P, regardless of the problem instance. To this aim, we use a formal specification language based on ASP modules, so that each module can be proved to capture some informal aspect of the problem in an isolated way. This specification language relies on a novel definition of (possibly nested, first order) program modules that may incorporate local hidden atoms at different levels. Then, verifying the logic program P amounts to prove some kind of equivalence between P and its modular specification.


10.29007/tmt3 ◽  
2018 ◽  
Author(s):  
Thomas Eiter

Answer Set Programming (ASP) has emerged in the recent years as a powerful paradigm for declarative problem solving, which has its roots in knowledge representation and non-monotonic logic programming. Similar to SAT solving, the basic idea is to encode solutions to a problem in the models of a non-monotonic logic program, which can be computed by reasoning engines off the shelf. ASP is particularly well-suited for modeling and solving problems which involve common sense reasoning or transitive closure, and has been fruitfully applied to a growing range of applications. Among the latter are also problems in testing and verfication, for which efficient core fragments of ASP that embrace Datalog haven been exploited. This talk gives a brief introduction to ASP, covering the basic concepts, some of its properties and features, and solvers. It further addresses some applications in the context of verification and recent developments in ASP, which bring evaluation closer to other formalisms and logics.


Author(s):  
JUKKA PAJUNEN ◽  
TOMI JANHUNEN

Abstract Given a combinatorial search problem, it may be highly useful to enumerate its (all) solutions besides just finding one solution, or showing that none exists. The same can be stated about optimal solutions if an objective function is provided. This work goes beyond the bare enumeration of optimal solutions and addresses the computational task of solution enumeration by optimality (SEO). This task is studied in the context of answer set programming (ASP) where (optimal) solutions of a problem are captured with the answer sets of a logic program encoding the problem. Existing answer set solvers already support the enumeration of all (optimal) answer sets. However, in this work, we generalize the enumeration of optimal answer sets beyond strictly optimal ones, giving rise to the idea of answer set enumeration in the order of optimality (ASEO). This approach is applicable up to the best k answer sets or in an unlimited setting, which amounts to a process of sorting answer sets based on the objective function. As the main contribution of this work, we present the first general algorithms for the aforementioned tasks of answer set enumeration. Moreover, we illustrate the potential use cases of ASEO. First, we study how efficiently access to the next-best solutions can be achieved in a number of optimization problems that have been formalized and solved in ASP. Second, we show that ASEO provides us with an effective sampling technique for Bayesian networks.


Author(s):  
Camillo Fiorentini

Intuitionistic Propositional Logic is complete w.r.t. Kripke semantics: if a formula is not intuitionistically valid, then there exists a finite Kripke model falsifying it. The problem of obtaining concise models has been scarcely investigated in the literature. We present a procedure to generate minimal models in the number of worlds relying on Answer Set Programming (ASP).


Sign in / Sign up

Export Citation Format

Share Document