=Paper=
{{Paper
|id=Vol-2970/causalpaper4
|storemode=property
|title=Establish Coherence in Logic Programs Modelling Expert Knowledge via Argumentation
|pdfUrl=https://ceur-ws.org/Vol-2970/causalpaper4.pdf
|volume=Vol-2970
|authors=Andre Thevapalan,Jesse Heyninck,Gabriele Kern-Isberner
|dblpUrl=https://dblp.org/rec/conf/iclp/ThevapalanHK21
}}
==Establish Coherence in Logic Programs Modelling Expert Knowledge via Argumentation==
Establish Coherence in Logic Programs Modelling
Expert Knowledge via Argumentation
Andre Thevapalan1 , Jesse Heyninck1,2 and Gabriele Kern-Isberner1
1
Technische Universitรคt Dortmund, Germany
2
University of Cape Town and CAIR, South Africa
Abstract
When modelling expert knowledge, default negation is very useful, but might lead to there being no
stable models. Detecting the exact causes of the incoherence in the logic program manually can be-
come quite cumbersome, especially in larger programs. Moreover, establishing coherence does require
expertise regarding the modelled knowledge as well as technical knowledge about the program and its
rules. This paper introduces a method to detect the causes of incoherence in logic programs by using
argumentation graphs and proposes strategies to modify the responsible parts of the program in order
to obtain a coherent program.
Keywords
Logic Programming, Coherence, Argumentation Graphs
1. Introduction
With the availability of both strong and default negation, answer set programming offers
valuable features for the usage in real-life applications. But often knowledge bases are subject
to change. Adding rules to a logic program is not as straightforward as it might seem. Due
to its declarative nature, adding new information can easily lead to contradictory knowledge.
Such contradictions can result from rules whose conclusions are contradictory while both
their premises can potentially hold simultaneously. Several approaches deal with this notion
of contradictions when updating logic programs [1, 2, 3, 4, 5, 6]. However, by using default
negation, another form of inconsistency can appear which is called incoherence. Incoherent
answer set programs do not possess answer sets even though the cause of the incoherence
generally comprises only one or more smaller parts of the program. Several approaches show
how these causes can be found and which part of the programs are affected and thus have
to be revised in order to restore the coherence of a program [7, 8, 9]. But to the best of our
knowledge, there does not exist a method describing how to establish coherence, particularly in
collaboration with an expert on the modelled knowledge. To disburden users from dealing with
actual logic program rules and from coming up with a solution themselves, we therefore propose
CAUSALโ21: Workshop on Causal Reasoning and Explanation in Logic Programming, September 20โ27, 2021
andre.thevapalan@tu-dortmund.de (A. Thevapalan); jesse.heyninck@tu-dortmund.de (J. Heyninck);
gabriele.kern-isberner@cs.tu-dortmund.de (G. Kern-Isberner)
0000-0001-5679-6931 (A. Thevapalan); 0000-0002-3825-4052 (J. Heyninck); 0000-0001-8689-5391
(G. Kern-Isberner)
Copyright ยฉ 2021 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
CEUR
Workshop
Proceedings
http://ceur-ws.org
ISSN 1613-0073 CEUR Workshop Proceedings (CEUR-WS.org)
a method to compute possible solutions that reuses the coherent program parts while modifying
the incoherence-causing parts as minimally invasive as possible. For that, we adapt results on
coherence in argumentation graphs [9] for normal logic programs which in turn enables us to
locate those parts of the program (called SCUPs) that are responsible for the incoherence. We
will then present different methods how the logic program can be amended in order to obtain a
coherent logic program without performing unncessary modifications.
The paper is organized as follows. After providing some necessary preliminaries in Section
2 and 3, in Section 4, we introduce amendments for argumentation graphs and for normal
logic programs and establish results in parallel between both types of amendments. The
paper concludes by outlining how the presented approach can serve as part of a framework to
interactively establish coherence in logic programs in Section 5, followed by a brief discussion
of possible areas of application in Section 7.
2. Preliminaries
2.1. Normal Logic Programs
In this paper, we look at non-disjunctive normal logic programs (NLPs)1 [10] under the (three-
valued) stable semantics [11]. A NLP is a finite set of rules over a set ๐ of propositional atoms.
A default-negated atom ๐ด, also called default literal, is written as โผ๐ด. A rule ๐ is of the form
๐ด0 โ ๐ด1 , . . . , ๐ด๐ , โผ๐ด๐+1 , . . . , โผ๐ด๐ ., with atoms ๐ด0 , . . . , ๐ด๐ and 0 โค ๐ โค ๐. The atom ๐ด0
is the head of ๐, denoted by ๐ป(๐), and {๐ด1 , . . . ๐ด๐ , โผ๐ด๐+1 , . . . โผ๐ด๐ } is the body of ๐, denoted
by ๐ต(๐). Furthermore, {๐ด1 , . . . , ๐ด๐ } is denoted by ๐ต + (๐) and {๐ด๐+1 , . . . , ๐ด๐ } by ๐ต โ (๐). A
rule ๐ with ๐ต(๐) = โ
is called a fact, and if ๐ป(๐) = โ
, rule ๐ is called a constraint. A rule ๐ with
๐ต โ (๐) ฬธ= โ
will be called a default rule. A normal logic program ๐ซ can then be defined as a set
of rules. A set ๐ผ of atoms satisfies a rule ๐ if ๐ป(๐) โ ๐ผ whenever ๐ต + (๐) โ ๐ผ and ๐ต โ (๐) โฉ ๐ผ = โ
.
We say for a set of atoms ๐ผ, rule ๐ holds if ๐ผ satisfies ๐.
A three-valued interpretation is a pair of sets of atoms โจ๐ผ, ๐ผ โฒ โฉ with ๐ผ โฉ ๐ผ โฒ = โ
, where ๐ผ
represents the atoms which are true and ๐ผ โฒ represents the atoms which are false. Thus, any
atom ๐ด ฬธโ ๐ผ โช ๐ผ โฒ is undecided. We will also say, for any atom ๐ด, โจ๐ผ, ๐ผ โฒ โฉ(๐ด) = T iff ๐ด โ ๐ผ,
โจ๐ผ, ๐ผ โฒ โฉ(๐ด) = F iff ๐ด โ ๐ผ โฒ , and โจ๐ผ, ๐ผ โฒ โฉ(๐ด) = U otherwise. The truth-order โชฏ๐ก over {T, F, U} is
defined as F โบ๐ก U โบ๐ก T whereas the knowledge order is defined by U โบ๐ T, F. A three-valued
interpretation ๐ฝ satisfies a positive rule ๐ iff minโชฏ๐ก {๐ฝ(๐ด) | ๐ด โ ๐ต(๐)} โชฐ๐ก ๐ฝ(๐ป(๐)). We
furthermore define a constant U s.t. for every interpretation ๐ฝ, ๐ฝ(U) = U. The three-valued
โฒ
reduct ๐ซ โจ๐ผ,๐ผ โฉ of a program is obtained as follows:
โฒ
๐ซ โจ๐ผ,๐ผ โฉ = {๐ป(๐) โ ๐ต + (๐). | ๐ โ ๐ซ, ๐ต โ (๐) โ ๐ผ โฒ }โช (1)
+ โ โ โฒ
{๐ป(๐) โ ๐ต (๐), U. | ๐ โ ๐ซ, ๐ต (๐) โฉ ๐ผ = โ
and ๐ต (๐) โ ๐ผ ฬธ= โ
}. (2)
โฒ
Intuitively, we add ๐ป(๐) โ ๐ต + (๐) to ๐ซ โจ๐ผ,๐ผ โฉ when all negative atoms in ๐ are false, whereas
we add ๐ป(๐) โ ๐ต + (๐), U when all negative atoms in ๐ are not true, and there is some negative
atoms in ๐ that is not false. We say ๐ฝ is a stable interpretation for ๐ซ iff ๐ฝ is the โชฏ๐ก -minimal
1
Albeit the presented approach aims to be used with answer set programs, for the proof of concept in this paper
normal logic programs will suffice.
interpretation of ๐ซ ๐ฝ . ๐ฝ is a regular interpretation [12] if it is stable and for every stable
interpretation ๐ฝ โฒ , ๐ฝ โฒ โชฏ๐ ๐ฝ. A set of atoms ๐ผ is an answer set of ๐ซ if โจ๐ผ, ๐ โ ๐ผโฉ is a stable
interpretation [10].
Definition 1 (Coherence). Let ๐ซ be an NLP. ๐ซ is coherent if ๐ซ has at least one answer set.
Otherwise, ๐ซ will be called incoherent.
Example 1. The following NLP ๐ซ1 will be used as a running example throughout the paper:
๐1 : fever โ highTemp, โผsunstroke.
๐2 : fatigue โ lowEnergy, โผstress, โผworkedOut.
๐3 : highTemp โ tempAbove37 . ๐4 : sunstroke โ highTemp, โผfever .
๐5 : allergy โ pollenSeason, fatigue, โผflu, โผcold .
๐6 : cold โ fatigue, soreThroat, โผmigraine.
๐7 : flu โ fatigue, โผmigraine. ๐8 : migraine โ headache, โผallergy.
๐9 : soreThroat. ๐10 : headache. ๐11 : pollenSeason. ๐12 : lowEnergy. ๐13 : tempAbove37 .
๐ซ1 has no answer sets and is, therefore, incoherent. It has, however, the three-valued stable inter-
pretations ๐ฝ1 , ๐ฝ2 and ๐ฝ3 , where:
โฑ ={soreThroat, headache, pollenSeason, lowEnergy, tempAbove37 }
๐ฝ1 =โจโฑ โช {fatigue}, {stress, workedOut}โฉ
๐ฝ2 =โจโฑ โช {sunstroke, fatigue}, {fever , stress, workedOut}โฉ
๐ฝ3 =โจโฑ โช {fever , fatigue}, {sunstroke, stress, workedOut}โฉ
By way of illustration, we explain why ๐ฝ1 is a three-valued stable interpretation. This can be
seen by first calculating ๐ซ1๐ฝ1 :
๐1โฒ : fever โ highTemp, U. ๐2โฒ : fatigue โ lowEnergy.
๐3โฒ : highTemp โ tempAbove37 . ๐4โฒ : sunstroke โ highTemp, U.
๐5โฒ : allergy โ pollenSeason, fatigue, U.
๐6โฒ : cold โ fatigue, soreThroat, U. ๐7โฒ : flu โ fatigue, U.
๐8โฒ : migraine โ headache, U. ๐9 , ๐10 , ๐11 , ๐12 , ๐13
It can be easily checked that ๐ฝ1 is the โชฏ๐ก minimal interpretation of ๐ซ1๐ฝ1 .
3. Argumentation Graphs
In this section, we introduce assumption-based argumentation [13] which will allow us to
straightforwardly reason about incoherence and its causes in logic programs. The basic idea is
the following: given a logic ๐ซ, an argumentation graph, which is a directed graph consisting of
arguments and attacks between these arguments, is constructed by considering sets of default
literals as arguments. An attack between two arguments takes place if we can derive a (positive)
โผcold , โผflu, โผfever โผsunstroke
โผallergy โผstress,
โผworkedOut
โผcold
โผstress,
โผflu
โผworkedOut
โผmigraine,
โผmigraine โผworkedOut,
โผstress โผfatigue
Figure 1: Argumentation Graph AF(๐ซ1 ) from Example 1
atom that occurs negated in the attacked set from the attacking set of default literals. Thus, an
attack between two sets of default literals occurs if there is one or more sets of rules that allow
to derive, from the attacking set of default literals, a positive atom in the attacked set. In other
words, the intuition is that every literal is assumed to be false, until and unless we can derive a
valid counter-argument against this assumption.
โ๏ธ
Definition 2. Given a logic program ๐ซ, we define ฮฉ๐ซ = {โผ๐ด | ๐ด โ ๐โ๐ซ ๐ต โ (๐)}. For some
ฮ โ ฮฉ๐ซ , โข๐ซ โ โ(ฮฉ๐ซ ) ร (๐๐ซ โช ฮฉ๐ซ ) is defined inductively as follows:
โข ฮ โข๐ซ โผ๐ด iff โผ๐ด โ ฮ,
โข ฮ โข๐ซ ๐ด iff there is some ๐ โ ๐ซ s.t. ๐ด = ๐ป(๐) and ฮ โข๐ซ ๐ for every ๐ โ ๐ต(๐).
Given ฮ โ โ(ฮฉ๐ซ ), we say ฮ is derivable from ฮ by a set of rules ฮ โ ๐ซ iff ฮ โขฮ ฮ.
Example 2 (Example 1 continued). We see that for ๐ซ1 in Example 1, the following derivations
(among others) hold:
โข {โผfever } โข๐ซ1 โผfever (in view of the first item of Definition 2).
โข โ
โข๐ซ1 tempAbove37 . and โ
โข๐ซ1 highTemp. (in view of the second item of Definition 2
and since tempAbove37 ., highTemp โ tempAbove37 . โ ๐ซ1 ).
โข {โผfever } โข๐ซ1 sunstroke (in view of the second item of Definition 2, the previous two items
and sunstroke โ highTemp, โผfever . โ ๐ซ1 ).
Definition 3. Given a logic program ๐ซ, AF(๐ซ) = โจโ(ฮฉ๐ซ ), โ๐ซ โฉ is the corresponding argumen-
tation graph of ๐ซ where โ๐ซ โ โ(ฮฉ๐ซ )รโ(ฮฉ๐ซ ) s.t. for any ฮ, ฮ โ ฮฉ๐ซ , ฮ โ๐ซ ฮ iff ฮ โข๐ซ ๐ด for
some โผ๐ด โ ฮ. We will also call โผ๐ด โ ฮฉ๐ซ an assumption, and sets of assumptions arguments.
Example 3 (Example 1 continued). The graphical representation of a fragment of the argumen-
tation graph AF(๐ซ1 ) can be seen in Figure 1. By way of example, we explain the attack from
{โผfever } to {โผsunstroke} by pointing to the fact that {โผfever } โข๐ซ1 sunstroke (see Example
2). Notice that we have included only the relevant fragment of the argumentation graph. To avoid
clutter, attacks like {โผfever } โ๐ซ1 {โผsunstroke, โผstress} were left out of Figure 1.
Assumption labellings are used to give semantics to argumentation graphs. An assumption
labelling ๐ฟ : ฮฉ๐ซ โ {T, F, U} assigns to every assumption a truth-value T (true), F (false), or
U (undecided). We denote, for โ โ {T, F, U}, โ (๐ฟ) = {โผ๐ด โ ฮฉ๐ซ | ๐ฟ(โผ๐ด) = โ }. For a set
ฮ โ ฮฉ๐ซ and an assumption labelling ๐ฟ, ๐ฟ(ฮ) = minโชฏ๐ก {๐ฟ(โผ๐ด) | โผ๐ด โ ฮ}.
Definition 4 ([14]). Let an argumentation graph AF(๐ซ) = โจโ(ฮฉ๐ซ ), โ๐ซ โฉ and an assumption
labelling ๐ฟ : ฮฉ โ {T, F, U} be given. Then ๐ฟ is:
โข admissible iff for every โผ๐ด โ ฮฉ๐ซ , it holds that (1) if ๐ฟ(โผ๐ด) = T then for every ฮ โ ฮฉ๐ซ
s.t. ฮ โ๐ซ โผ๐ด, there is some โผ๐ต โ ฮ s.t. ๐ฟ(โผ๐ต) = F, (2) if ๐ฟ(โผ๐ด) = F then there is
some ฮ โ ฮฉ๐ซ s.t. ฮ โ๐ซ โผ๐ด and for every โผ๐ต โ ฮ, ๐ฟ(โผ๐ต) = T, (3) if ๐ฟ(โผ๐ด) = U
then for every ฮ โ ฮฉ๐ซ s.t. ฮ โ๐ซ โผ๐ด, there is some โผ๐ต โ ฮ s.t. ๐ฟ(โผ๐ต) ฬธ= T.2
โข complete if it is admissible and for every โผ๐ด โ ฮฉ๐ซ , it holds that if ๐ฟ(โผ๐ด) = U then there
is some ฮ โ ฮฉ๐ซ s.t. ฮ โ๐ซ โผ๐ด and for every โผ๐ต โ ฮ, ๐ฟ(โผ๐ต) ฬธ= F.
โข preferred if it is admissible and T(๐ฟ) is โ-maximal among all admissible labellings.
โข stable if it is admissible and iff U(๐ฟ) = โ
.
Example 4 (Example 3 continued). For AF(๐ซ1 ), there are three complete labellings, ๐ฟ1 , ๐ฟ2 and
๐ฟ3 , characterised by (to avoid clutter we leave out set-brackets):
๐ฟ1 (โผfever ) = U ๐ฟ2 (โผfever ) = T ๐ฟ3 (โผfever ) = F
๐ฟ1 (โผsunstroke) = U ๐ฟ2 (โผsunstroke) = F ๐ฟ3 (โผsunstroke) = T
๐ฟ1 (โผstress) = T ๐ฟ2 (โผstress) = T ๐ฟ3 (โผstress) = T
๐ฟ1 (โผworkedOut) = T ๐ฟ2 (โผworkedOut) = T ๐ฟ3 (โผworkedOut) = T
๐ฟ1 (โผfatigue) = F ๐ฟ2 (โผfatigue) = F ๐ฟ3 (โผfatigue) = F
๐ฟ1 (โผallergy) = U ๐ฟ2 (โผallergy) = U ๐ฟ3 (โผallergy) = U
๐ฟ1 (โผflu) = U ๐ฟ2 (โผflu) = U ๐ฟ3 (โผflu) = U
๐ฟ1 (โผcold ) = U ๐ฟ2 (โผcold ) = U ๐ฟ3 (โผcold ) = U
๐ฟ1 (โผmigraine) = U ๐ฟ2 (โผmigraine) = U ๐ฟ3 (โผmigraine) = U
๐ฟ2 and ๐ฟ3 are also preferred. It can be noticed that there is no stable labelling for AF(๐ซ1 ).
As shown in [15], complete labellings of the argumentation graph AF(๐ซ) actually give an
alternative characterisation of three-valued stable interpretation. To describe this characterisa-
tion, the following method of moving between labellings of AF(๐ซ) and interpretations of ๐ซ are
useful:
Definition 5. Given an assumption labelling ๐ฟ, the corresponding three-valued interpretation
Lab2Int(๐ฟ) is defined as Lab2Int(๐ฟ) = โจ๐ผ, ๐ผ โฒ โฉ where ๐ผ = {๐ด | ๐ฟ(โผ๐ด) = F} and ๐ผ โฒ =
{๐ด | ๐ฟ(โผ๐ด) = T}. Likewise, given a three-valued interpretation, โจ๐ผ, ๐ผ โฒ โฉ, the corresponding
assumption labelling Int2Lab(โจ๐ผ, ๐ผ โฒ โฉ) is defined by:
โง
โฒ
โจT if ๐ด โ ๐ผ
โช
Int2Lab(โจ๐ผ, ๐ผ โฒ โฉ)(โผ๐ด) = F if ๐ด โ ๐ผ
โช
โฉ
U otherwise
2
Notice that in assumption-based argumentation labellings [14], there is a third condition (3) for admissible
labellings, which does not occur in abstract argumentation labellings.
The authors in [15] have shown the following representation result:
Proposition 1. Let a normal logic program ๐ซ be given. Then:
โข โจ๐ผ, ๐ผ โฒ โฉ is a three-valued stable interpretation of ๐ซ iff Int2Lab(โจ๐ผ, ๐ผ โฒ โฉ) is a complete la-
belling of AF(๐ซ), and vice versa: ๐ฟ is a complete labelling of AF(๐ซ) iff Lab2Int(๐ฟ) is a
three-valued stable interpretation of ๐ซ.
โข โจ๐ผ, ๐ผ โฒ โฉ is a regular interpretation of ๐ซ iff Int2Lab(โจ๐ผ, ๐ผ โฒ โฉ) is a preferred labelling of AF(๐ซ),
and vice versa: ๐ฟ is a preferred labelling of AF(๐ซ) iff Lab2Int(๐ฟ) is a regular interpretation
of ๐ซ.
โข โจ๐ผ, ๐ผ โฒ โฉ is a stable interpretation of ๐ซ iff Int2Lab(โจ๐ผ, ๐ผ โฒ โฉ) is a stable labelling of AF(๐ซ),
and vice versa: ๐ฟ is a stable labelling of AF(๐ซ) iff Lab2Int(๐ฟ) is a three-valued stable
interpretation of ๐ซ.
Notice that the above proposition also implies that every preferred interpretation corresponds
to a three-valued stable interpretation.
The problem of incoherence in abstract argumentation has been studied in [9]. In this work,
incoherence was analysed using the notion of strongly connected component (SCC) [16]. A path
from a set of assumptions ฮ to a set of assumptions ฮ is a sequence of sets of assumptions
ฮ1 , . . . , ฮ๐ s.t. ฮ1 = ฮ, ฮ = ฮ๐ and ฮ๐ โ๐ซ ฮ๐+1 for every 1 โค ๐ < ๐. Path-equivalence
between two sets of assumptions ฮ and ฮ holds iff ฮ = ฮ or there is a path from ฮ to ฮ
and from ฮ to ฮ. The equivalence classes of all sets of assumptions under the relation of
path-equivalence are called the strongly connected components of AF(๐ซ). An SCC ฮ โ โ(ฮฉ๐ซ )
is an initial SCC if there is no SCC ฮ โ โ(ฮฉ๐ซ ) s.t. ฮ ฬธ= ฮ and there is some ฮ โ ฮ and some
ฮ โ ฮ s.t. ฮ โ๐ซ ฮ. Given a set of assumptions ฮ โ ฮฉ๐ซ , the restriction of AF(๐ซ) to ฮ is
defined as AF(๐ซ)โฮ = โจฮ, โ๐ซ โฉ(ฮ ร ฮ)โฉ.
Definition 6. Given a labelling ๐ฟ, ฮ โ โ(ฮฉ๐ซ ) is a strongly connected U-part w.r.t. ๐ฟ (in short,
SCUP) iff ฮ is an initial SCC of AF(๐ซ)โU(๐ฟ) .
The authors in [9] show that SCUPs can be seen as the responsible parts of incoherence:
Proposition 2 (cf. [9]). There exists a SCUP w.r.t. the preferred labelling ๐ฟ iff ๐ฟ is not stable.
Corollary 1 (cf. [9]). ๐ซ is incoherent iff for every preferred labelling ๐ฟ of AF(๐ซ) there exists a
SCUP.
They also established a strong connection between SCUPS and odd attack cycles between
arguments, which we will exploit in this paper. In more detail, a direct consequence of the
results in [9] is that every SCUP contains at least one odd-length cycle (see Appendix A.1).
SCUPS are, however, a more precise indication of the โcauseโ of incoherence, since, as we will
see, incoherence can be resolved by manipulating SCUPs.
Example 5 (Example 4 continued). For AF(๐ซ1 ) (with ๐ซ1 as in Example 1) and ๐ฟ2 as in Example
4, let ฮฉโ = {ฮ โ ฮฉ๐ซ1 | ฮ โฉ {โผallergy, โผflu, โผcold , โผmigraine} ฬธ= โ
}. Then we see that
AF(๐ซ1 )โU(๐ฟ) = โจฮฉโ , โ๐ซ1 โฉ(ฮฉโ ร ฮฉโ )โฉ.
It can be observed that AF(๐ซ1 )โU(๐ฟ) contains one SCC, namely: ฮ = {ฮโ ฮฉ๐ซ1 | ฮ โ
{โผallergy} or ฮ โ {โผflu, โผcold , โผstress, โผworkedOut} or ฮ โ {โผmigraine, โผstress,
โผworkedOut}}. Thus, ฮ is the unique SCUP w.r.t. ๐ฟ2 .
4. Coherence Restoration
As pointed out before, argumentation graphs provide insight into whether a logic program is
coherent or not. More precisely, SCUPs of an argumentation graph point to the exact sets of
attacks between assumptions that are the cause for the incoherence. For this reason, we will
describe in the following how to manipulate an argumentation graph in order to obtain an
argumentation graph that is free of SCUPs and which, therefore, has a stable labelling. We will
specify suitable SCUP amendment operations, that are basic modifications that can be used (in
combination) to resolve a SCUP and thus restore coherence.
4.1. SCUP Amendment
In the remainder of this paper, we will assume as given an incoherent NLP ๐ซ over ๐, its
corresponding argumentation graph AF(๐ซ) = โจโ(ฮฉ๐ซ ), โ๐ซ โฉ, and the set SCUPS(๐ซ) of all
SCUPs in AF(๐ซ) w.r.t. a preferred labelling ๐ฟ for AF(๐ซ).
Definition 7 (Informativeness). Let ๐ฟ be a labelling for AF(๐ซ) and ๐ฟโฒ a labelling for an argu-
mentation graph AFโโ = โจโ(ฮฉโโ ), โโโ โฉ with ฮฉ๐ซ =ฮฉโโ . We say ๐ฟโฒ is more informative than ๐ฟ,
denoted by ๐ฟ โบk ๐ฟโฒ , if the following holds: T(๐ฟ) โ T(๐ฟโฒ ), F(๐ฟ) โ F(๐ฟโฒ ), and U(๐ฟโฒ ) โ U(๐ฟ).
Definition 8 (SCUP Amendment). Given a preferred labelling ๐ฟ for AF(๐ซ) and a SCUP ฮ โ
SCUPS(๐ซ), a SCUP amendment of AF(๐ซ) w.r.t. ฮ is AFโโ = โจโ(ฮฉโโ ), โโโ โฉ such that
โ๏ธ
โข ฮ โโโ ฮ iff ฮ โ๐ซ ฮ, and ฮ โฉ ฮ = โ
for any ฮ, ฮโฮฉ๐ซ .
โข there exists a preferred labelling ๐ฟโโ for AFโโ such that
โ for all โผ๐ด โ ฮฉโโ โฮฉ: ๐ฟโโ (โผ๐ด) = T or ๐ฟโโ (โผ๐ด) = F, and
โ ๐ฟ โบk ๐ฟโโ .
Any such preferred labelling ๐ฟโโ will be called an amendment labelling of AFโโ w.r.t. ๐ฟ.
We explain SCUP amendments as follows: these amendments are changes to the argumenta-
tion graph โจโ(ฮฉ๐ซ ), โ๐ซ โฉ that are induced by either adding or removing attacks on arguments
within the SCUP. A minimal condition for such amendments is that the argumentation graph
can only be manipulated by adding or removing attacks on arguments that have at least one
assumption in common with the SCUP that is the basis of an amendment. Below, we will give
specific methods that lead to SCUP amendments. The amendment should have as a result
that there exists a preferred labelling which is more informative than the preferred labelling
on which the amendment was based and which โresolvesโ the SCUP in the sense that now
every member of the SCUP gets assigned a definitive label (i.e. a label other than U). From the
perspective of information theory, therefore, SCUP amendments reduce the undecidedness of
the knowledge represented by the argumentation graph.
As shown in [9], it is not guaranteed that there exists a single SCUP amendment AFโโ of
AF(๐ซ) such that a corresponding amendment labelling ๐ฟโโ is a stable labelling.
Definition 9 (Iterated SCUP Amendment). Let AF1 be an argumentation graph with a preferred
labelling ๐ฟ1 and at least one SCUP ฮ w.r.t. ๐ฟ1 . An iterated SCUP amendment is a sequence
โจAF1 , L1 โฉ, . . . , โจAFn , Ln โฉ(n > 1) such that for all ๐ (1 โค ๐ < ๐), AFi+1 is a SCUP amendment of
AFi w.r.t. ฮ and ๐ฟ๐+1 is an amendment labelling of AFi+1 w.r.t. ๐ฟ๐ .
Next, we will propose different methods on how to manipulate a given argumentation graph
in order to obtain a suitable SCUP amendment.
4.2. SCUP Amendment Operations
Informally, a SCUP of an argumentation graph AF contains one or more interdependent odd
cycles such that all preferred labellings label all assumptions of these responsible cycles as
undecided. Notice the importance of the preferred labellings for restoring coherence, as they
are โas closeโ (according to โค๐ ) to stable labellings as possible. Thus, resolving a SCUP requires
the manipulation of the graph such that there exists a preferred labelling ๐ฟโโ for the modified
graph that is more informative, i. e., where at least one of the arguments that is part of the cycle
is labelled either true or false by ๐ฟโโ . Suppose one of the responsible odd cycles contains the
assumption โผ๐. The most obvious way to obtain such a preferred labelling ๐ฟโโ is to force an
assumption of a responsible cycle to be true or false, for example to demand that ๐ is true. In
argumentation graphs, such an enforcement operation can be implemented by adding an attack
from the empty set to โผ๐ (which, since then โ
โข๐ซ ๐, in turn corresponds to adding a fact ๐.
in logic programs). Other ways to obtain a more informative labelling ๐ฟโโ and ultimately a
SCUP-free argumentation graph is to modify the responsible odd cycles and manipulate their
attacks such that they contain even subcycles or break up the responsible cycles by removing
one or more attacks of said cycles. These preliminary considerations lead us to the following
SCUP amendment operations.
Given a SCUP ฮ โ SCUPS(๐ซ) w.r.t. a preferred labelling ๐ฟ, the following SCUP amendment
operations can be used to (eventually) resolve SCUP ฮ:
Enforcement The SCUP amendment operation (SCUP) enforcement consists of the manipu-
lation of AFโ๏ธto AFโโ = โจโ(ฮฉ๐ซ ), โโโ โฉ w.r.t. ฮ where โโโ = โ๐ซ โช{โ
โโโ ฮ | โผ๐ด โ ฮ} such
that โผ๐ด โ ฮ.3
Evening Up The SCUP amendment operation (SCUP) evening up consists of the manipulation
of AF to AFโโ โ๏ธ
= โจโ(ฮฉ๐ซ ), โโโ โฉ w.r.t. ฮ where โโโ = โ๐ซ โช{ฮ โโโ ฮ | โผ๐ด โ ฮ} with
ฮ โ ฮ, โผ๐ด โ ฮ and โผ๐ด ฬธโ ฮ.
Pacification The SCUP amendment operation (SCUP) pacification consists of the manipulation
of AF to AFโโ = โจโ(ฮฉ๐ซ ),โ๏ธโโโ โฉ w.r.t. ฮ such that โโโ = โ๐ซ โ{ฮโฒ โ๐ซ ฮ | โผ๐ด โ ฮ, ฮโฒ โ ฮ}
with ฮ โ ฮ and โผ๐ด โ ฮ.
Proposition 3. There exist argumentation graphs for which: (1) A single application of a SCUP
pacification operation might not always lead to a SCUP amendment; (2) no number of applications
of evening up leads to a SCUP amendment of AF w.r.t. ฮ.
Proof. Ad 1: this is shown by use of the following example. Consider the following AF1 drawn
in Figure 2a. This argumentation graph has a single complete extension:
๐ฟ(โผ๐) = ๐ฟ(โผ๐) = ๐ฟ(โผ๐) = U.
3
A more fine-grained version of enforcement would be to allow for any attacks from arguments that are labelled
T by the preferred labelling on which the SCUP amendment is based.
โผ๐ โผ๐
โผ๐ โผ๐ โผ๐ โผ๐
(a) AF1 (b) AF2
Figure 2: Visualization of argumentation graphs used in proof of Proposition 3
It can be easily checked that any single application of pacification does not result in any
change to the complete labellings. For example, deleting {{โผ๐} โ ฮ | โผ๐ โ ฮ} or {{โผ๐} โ
ฮ | โผ๐ โ ฮ} does not result in a more informative complete labelling.
Ad 2: this is shown by use of the following example. Consider the following argumentation
graph AF1 drawn in Figure 2a. If we apply evening up as much as possible, we end up with the
argumentation graph AF2 drawn in Figure 2b, which has the same unique complete labelling as
AF1 :
๐ฟ(โผ๐) = ๐ฟ(โผ๐) = ๐ฟ(โผ๐) = U.
However, one can always iterate the amendment operations of enforcement and pacification
to obtain a SCUP amendment.
Proposition 4. For any argumentation graph AF with a preferred labelling ๐ฟ and a SCUP w.r.t. ๐ฟ:
(1) there exists a SCUP amendment of AF w.r.t. ฮ that consists of a sequence of SCUP enforcement
operations, and (2) there exists a SCUP amendment of AF w.r.t. ฮ that consists of a sequence of
SCUP pacification operations.4
For a SCUP ฮ without self-attacking arguments, evening up is also an adequate amendment
operation:
Proposition 5. Let an argumentation graph AF with a preferred labelling ๐ฟ and a SCUP ฮ w.r.t.
๐ฟ s.t. for no ฮ โ ฮ, ฮ โ ฮ. Then there exists a SCUP amendment of AF w.r.t. ฮ that consists
of a sequence of SCUP evening up operations.
Proposition 6. For any finite argumentation graph AF with a preferred labelling ๐ฟ and at least
one SCUP w.r.t. ๐ฟ, there exists an iterated SCUP amendment โจAF, Lโฉ, . . . , โจAFn , Ln โฉ s.t. ๐ฟ๐ is a
stable labelling.
Corollary 2. For any incoherent NLP ๐ซ and a preferred labelling ๐ฟ of AF(๐ซ), there exists an
iterated SCUP amendment โจAF(๐ซ), Lโฉ, . . . , โจAFn , Ln โฉ s.t. any NLP ๐ซ ๐ that induces AFn is coher-
ent.
4
In view of spatial limitations, proofs and further details have been left out but can be found in an online
appendix under http://tinyurl.com/thki2021-appndx.
โ
โผcold , โผflu, โผcold , โผflu, โผcold , โผflu,
โผallergy โผstress, โผallergy โผstress, โผallergy โผstress,
โผworkedOut โผworkedOut โผworkedOut
โผmigraine โผmigraine โผmigraine
โผcold โผmigraine, โผcold โผmigraine, โผcold โผmigraine,
โผworkedOut, โผworkedOut, โผworkedOut,
โผflu โผstress โผflu โผstress โผflu โผstress
(a) AF(๐ซ1 ) after SCUP enforce- (b) AF(๐ซ1 ) after SCUP evening (c) AF(๐ซ1 ) after SCUP pacifica-
ment up tion
Figure 3: Visualization of SCUP amendment operations in Example 6
Example 6 (Example 4 continued). Consider the NLP ๐ซ1 , again. AF(๐ซ1 ) has the unique SCUP
ฮ = {ฮโ โ(ฮฉ๐ซ1 ) | ฮ โ {โผallergy} or
ฮ โ {โผflu, โผcold , โผstress, โผworkedOut} or
ฮ โ {โผmigraine, โผstress, โผworkedOut}}.
Adding the set of attacks ฮ1 = {โ
โโโ ฮ | โผmigraine โ ฮ, ฮ โ ฮ} to AF(๐ซ1 ) would
constitute a SCUP enforcement operation and thus AF(๐ซ1โโ ) = โจโ(ฮฉ๐ซ1 ), โโโ โฉ would be a SCUP
amendment w.r.t. ฮ where โโโ = โ โชฮ1 .
Similarly, adding the set of attacks ฮ2 = {{โผallergy} โโโ ฮ | โผflu โ ฮ, ฮ โ ฮ} to AF(๐ซ1 )
would constitute a SCUP evening up operation. Again, AF(๐ซ1โโ ) = โจโ(ฮฉ๐ซ1 ), โโโ โฉ would be a
SCUP amendment w.r.t. ฮ where โโโ = โ โชฮ2 .
Finally, ฮ3 = {{โผcold , โผflu, โผstress, โผworkedOut} โโโ ฮ | โผallergy โ ฮ, ฮ โ ฮ}
being removed from AF(๐ซ1 ) constitutes a SCUP pacification operation. Here, AF(๐ซ1โโ ) =
โจโ(ฮฉ๐ซ1 ), โโโ โฉ would be a SCUP amendment w.r.t. ฮ where โโโ = โ โฮ1 . The resulting changes
in AF(๐ซ1 ) illustrated in Figure 3.
Thus, the following methodology for resolving incoherence in an NLP ๐ซ has been introduced:
first, the argumentation framework AF(๐ซ) is constructed. An iterated SCUP amendment is then
applied to this argumentation framework, which consists of a number of SCUP amendments,
each of which on its turn consists of a series of applications of SCUP amendment operations of
the userโs choice. Thus, SCUP amendment operations can be seen as the basic building blocks
in our framework for coherence restoration. In the next section, we show how these SCUP
amendment operations correspond to changes of the logic program ๐ซ. With Corollary 2, such
changes to the logic program ๐ซ can then be iterated to restore coherence of ๐ซ.
4.3. NLP Amendments
By definition, an NLP ๐ซ induces a unique argumentation graph AF(๐ซ), whereas AF(๐ซ) can
correspond to a vast number of logic programs. We have shown how one can modify an
argumentation graph AF(๐ซ) of an incoherent NLP ๐ซ via iterated SCUP amendment such that
the final argumentation graph AFn has a stable labelling. This means, any NLP ๐ซ ๐ that induces
AFn is coherent. In this section, we will show how the execution of each amendment operation
in AF(๐ซ) can be implemented in ๐ซ accordingly. โ๏ธ
Let ๐ซฮ denote the set of rules corresponding
โ๏ธ to ฮ โ SCUPS(๐ซ), i. e., ๐ซฮ = {ฮจ | ฮ โขฮจ
๐ด for some ฮ โ ฮ and some โผ๐ด โ ฮ}, and let ๐ซ๐ = ๐ซโ๐ซฮ be the set of all other rules in
๐ซ.
Enforcement in ๐ซ Enforcement in ๐ซ modifies ๐ซ = ๐ซฮ โช ๐ซ๐ to ๐ซ โโ = ๐ซฮโฒ โช ๐ซ๐ such that
๐ซฮโฒ = ๐ซฮ โช {๐ฟ.} and there exists a rule ๐ โ ๐ซฮ with ๐ฟ โ ๐ต โ (๐). In that case we also say
that ๐ซ โโ is obtained by application of the program amendment operation enforcement.
Evening Up in ๐ซ Let ๐ด be an atom such that there exists a set ฮ โ ฮ with โผ๐ด โ ฮ, and
let ฮ โ ฮ be a set in ฮ such that โผ๐ด โ / ฮ. Evening up in ๐ซ modifies ๐ซ = ๐ซฮ โช ๐ซ๐ to
๐ซ โโ = ๐ซฮโฒ โช ๐ซ๐ such that ๐ซฮโฒ = ๐ซฮ โช {๐} with ๐ป(๐) = ๐ด and ๐ต(๐) = ฮ. In that case we
also say that ๐ซ โโ is obtained by application of the program amendment operation evening up.
Pacification in ๐ซ Let ๐ โ ๐ซฮ be a rule in ๐ซฮ such that ๐ป(๐) = ๐ด and โผ๐ด an assumption
in ๐ซฮ . Let, furthermore, ฮ = {ฮ โ ๐ซฮ | ฮ โขฮ ๐ด} with ฮ โ ๐ซฮ be the set of all possible
derivations of ๐ด from some ฮ in ๐ซฮ . Pacification in ๐ซ modifies ๐ซ = ๐ซฮ โช๐ซ๐ to ๐ซ โโ = ๐ซฮโฒ โช๐ซ๐
by removing at least one rule of every derivation ฮ โ ฮ , i. e. ๐ซฮโฒ = ๐ซฮ โ๐ถ, where ๐ถ is a
hitting set of ฮ (๐ถ contains at least one rule of every set in ฮ).5 In that case we also say that
๐ซ โโ is obtained by application of the program amendment operation pacification.
Proposition 7. Let a program ๐ซ, a preferred labelling ๐ฟ w.r.t. AF(๐ซ), a SCUP ฮw.r.t. AF(๐ซ)
and ๐ฟ be given, and let ๐ซ โโ be obtained by application of the program amendment operation
enforcement, evening up or pacification w.r.t. ฮ. Then AF(๐ซ โโ ) constitutes an application of the
respective SCUP amendment operation to AF(๐ซ) w.r.t. ฮ. Conversely, for every application of
the SCUP amendment operation enforcement, evening up or pacification to AF(๐ซ) w.r.t. ฮ, there
exists an application of the respective program amendment operation to ๐ซ resulting in a program
๐ซ โโ such that AFโโ = AF(๐ซ โโ ), where AFโโ is the argumentation graph resulting from applying
the mentioned SCUP amendment operation to AF(๐ซ).
Definition 10. Given a program ๐ซ, an iterated program amendment of ๐ซ is a sequence of
programs โจ๐ซ 1 , ๐ซ 2 , . . . , ๐ซ ๐ โฉ s.t. ๐ซ 1 = ๐ซ and for every 1 โค ๐ < ๐, ๐ซ ๐+1 is obtained by application
of the program amendment operation enforcement, evening up or pacification.
Corollary 3. For any incoherent NLP ๐ซ there exists an iterated program amendment
โจ๐ซ, ๐ซ 1 , . . . , ๐ซ ๐ โฉ s.t. ๐ซ ๐ is coherent.
Example 7 (Example 6 continued). Consider the NLP ๐ซ1 , again. Let ๐ซฮ = {๐2 , ๐5 , ๐6 , ๐7 , ๐8 }
be the set of rules corresponding to the unique SCUP ฮ in ๐ซ1 (see Example 6).
Adding the fact migraine. would then constitute a program enforcement operation in ๐ซ1 . Let
โฑ= {soreThroat, headache, pollenSeason, lowEnergy, tempAbove37 }. With ๐ซ1โโ = ๐ซ1 โช
{migraine.}, we get ๐ด๐(๐ซ1โโ ) = {โฑ โช {highTemp, fatigue, migraine, allergy, sunstroke}}.
5
A more fine-grained way to alter ๐ซฮ would be to subsequently replace the removed rule ๐ with a modified
rule ๐โฒ where ๐ป(๐โฒ ) = ๐ป(๐) and ๐ต(๐โฒ ) ฬธ= ๐ต(๐). An analysis and thorough description of the properties that a
new rule ๐โฒ should possess such that the addition of ๐โฒ eventually leads to a SCUP amendment would be beyond
the scope of this paper and will thus be examined in future work.
Similarly, adding the rule ๐: flu โ tempAbove37 , โผallergy. to ๐ซ1 constitutes a program
evening up operation in ๐ซ1 . With ๐ซ1โโ โฒ = ๐ซ1 โช {๐}, we get ๐ด๐(๐ซ1โโ โฒ ) = {โฑ โช {highTemp,
fatigue, fever , flu, migraine}, โฑ โช {highTemp, fatigue, sunstroke, flu, migraine}}.
Now, let ๐ซ1โโ โฒโฒ = ๐ซ1 โ{๐5 } be the program ๐ซ1 without rule ๐5 . This constitutes a program
pacification in ๐ซ1 . We get ๐ด๐(๐ซ1โโ โฒโฒ ) = {โฑ โช {highTemp, fatigue, migraine, fever }, โฑ โช {
highTemp, fatigue, migraine, sunstroke}}.
In contrast to the program amendment operations pacification and enforcement, evening up
was only defined in a purely declarative way. It is easy to see, that given incoherent NLP ๐ซ,
there can exist a vast amount of ways to apply evening up in ๐ซ in order to obtain a coherent
program ๐ซ โโ . In order to illustrate the principle behind the evening up operation, we now
propose the constructive definition of one possible evening up implementation.
Evening Up by Contraposition The contraposition of a default rule ๐ is a rule ๐โฒ where
๐ป(๐โฒ ) = ๐ด such that โผ๐ด โ ๐ต(๐), and ๐ต(๐โฒ ) = ๐ต(๐) โ {โผ๐ด} โช {โผ๐ต} such that ๐ป(๐) = ๐ต.
Evening up by contraposition consists of adding such a contrapositional rule ๐โฒ of a rule ๐ โ ๐ซฮ
to ๐ซฮ .
Example 8 (Example 6 continued). For ๐ซ1 , the rule ๐8โฒ : allergy โheadache, โผmigraine. would
be a possible contrapositional rule for ๐8 and adding ๐8โฒ to ๐ซฮ would be a SCUP amendment that
would lead to a coherent program.
5. Using Amendments in Applications
Given an incoherent program ๐ซ, the presented approach can lead to a vast amount of possible
solutions to obtain a coherent program ๐ซ โโ . As mentioned before, deciding which solution is
the most adequate for a given application context requires expert knowledge. We, therefore,
propose that the SCUP resolution approach is implemented as part of an interactive framework
similar to the framework for conflict resolution in [17]. Such a framework can then be used to
resolve all SCUPs in ๐ซ in interaction with an expert on the knowledge that is modelled in the
given program. This expert does not necessarily have to be familiar with logic programming and
with coherence in logic programs in particular. Thus, the implementation of such a framework
has to perform two main functions: On the one hand, it has to be able to explain the exact
causes of the incoherence to the expert in a way that is understandable without the technical
knowledge surrounding the concept of coherence in logic programs. On the other hand, the
framework has to gradually assess in interaction with the expert what part of the knowledge
was initially modelled wrongly or insufficiently respectively in order to choose the most suitable
solution. The interactive aspect of the framework should consist of asking the user the right
questions such that they can make the most informed decision. For this, we propose the usage
of argumentative dialogue theory (see e.g. [18, 19, 20]). Both the causes and possible solutions
for incoherence can be explained in an interactive way using argumentative dialogue theory.
In these proof theories, the label of an argument can be explained in a dialogue held between
the computer and the human-user, where the human-user can ask questions about the status
of an argument (e.g. โwhy is fatigue not rejectedโ?) which the computer then answers by
pointing to a counter-argument (e.g. โsince we can derive fatigue in view of ๐2 ). Formally,
these dialogue games consist of a proponent (the computer) and an opponent (the human-user)
exchanging arguments and counter-arguments based on the argumentation graph AF(๐ซ). One
possible implementation would be to generate not only the possible solutions regarding the
SCUP resolution but also a corresponding dialogue tree where each path represents a possible
dialogue between the framework and the expert and eventually leads to a coherent program.
6. Related Work
The presented approach is similar to methods developed and investigated in the area of ASP
debugging. Essentially, debugging approaches in [21, 22, 23] aim to modify knowledge bases
of any (not necessarily inconsistent) logic programs such that they represent the intended
expert knowledge, i. e., they intend to remedy a mismatch between the actual semantics of
the program and the semantics intended by the modeller. Generally, the ability to identify the
errors in a given program and to compute suggestions crucially depends on information by the
expert that is given on top of the original input program. Our approach, however, focuses on a
specific class of inconsistent programs and exploits the properties of incoherence. Here, the
original program is by itself sufficient to identify the problem causes and to generate suitable
solution suggestions. Once possible solutions are available, both, the presented method as well
as debugging approaches like those based on the meta-programming [21] technique can be
used to successively obtain the most suitable solution in interaction with the user.
7. Discussion
We have shown how argumentation theory can be used to establish coherence in an NLP. The
presented approach shows different options regarding how the responsible parts of the program
can be modified in order to gradually obtain a coherent program. Such an approach is not only
useful to analyze the different properties of the possible solutions that resolve the incoherent
parts of the program. It can also serve as a motivation to consider using logic programs in
real-life applications in numerous areas where not only complex decision processes take place
but where the required knowledge is often subject to changes and updates. Embedding the
presented approach in a suitable framework as discussed in Section 5 would, therefore, provide
a useful extension for decision support systems that are based on logic programs [24], but it also
opens up the possibility to use logic program in areas where one is faced with highly contrained
problems and continously evolving knowledge like logistics or the medical sector.
References
[1] T. Eiter, M. Fink, G. Sabbatini, H. Tompits, On properties of update sequences based on
causal rejection, Theory Pract. Log. Program. 2 (2002) 711โ767.
[2] F. Buccafurri, W. Faber, N. Leone, Disjunctive logic programs with inheritance, in: D. D.
Schreye (Ed.), Logic Programming: The 1999 International Conference, Las Cruces, New
Mexico, USA, November 29 - December 4, 1999, MIT Press, 1999, pp. 79โ93.
[3] J. A. Leite, L. M. Pereira, Generalizing updates: From models to programs, in: J. Dix, L. M.
Pereira, T. C. Przymusinski (Eds.), Logic Programming and Knowledge Representation,
Third International Workshop, LPKR โ97, Port Jefferson, New York, USA, October 17, 1997,
Selected Papers, volume 1471 of Lecture Notes in Computer Science, Springer, 1997, pp.
224โ246.
[4] V. W. Marek, M. Truszczynski, Revision programming, Theor. Comput. Sci. 190 (1998)
241โ277.
[5] C. Sakama, K. Inoue, Updating extended logic programs through abduction, in: M. Gelfond,
N. Leone, G. Pfeifer (Eds.), Logic Programming and Nonmonotonic Reasoning, 5th Inter-
national Conference, LPNMRโ99, El Paso, Texas, USA, December 2-4, 1999, Proceedings,
volume 1730 of Lecture Notes in Computer Science, Springer, 1999, pp. 147โ161.
[6] Y. Zhang, N. Y. Foo, Updating logic programs, in: H. Prade (Ed.), 13th European Conference
on Artificial Intelligence, Brighton, UK, August 23-28 1998, Proceedings., John Wiley and
Sons, 1998, pp. 403โ407.
[7] S. Costantini, B. Intrigila, A. Provetti, Coherence of updates in answer set programming,
in: In Proc. of the IJCAI-2003 Workshop on Nonmonotonic Reasoning, Action and Change,
2003, pp. 66โ72.
[8] S. Costantini, On the existence of stable models of non-stratified logic programs, Theory
Pract. Log. Program. 6 (2006) 169โ212.
[9] C. Schulz, F. Toni, On the responsibility for undecisiveness in preferred and stable labellings
in abstract argumentation, Artif. Intell. 262 (2018) 301โ335.
[10] M. Gelfond, V. Lifschitz, Classical negation in logic programs and disjunctive databases,
New Gener. Comput. 9 (1991) 365โ386.
[11] T. C. Przymusinski, The well-founded semantics coincides with the three-valued stable
semantics, Fundam. Inform. 13 (1990) 445โ463.
[12] J.-H. You, L. Y. Yuan, Three-valued formalization of logic programming: is it needed?, in:
Proceedings of the ninth ACM SIGACT-SIGMOD-SIGART symposium on Principles of
database systems, 1990, pp. 172โ182.
[13] P. M. Dung, R. A. Kowalski, F. Toni, Assumption-based argumentation, in: Argumentation
in artificial intelligence, Springer, 2009, pp. 199โ218.
[14] C. Schulz, F. Toni, Labellings for assumption-based and abstract argumentation, Interna-
tional Journal of Approximate Reasoning 84 (2017) 110โ149.
[15] M. Caminada, C. Schulz, On the equivalence between assumption-based argumentation
and logic programming, Journal of Artificial Intelligence Research 60 (2017) 779โ825.
[16] P. Baroni, M. Giacomin, On the role of strongly connected components in argumentation,
in: Proceedings of the 10th International Conference on Information Processing and
Management of Uncertainty inKnowledge-Based Systems (IPMU 2004), Perugia, Italy, 2004,
p. 1887โ1894.
[17] A. Thevapalan, G. Kern-Isberner, Towards interactive conflict resolution in asp programs,
in: M. Martinez, I. Varcinczak (Eds.), Proceedings of the 18th International Workshop on
Non-Monotonic Reasoning, NMR 2020, 2020, pp. 29โ36.
[18] S. Modgil, M. Caminada, Proof theories and algorithms for abstract argumentation frame-
works, in: Argumentation in artificial intelligence, Springer, 2009, pp. 105โ129.
[19] M. Caminada, Argumentation semantics as formal discussion, Journal of Applied Logics 4
(2017) 2457โ2492.
[20] D. Walton, E. C. Krabbe, Commitment in dialogue: Basic concepts of interpersonal reason-
ing, SUNY press, 1995.
[21] M. Gebser, J. Pรผhrer, T. Schaub, H. Tompits, A meta-programming technique for debugging
answer-set programs, in: D. Fox, C. P. Gomes (Eds.), Proceedings of the Twenty-Third
AAAI Conference on Artificial Intelligence, AAAI 2008, Chicago, Illinois, USA, July 13-17,
2008, AAAI Press, 2008, pp. 448โ453.
[22] J. Oetsch, J. Pรผhrer, H. Tompits, Stepping through an answer-set program, in: J. P.
Delgrande, W. Faber (Eds.), Logic Programming and Nonmonotonic Reasoning - 11th
International Conference, LPNMR 2011, Vancouver, Canada, May 16-19, 2011. Proceedings,
volume 6645 of Lecture Notes in Computer Science, Springer, 2011, pp. 134โ147.
[23] K. M. Shchekotykhin, Interactive query-based debugging of ASP programs, in: B. Bonet,
S. Koenig (Eds.), Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelli-
gence, January 25-30, 2015, Austin, Texas, USA, AAAI Press, 2015, pp. 1597โ1603.
[24] A. Thevapalan, G. Kern-Isberner, D. Howey, C. Beierle, R. G. Meyer, M. Nietzke, Decision
support core system for cancer therapies using ASP-HEX, in: K. Brawner, V. Rus (Eds.),
Proceedings of the Thirty-First International Florida Artificial Intelligence Research Society
Conference, FLAIRS 2018, Melbourne, Florida, USA. May 21-23 2018, AAAI Press, 2018, pp.
531โ536.