Better Paracoherent Answer Sets with Less Resources
Giovanni Amendola, Carmine Dodaro, Francesco Ricca

TL;DR
This paper introduces an efficient method for computing improved paracoherent answer sets in ASP, enabling meaningful reasoning from incoherent programs with reduced computational resources.
Contribution
It presents a novel evaluation technique for split semi-equilibrium semantics that improves the efficiency of computing paracoherent answer sets.
Findings
Better paracoherent answer sets are computed with less resources.
The method outperforms existing approaches on hard benchmarks.
It extends ASP's applicability to incoherent programs effectively.
Abstract
Answer 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…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
\jdate
March 2003
\pagerangeBetter Paracoherent Answer Sets with Less Resources–Better Paracoherent Answer Sets with Less Resources
Better Paracoherent Answer Sets with Less Resources
GIOVANNI AMENDOLA
CARMINE DODARO
FRANCESCO RICCA
University of Calabria
Rende
Italy
{amendola,dodaro,ricca}@mat.unical.it
(2003)
Abstract
Answer 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. Under consideration for acceptance in TPLP.
doi:
S1471068401001193
keywords:
Answer Set Programming, Paracoherent reasoning, Semi-equilibrium models
1 Introduction
In the past decades, key advances in Artificial Intelligence research were made thanks to studies in the field of Knowledge Representation and Reasoning (KRR) [van Harmelen et al. (2008)]. Among the established paradigms of KRR is Answer Set Programming (ASP) [Baral (2003), Brewka et al. (2011), Gebser et al. (2012)], which is a well-known formalism for logic programming and non-monotonic reasoning. ASP is based on the stable model (or answer set) semantics [Gelfond and Lifschitz (1991)], and features efficient implementations [Lierler et al. (2016), Gebser et al. (2016)], such as clasp [Gebser et al. (2015), Gebser et al. (2019)], wasp [Alviano et al. (2015), Alviano et al. (2019)], and dlv [Leone et al. (2006), Alviano et al. (2017)]. Problem solving in ASP requires to write an ASP program whose answers sets correspond to solutions [Lifschitz (1999)], and then to compute these solutions resorting to an ASP solver. The availability of efficient implementations made possible the development of concrete applications, and as a matter of fact, ASP has been successifully applied to solve complex problems in Artificial Intelligence [Balduccini et al. (2001), Erdem et al. (2016), Gaggl et al. (2015), Dodaro et al. (2015)]; Bioinformatics [Campeotto et al. (2015)]; Databases [Arenas et al. (2003)], and industrial applications [Dodaro et al. (2016)].
The non-existence of answer sets for some ASP programs can be a modeling feature, but, as argued in [Amendola et al. (2016)], it turns out to be a weakness in many other applications, such as: debugging, model building, inconsistency-tolerant query answering, diagnosis, planning and reasoning about actions. To remedy to the non-existence of answer sets, paracoherent semantics extend the classical answer set semantics to draw meaningful conclusions also from incoherent programs. This ASP variant has been termed paracoherent reasoning [Eiter et al. (2010)]. In particular, Eiter, Fink and Moura improved the paracoherent semantics of semi-stable models [Sakama and Inoue (1995)] avoiding some anomalies with respect to basic modal logic properties by resorting to equilibrium logic [Pearce (2006)]. Thus, this paracoherent semantics is called semi-equilibrium model (SEQ) semantics [Eiter et al. (2010)]. More recently, [Amendola et al. (2016)] noticed that, although the SEQ semantics has nice properties, it may select models that do not respect the modular structure of the program. SEQ semantics use 3-valued interpretations where a third truth value besides true and false expresses that an atom is believed true. For instance, the incoherent logic program admits two SEQ models, say and . In , is true, is believed true, and is false; whereas in is believed true and both and are false. Now, appears preferable to , as, according with a layering (stratification) principle, which is widely agreed in logic programming, one should prefer rather than , as there is no way to derive (note that does not appear in the head of any rule of the program). Therefore, [Amendola et al. (2016)] refine SEQ-models using splitting sequences [Lifschitz and Turner (1994)], the major tool for modularity in modeling and evaluating answer set programs. In particular, the refined semantics, called Split SEQ model semantics, is able to discard model .
The first efficient implementations of paracoherent semantics were proposed recently [Amendola et al. (2017), Amendola et al. (2018)], but they only support semi-stable and semi-equilibrium semantics. Although the Split SEQ semantics discards some undesirable SEQ models, the existing methods for computing SEQ models cannot be lifted straightforwardly to compute the refined semantics efficiently. Consequently, no implementation of Split SEQ semantics has been available up to now.
In this paper, we fill this lack presenting the first efficient strategy for computing a split SEQ model. In particular, we introduce an elegant program transformation, obtained by using weak constraints with levels [Buccafurri et al. (2000)], that allows for computing a split semi-equilibrium model using a single call to a plain ASP solver, and prove a non-obvious correctness result. Notably, we exploited the modularity property of split semi equilibrium models to simplify the transformation and avoid the introduction of some rules and symbols that are needed in state of the art epistemic-transformation-based methods for computing SEQ models.
We have implemented the new approach and run an experiment to validate it empirically. Actually, no direct comparison with an alternative methods can be done, since ours is the first implementation of split SEQ models. Nonetheless, since split SEQ models are also SEQ models, we could compare it against existing implementations for semi-equilibrium models. As done previoulsy in the literature [Amendola et al. (2017), Amendola et al. (2018)], we considered hard benchmarks from ASP competitions [Calimeri et al. (2016)] modeling an application of paracoherent semantics to debugging [Cuteri et al. (2019)]. The experiment demonstrates that the new method outperforms state of the art methods for computing SEQ models consuming less computational resources, i.e., it uses less memory and terminates in less time.
The paper is structured as follows: preliminary notions on ASP and paracoherent answer sets are reported in Section 2; the description of strategies for computing split SEQ models is provided in Section 3; the empirical validation of our approach is presented in Section 4; related work is compared and discussed in Section 5; finally, we draw the conclusion in Section 6.
2 Preliminaries
We start with recalling answer set semantics, and then present the paracoherent semantics of semi-equilibrium models, and its refined version based on splitting sequences.
2.1 Answer Set Programming
We concentrate on logic programs over a propositional signature . A disjunctive rule is of the form
[TABLE]
where all , , and are atoms (from ; , ; \mathit{not}\represents negation-as-failure. The set is the head of , while and are the positive body and the negative body of , respectively; the body of is . We denote by the set of all atoms occurring in . A rule is a fact, if (we then omit ); normal, if ; and positive, if . A (disjunctive logic) program is a finite set of disjunctive rules. is called normal [resp. positive] if each is normal [resp. positive]. The set of all atoms occurring in the program is denoted by .
The dependency graph of a program is the directed graph whose nodes are the atoms in and contains an edge if occurs in and either occurs in or in . The strongly connected components (SCCs) of , denoted , are the SCCs of , which are the maximal sets of nodes such that every pair of nodes is connected by some path in with nodes only from .
Any set is an interpretation; it is a model of a program (denoted ) if and only if for each rule , if and (denoted ). A model of is minimal, if and only if no model of exists. We denote by the set of all minimal models of and by the set of all answer sets (or stable models) of , i.e., the set of all interpretations such that , where is the well-known Gelfond-Lifschitz reduct [Gelfond and Lifschitz (1991)] of w.r.t. , i.e., the set of rules , obtained from rules of form (1), such that . We say that a program is coherent, if it admits some answer set (i.e., ), otherwise, it is incoherent.
In the following, we will also use constraints, which are of the form
[TABLE]
with , to be considered as a shorthand for a rule
[TABLE]
using a fresh atom that is not occurring elsewhere in the program. Note that ASP solvers do normally not create any auxiliary symbols for constraints.
Moreover, we recall a useful extension of the answer set semantics by the notion of weak constraint [Buccafurri et al. (2000)]. A weak constraint is of the form:
,
where and are nonnegative integers, representing a weight and a level, respectively. Let , where is a set of rules and is a set of weak constraints. We call an answer set of if it is an answer set of . We denote by the set of all weak constraints at level . For every answer set of and any , the penalty of at level , denoted by , is defined as . In case is clear from the context, we omit the subscript. For any two answer sets and of , we say is dominated by if there is s.t. and for all integers , . An answer set of is optimal if it is not dominated by another one of . We denote by the set of all optimal answer sets of .
2.2 Semi-Equilibrium Models
Here, we introduce the paracoherent semantics of the semi-equilibrium (SEQ) models introduced in [Eiter et al. (2010)]. Consider an extended signature . Intuitively, can be read as is believed to hold. The SEQ models of a program are obtained from its epistemic -transformation , defined as follows.
Definition 1
Let be a program over . Then its epistemic -transformation is obtained from by replacing each rule of the form (1) in , such that , with:
[TABLE]
for and , where the , are fresh atoms; and by adding the following set of rules:
[TABLE]
for , respectively for every rule of the form (1).
Note that for any program , its epistemic -transformation is positive. For every interpretation over , let denote the atoms believed true but not assigned true, also referred to as the gap of . Given a set of interpretations over , an interpretation is maximal canonical in , if no exists such that . By we denote the set of maximal canonical interpretations in . SEQ models are then defined as maximal canonical interpretations among the answer sets of .
Definition 2
Let be a program over , and let be an interpretation over . Then, if, and only if, , where is the set of semi-equilibrium models of .
2.3 Split SEQ Models
A set is a splitting set of , if for every rule in such that we have that . We denote by the bottom part of , and by the top part of relative to . A splitting sequence of is a sequence of splitting sets of such that for each . Let be the set of all strongly connected components of , and let be a topological ordering of . It is known that , where for , is a splitting sequence of . So that, we obtain a stratification for in subprograms such that , and , for . Given an interpretation over , we denote by the set of rules .
Definition 3
Given a topological ordering of , an interpretation over is a semi-equilibrium model of relative to if there is a sequence of interpretations over , respectively, such that ; ; , for ; and is maximal canonical among the interpretations over satisfying conditions , and . The set of all semi-equilibrium models of relative to is denoted by .
Since is independent by the given topological ordering of (see, Theorem 5 in [Amendola et al. (2016)]), the -models of have been defined as the set for an arbitrary topological ordering of . We will refer to them as split semi-equilibrium models. Finally, note that .
Example 1
Consider the program
P=\left\{\begin{array}[]{rcl}b&\leftarrow&\mathit{not}\ a;\\ d&\leftarrow&b,\ \mathit{not}\ c;\\ c&\leftarrow&d\end{array}\right\}.**
Then, is a topological ordering of , so that is a splitting sequence for . Hence, . Indeed and thus . Then, and thus . Finally, and thus .
In the following, we will refer to both SEQ models and split SEQ models as paracoherent answer sets.
2.4 Complexity Considerations
The complexity of various reasoning tasks with paracoherent answer sets has been analyzed in [Amendola et al. (2016)]. In the general case, checking whether an atom is true in some paracoherent answer set (brave reasoning) is -complete; whereas checking whether an atom is true in all paracoherent answer sets (cautious reasoning) is -complete. However, computing a paracoherent answer set is feasible in F, because it is sufficient to find a paracoherent answer set that is cardinality minimal with respect to the gap.
3 On the Computation of Split SEQ Models
We start to note that an efficient computation of a split semi-equilibrium model requires a deep theoretical understanding of the paracoherent semantics. Indeed, a naive implementation of the split semi-equilibrium semantics considers each possible path that can be generated through the splitting sequence. Since each subprogram could have more than one answer set, one should explore an exponential number of paths. Note that, each path generated through the splitting sequence leads to obtain a paracoherent answer set of the last program (i.e., ), which is not necessarily a paracoherent answer set of the entire program because it must also be gap-minimal.
Example 2
Consider the program
P=\left\{\begin{array}[]{rcl}a&\leftarrow¬\ b;\\ b&\leftarrow¬\ a;\\ c&\leftarrow&a,\ not\ c\end{array}\right\}.**
In the first layer of , we have the subprogram whose (paracoherent) answer sets are and . So that, considering , we obtain the paracoherent answer set , while considering , we obtain the (paracoherent) answer set . Hence, cannot be a paracoherent answer set of , because it has a larger gap w.r.t. . Indeed, .
From a computational view point, a naive approach is very expensive, as one has to enumerate all possible paracoherent models obtainable from each path to make feasible a final phase of gap minimization.
Hence, we developed a clever strategy to compute a split SEQ model. Given a program and a topological ordering of , we construct a new program which is the union of with the program , and the following set of weak constraints. For each , and for each atom , the weak constraint belongs to . Then, we define
[TABLE]
We will show that an optimal answer set of is a split SEQ model of . Hence, in particular, it is also a SEQ model of . First, we highlight a fundamental relation between the penalty of a model at a fixed level and the set of gap atoms of that model belonging to a strongly connected component.
Proposition 1
Let be an optimal answer set of . Then, for ,
[TABLE]
Proof 3.1** (Proof Sketch).**
Since , we obtain that
[TABLE]
Now we can prove our main result.
Theorem 3.2**.**
Let be a program and be an optimal answer set of . Then, is a split SEQ model of .
Proof 3.3**.**
We prove the claim by induction on the cardinality of .
In case of , we have a unique strongly connected component, say , of . Hence, we have to consider the unique topological ordering . It leads to have the following set of weak constraints . Hence, is an answer set of such that a minimum number of weak constraints in is violated. This means that is cardinality minimal with respect to the gap atoms. Therefore, it is also subset minimal with respect to the gap atoms, and so, is a semi-equilibrium model of . As for , the split semi-equilibrium models of coincide with the semi-equilibrium models of , then is a split semi-equilibrium model of .
Now, assume the claim holds in case of programs with strongly connnected components, and we want to prove that it also holds for programs with strongly connected components. Let , and let be the corresponding stratification for . Let . By construction, . Hence, by inductive hypothesis, is a split semi-equilibrium model of . Now, we have to prove that . Consider the program . First, , as . Second, violates a minimum number of weak constraints in . Indeed, by contradiction, there exists violating a strictly less number of weak constraints in than . So that, such a dominates with respect to , against the assumption that is an optimal answer set of . Then, by and , it holds that . Therefore, . Finally, we claim that is maximal canonical among the interpretations over satisfying conditions , and in Definition 3. Assume, by contradiction, that there is an interpretation satisfying conditions , and in Definition 3 such that . Hence, by Proposition 1, there is some nonnegative integer such that and for all integers , . Then, is dominated by . Thus, is not an optimal answer set of , against the hypothesis.
Note that the split semi-equilibrium model (hence the semi-equilibrium model) that such an algorithm will find, generally, is not cardinality minimal among the split semi-equilibrium models of the given program. This is coherent with complexity results, indeed computing optimal answer sets of ASP programs with weak constraints is known to be a task for disjunctive programs [Buccafurri et al. (2000)], and our technique can be implemented by an algorithm that runs in polynomial time (indeed, it consists of two polynomial tasks: the construction of the epistemic transformation and the computation of the SCCs).
Example 3.4**.**
Consider, for instance, the following program
P=\left\{\begin{array}[]{rcl}a&\leftarrow¬\ b;\\ b&\leftarrow¬\ a;\\ c&\leftarrow&b,\ not\ c;\\ d&\leftarrow&a,\ not\ c,\ not\ d;\\ e&\leftarrow&d\\ \end{array}\right\}.
Hence, we have to consider the stratification of given by ; ; ; and . At the first step, we obtain and as SEQ models of . At the second step, is the SEQ model of , and is the SEQ model of . At the third step, is the SEQ model of , and is the SEQ model of . At the fourth and final step, is the SEQ model of , and is the SEQ model of . Therefore, and are the split SEQ models of . However, is preferred to . Indeed, violates the weak constraint , that is at a lower level than and , that are violated by .
Moreover, the split SEQ semantics allows to make a fundamental simplification of symbols in the -epistemic transformation of the program. Indeed, given a program and a stratification for in subprograms , whenever , …, , with , are coherent programs, we have no need to compute the -epistemic transformation of , …, , but we can directly compute the answer sets of . So that, if , then is a paracoherent answer set of .
Theorem 3.5**.**
Let be a program, be a stratification for , and be the maximal number so that is coherent, for each . Then,
,
where ; ; ; and comes from by removing each rule s.t. , and each atom in .
Finally, note that to check if a program is coherent, is a well-known -complete problem. Hence, in the implementation we need to consider a sufficient condition to detect coherent programs in polynomial time. It is known that, if a program has no cycle in the dependency graph having an odd number of negated arcs, then it is coherent.
Proposition 3.6**.**
Given a program , detecting a cycle in the dependency graph of having an odd number of negated arcs, can be done in linear time with respect to .
Proof 3.7** (Proof Sketch).**
Let be the dependency graph of . We consider a directed graph such that for each positive arc in , namely , we introduce a fresh node, namely , and replace , by two edges and . Hence, if contains a cycle having an odd number of negated arcs then contains a cycle of odd length. The claim holds by the fact the a directed graph does not contain a directed cycle of odd length if, and only if, it is bipartite when treated as an undirected graph, i.e., it can be colored with two colors. This check can be done in linear time with respect to the number of arcs in the input graph [Kleinberg and Tardos (2006)].
We conclude this section observing that Theorem 3.2 and Theorem 3.5 hold (without modifications) also if one considers the extended externally supported program , introduced in [Amendola et al. (2018)] to characterize semi-equilibrium models, in place of the -epistemic transformation.
4 Experiments
In this section we present the results of an experimental analysis conducted to analyze the performance of the new strategy for computing a split semi-equilibrium model presented in the previous section.
4.1 Implementation
To compute a split semi-equilibrium model we have implemented in a rewriter tool a program transformation that takes as input an ASP program and produces as output an optimized version of . In particular, the rewriter implements the efficient epistemic transformation of [Amendola et al. (2018)], which is known to be much more efficient than the classic -epistemic transformation, and implements the Tarjan algorithm (see e.g., [Kleinberg and Tardos (2006)]) to compute a topological order of the and build the weak constraints . During the rewriting process, the components are also subject to a (modified) two-colorability check (see Proposition 3.6) applied following the topological order to optimize the output as indicated in Theorem 3.5. Thus, a split semi-equilibrium model is computed by evaluating the optimized with the ASP solver wasp [Alviano et al. (2015), Alviano and Dodaro (2016)].
4.2 Experimental Setting
A practical approach for the computation of a split semi-equilibrium model has been presented for the first time in this paper. Therefore, it is not possible to compare the performance of our implementation with alternative approaches for computing split semi-equilibrium models. Since all split semi-equilibrium models are semi-equilibrium models, we focus on the task of computing a semi-equilibrium model, and compare our implementation with the state of the art ones presented in [Amendola et al. (2018)], namely: split, min, and weak. Note that, the labels correspond to the algorithm names used in [Amendola et al. (2018)], where split is in no way related to the split semi equilibrium semantics; rather, the name split was chosen to remind the behavior of the algorithm that “splits” the set of gap atoms of a candidate solution to perform gap minimization (for details see [Amendola et al. (2018)]). In the following, our implementation is labeled sseq, since its distinguishing feature is to compute a split semi equilibrium model.
In order to perform a fair comparison, in this experiment we used the same version of the wasp solver, and the same experimental settings described in [Amendola et al. (2018)]. In particular, we considered all the incoherent instances from the latest ASP Competition [Gebser et al. (2017)] that feature neither aggregates, nor choice rules, nor weak constraints, since such features are not supported by the paracoherent semantics [Amendola et al. (2016)]. This benchmark setting is of particular interest for paracoherent reasoning since it consists of debugging hard ASP programs, one of the main motivations of paracoherent ASP. In particular, the problem to be solved is the computation of an explanation for the non-existence of answer sets. Execution times and memory usage were limited to 1200 seconds and 8 GB, respectively.
4.3 Results
The results of the experiment show that the new technique is better than state-of-the-art-approaches. In the vast majority of considered instances the improvements are significant, as seen from the cactus plots in Figure 1. In more detail, sseq solves overall 104 instances, whereas the performance achieved by min, split, and weak is considerably worse, solving 13, 16, and 65 instances in the allotted time, respectively.
Figures 2(a) and 2(b) show instance-by-instance comparisons for the two best-performing algorithms, i.e. sseq and weak. We recall that each plotted point represent an instance, and a point is plotted if the two systems take and execution time (resp. memory usage) for evaluating the instance. Therefore, points below the diagonals represent instances where the system reported on the -axis was slower (resp. uses more memory) than the system reported on the -axis. The graphs confirm the better performance of sseq. Indeed, in Figure 2(a), only few instances are on the left of the diagonals, meaning that are only few instances where sseq is slower than weak. Concerning the memory usage, Figure 2(b) clearly shows sseq uses consistently less memory than weak. We also mention that sseq and weak exceed the allotted memory limited in 1 and 83 instances, respectively. It is worth reporting that disabling the optimization of Theorem 3.5, which is specific of split SEQ semantics, the resulting method could only solve 6 instances, and expectedly the performance w.r.t. memory consumption was also poorer, i.e., it exceeded 51 times the memory limits.
5 Related Work
Semantics for non-monotonic logic programs [Przymusinski (1991), van Gelder et al. (1991), You and Yuan (1994), Sakama and Inoue (1995), Eiter et al. (1997), Seipel (1997), Balduccini and Gelfond (2003), Pereira and Pinto (2007), Alcântara et al. (2005), Galindo et al. (2008), Amendola et al. (2016), Costantini and Formisano (2016)] that relax the definition of answer set to overcome the absence of answer sets can be considered in broader terms paracoherent semantics. Nonetheless, the first approach to the problem of handling inconsistency in ASP programs is the semi-stable semantics by [Sakama and Inoue (1995)]. Later [Eiter et al. (2010)] identified some anomalies of semi-stable semantics with respect to some epistemic properties, and proposed the semi-equilibrium semantics. Notably, [Eiter et al. (2010)] also introduced the term paracoherent for the semantics that provide a remedy to the absence of answer sets due to cyclic negation. In [Amendola et al. (2016)] it was demonstrated that semi-equilibrium semantics features a number of highly desirable theoretical properties for a knowledge representation language, that are not all fulfilled by previous proposals: (i) every consistent answer set of a program corresponds to a paracoherent answer set (answer set coverage); (ii) if a program has some (consistent) answer set, then its paracoherent answer sets correspond to answer sets (congruence); (iii) if a program has a classical model, then it has a paracoherent answer set (classical coherence); (iv) a minimal set of atoms should be undefined (minimal undefinedness); (v) every true atom must be derived from the program (justifiability). The first two properties ensure that the notions of answer sets and paracoherent answer sets should coincide for coherent programs; the third states that paracoherent answer set should exist whenever the programs admits a (classical) model; the last two state that the number of undefined atoms should be minimized, and every true atom should be derived from the program, respectively. At the same time, it was observed that semi-equilibrium models do not enjoy the same nice modular composition properties of stable models (e.g., the splitting set [Lifschitz and Turner (1994)] modularity tool cannot be used straightforwardly). Notably, modular composition is used in ASP for simplifying the modeling of problems (actually, the guess and check programming methodology [Eiter et al. (2009)] is based on this property) and is a principle underlying the architectures of ASP systems [Lierler et al. (2016)]. The split semi-equilibrium semantics [Amendola et al. (2016)] solves this problem by using splitting sequences to decompose the program into hierarchically organized subprograms. Split semi-equilibrium models are semi equilibrium models that enjoy a modularity property.
Concerning the implementation of semi-stable and semi-equilibrium semantics, we observe that they have been implemented efficiently only recently. In particular, in [Amendola et al. (2017)] a number of algorithms has been proposed, that compute paracoherent answer sets in two steps: an epistemic transformation of programs is applied, and a strategy for computing answer sets of minimum gap is implemented by calling (possibly multiple times) an ASP solver. The same strategy has been improved in [Amendola et al. (2018)] by replacing the classic epistemic transformations by more parsimonious ones (that we also adopt). The new transformations are based on the characterization of paracoherent answer sets in terms of externally supported models. Neither [Amendola et al. (2017)] nor [Amendola et al. (2018)] support SSEQ semantics that is the focus of this paper.
For the sake of completeness, we mention that the algorithms used for computing paracoherent answer sets are strictly related to the computation of minimal models of propositional theories [Niemelä (1996), Bry and Yahya (2000), Koshimura et al. (2009), Janota and Marques-Silva (2016), Angiulli et al. (2014)]; the reader si referred to [Amendola et al. (2017)] for a detailed discussion.
6 Conclusion and Future Work
Paracoherent answer set semantics can draw meaningful conclusions also from incoherent programs, and in this way increase the applicability of ASP for solving AI problems [Eiter et al. (2010)]. Practical applications are possible once efficient implementations are available, and the complex task of computing efficiently a paracoherent answer set has been approached only recently [Amendola et al. (2017), Amendola et al. (2018)]. State of the art solutions supported the semi-equilibrium semantics but cannot compute the (better) split semi-equilibrium semantics; notably, existing evaluation techniques cannot be adapted straightforwardly to accomplish this task. We remark that, as mentioned previously, split semi-equilibrium models have to be considered better in the sense that they are models that respect the modular structure of the program (as observed in [Amendola et al. (2016)]), and, thus, they better fit the intentions of a programmer which usually exploits modularity to produce programs (e.g., by applying the guess and check methodology).
In this paper we presented a novel optimized program transformation that allows for computing a split semi-equilibrium model using a plain ASP solver. The transformation is elegant and independent from the epistemic transformation used to define semi-equilibrium models. Moreover, the modularity property of split semi equilibrium models allowed us to devise an optimization that further simplifies the transformed program and improves performance. We implemented the optimized transformation and run an experiment comparing it against existing implementations for semi-equilibrium models. Our implementation outperformed the state of the art methods in terms of both memory consumption and solving times, and it was able to solve 160% more instances than the best alternative solution using the same ASP solver. In conclusion, the paper shows how better semi equilibrium models can be computed also more efficiently.
The availability of efficient methods for computing one paracoherent answer set makes reasonable to start approaching more complex reasoning problems connected with the enumeration of paracoherent answer sets. Thus, as far as future work is concerned, we plan to investigate the extension of our techniques to the implementation of cautious and brave reasoning, e.g., on the lines of [Alviano (2018)]. Notably, this will not be a straightforward porting.
Finally, we mention that an interesting feature work is to investigate how to extend paracoherent rewriting techniques to non-ground ASP programs. Actually, our implementation supports non-ground ASP programs by simply disabling grounding simplifications and then using the resulting instantiation as input for the rewriting techniques applied later on. However, this may cause a deterioration of the performance since grounding simplifications have been shown to be useful for improving the performance of ASP solvers. Therefore, we plan to investigate if more sophisticated rewriting techniques can be directly applied to non-ground ASP programs.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1Alcântara et al . (2005) Alcântara, J. , Damásio, C. V. , and Pereira, L. M. 2005. An encompassing framework for paraconsistent logic programs. Journal of Applied Logic 3, 1, 67–95.
- 2Alviano (2018) Alviano, M. 2018. Query answering in propositional circumscription. In Proceedings of the International Conference on Artificial Intelligence (IJCAI) . ijcai.org, 1669–1675.
- 3Alviano et al . (2019) Alviano, M. , Amendola, G. , Dodaro, C. , Leone, N. , Maratea, M. , and Ricca, F. 2019. Evaluation of disjunctive programs in WASP. In Proceedings of the International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR) . Lecture Notes in Computer Science, vol. 11481. Springer, 241–255.
- 4Alviano et al . (2017) Alviano, M. , Calimeri, F. , Dodaro, C. , Fuscà, D. , Leone, N. , Perri, S. , Ricca, F. , Veltri, P. , and Zangari, J. 2017. The ASP system DLV 2. In Proceedings of the International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR) . Lecture Notes in Computer Science, vol. 10377. Springer, 215–221.
- 5Alviano and Dodaro (2016) Alviano, M. and Dodaro, C. 2016. Anytime answer set optimization via unsatisfiable core shrinking. Theory and Practice of Logic Programming 16, 5-6, 533–551.
- 6Alviano et al . (2015) Alviano, M. , Dodaro, C. , Leone, N. , and Ricca, F. 2015. Advances in WASP. In Proceedings of the International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR) . Lecture Notes in Computer Science. 40–54.
- 7Amendola et al . (2017) Amendola, G. , Dodaro, C. , Faber, W. , Leone, N. , and Ricca, F. 2017. On the computation of paracoherent answer sets. In Proceedings of the AAAI Conference on Artificial Intelligence (AAAI) . 1034–1040.
- 8Amendola et al . (2018) Amendola, G. , Dodaro, C. , Faber, W. , and Ricca, F. 2018. Externally supported models for efficient computation of paracoherent answer sets. In Proceedings of the AAAI Conference on Artificial Intelligence (AAAI) . AAAI Press, 1720–1727.
