<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Establish Coherence in Logic Programs Modelling Expert Knowledge via Argumentation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Andre Thevapalan</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jesse Heyninck</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gabriele Kern-Isberner</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Technische Universität Dortmund</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Cape Town and CAIR</institution>
          ,
          <country country="ZA">South Africa</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>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 become 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.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Logic Programming</kwd>
        <kwd>Coherence</kwd>
        <kwd>Argumentation Graphs</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        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 [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] 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 diferent methods how the logic program can be amended in order to obtain a
coherent logic program without performing unncessary modifications.
      </p>
      <p>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.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <sec id="sec-2-1">
        <title>2.1. Normal Logic Programs</title>
        <p>
          In this paper, we look at non-disjunctive normal logic programs (NLPs)1 [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] under the
(threevalued) stable semantics [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. 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  .
        </p>
        <p>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 if  ∈  ,
⟨,  ′⟩( ) = F if  ∈  ′, 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  if 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:</p>
        <p>
          ⟨, ′⟩ = { ( ) ←  +( ). |  ∈  ,  −( ) ⊆  ′}∪
{ ( ) ←  +( ), U. |  ∈  ,  −( ) ∩  = ∅ and  −( ) ∖  ′ ̸= ∅}.
(1)
(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  if  is the ⪯ -minimal
1Albeit the presented approach aims to be used with answer set programs, for the proof of concept in this paper
normal logic programs will sufice.
interpretation of   .  is a regular interpretation [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] if it is stable and for every stable
interpretation  ′,  ′ ⪯  . A set of atoms  is an answer set of  if ⟨,  ∖  ⟩ is a stable
interpretation [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ].
        </p>
        <p>Definition 1 (Coherence). Let  be an NLP.  is coherent if</p>
        <sec id="sec-2-1-1">
          <title>Otherwise,  will be called incoherent.</title>
          <p>has at least one answer set.</p>
          <p>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</p>
          <p>← fatigue, ∼migraine.  8: migraine ← headache, ∼allergy .</p>
          <p>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
interpretations  1,  2 and  3, where:
ℱ
 1 =⟨ℱ ∪ { fatigue}, {stress , workedOut }⟩</p>
          <p>={soreThroat , headache, pollenSeason, lowEnergy , tempAbove37 }
 2 =⟨ℱ ∪ { sunstroke, fatigue}, {fever , stress , workedOut }⟩
 3 =⟨ℱ ∪ { fever , fatigue}, {sunstroke, stress , workedOut }⟩</p>
          <p>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</p>
          <p>← fatigue, U.</p>
          <p>8′: migraine ← headache, U.  9,  10,  11,  12,  13
It can be easily checked that  1 is the ⪯ minimal interpretation of  1 1 .</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Argumentation Graphs</title>
      <p>
        In this section, we introduce assumption-based argumentation [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] 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)
∼migraine
      </p>
      <p>∼stress,
∼workedOut
∼migraine,
∼workedOut,
∼stress
∼cold
∼flu
∼fever</p>
      <p>∼sunstroke
∼stress,
∼workedOut
∼fatigue</p>
      <p>Given a logic program  , we define
Ω

= {∼ |

Δ ⊆ Ω , ⊢ ⊆ ℘(Ω ) × (  ∪ Ω ) is defined inductively as follows:
∈
︀⋃
 ∈
 −( )}. For some
• Δ ⊢
∼ if ∼</p>
      <p>∈ Δ,
• Δ ⊢  if there is some  ∈  s.t.  =  ( ) and Δ ⊢  for every  ∈  ( ).
Given Θ ∈ ℘(Ω ), we say Θ is derivable from Δ by a set of rules Γ ∈  if Δ ⊢Γ Θ.
(among others) hold:
Example 2 (Example 1 continued). We see that for  1 in Example 1, the following derivations
and sunstroke ← highTemp, ∼fever . ∈  1).</p>
      <p>and since tempAbove37 ., highTemp ← tempAbove37 . ∈  1).
• {∼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
• {∼fever } ⊢ 1 sunstroke (in view of the second item of Definition 2, the previous two items
Definition 3.
tation graph of 
some ∼</p>
      <p>Given a logic program  , AF( ) = ⟨℘(Ω ), ↝</p>
      <p>⟩ is the corresponding
argumenwhere ↝
 ⊆ ℘(Ω )×℘(Ω ) s.t. for any Δ, Θ ⊆ Ω , Δ ↝


Θ if Δ ⊢  for
∈ Θ. We will also call ∼</p>
      <p>∈ Ω an assumption, and sets of assumptions arguments.</p>
      <p>Example 3 (Example 1 continued). The graphical representation of a fragment of the
argumentation 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.</p>
      <p>Assumption labellings are used to give semantics to argumentation graphs. An assumption
labelling  : Ω</p>
      <p>→ {T, F, U} assigns to every assumption a truth-value T (true), F (false), or
U (undecided). We denote, for † ∈ {T, F, U}, †( ) = {∼
Δ ⊆ Ω and an assumption labelling  ,  (Δ) = min⪯ { (∼ ) | ∼
∈ Ω</p>
      <p>
        ∈ Δ}.
|
 (∼ ) = †}. For a set
labelling  : Ω → {T, F, U} be given. Then  is:
Definition 4 ([
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]). Let an argumentation graph AF( ) = ⟨℘(Ω ), ↝
 ⟩ and an assumption
• complete if it is admissible and for every ∼
• admissible if for every
      </p>
      <p>∼
s.t. Δ ↝</p>
      <p>some Δ ⊆ Ω
 s.t. Δ ↝</p>
      <p>then for every Δ ⊆ Ω</p>
      <p>∼ , there is some ∼
∈ Ω , it holds that (1) if  (∼ ) = T then for every Δ ⊆ Ω

∈ Δ s.t.  (∼ ) = F, (2) if  (∼ ) = F then there is
∼ and for every ∼
s.t. Δ ↝

∼ , there is some ∼
∈ Δ,  (∼ ) = T, (3) if  (∼ ) = U</p>
      <p>∈ Δ s.t.  (∼ ) ̸= T.2
∈ Ω , it holds that if  (∼ ) = U then there
• stable if it is admissible and if U( ) = ∅.</p>
      <p>is some Δ ⊆ Ω
 s.t. Δ ↝

∼ and for every ∼
∈ Δ,  (∼ ) ̸= F.</p>
      <p>• preferred if it is admissible and T( ) is ⊆-maximal among all admissible labellings.
 3, characterised by (to avoid clutter we leave out set-brackets):
Example 4 (Example 3 continued). For AF( 1), there are three complete labellings,  1,  2 and
 1(∼fever ) = U
 1(∼sunstroke) = U
 1(∼stress ) = T
 2(∼fever ) = T
 2(∼sunstroke) = F
 2(∼stress ) = T
 3(∼fever ) = F
 3(∼sunstroke) = T
 3(∼stress ) = T
 1(∼workedOut ) = T  2(∼workedOut ) = T  3(∼workedOut ) = T
 1(∼fatigue) = F
 1(∼allergy ) = U
 1(∼flu ) = U
 1(∼cold ) = U
 2(∼fatigue) = F
 2(∼allergy ) = U
 2(∼flu ) = U
 2(∼cold ) = U
 3(∼fatigue) = F
 3(∼allergy ) = U
 3(∼flu ) = U
 3(∼cold ) = U
 1(∼migraine) = U
 2(∼migraine) = U
 3(∼migraine) = U
useful:
 2 and  3 are also preferred. It can be noticed that there is no stable labelling for AF( 1).</p>
      <p>
        As shown in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], complete labellings of the argumentation graph AF( ) actually give an
alternative characterisation of three-valued stable interpretation. To describe this
characterisation, the following method of moving between labellings of AF( ) and interpretations of  are
assumption labelling Int2Lab(⟨,  ′⟩) is defined by:
Definition 5.
      </p>
      <p>Given an assumption labelling  , the corresponding three-valued interpretation
Lab2Int( ) is defined as</p>
      <p>Lab2Int( ) = ⟨,  ′⟩ where 
= {

|  (∼ ) = F} and  ′ =
{

|  (∼ ) = T}. Likewise, given a three-valued interpretation, ⟨,  ′⟩, the corresponding
Int2Lab(⟨,  ′⟩)(∼ ) =
⎪
⎨
⎧ T</p>
      <p>
        F
⎪⎩ U
if 
if 
∈  ′
∈ 
otherwise
2Notice that in assumption-based argumentation labellings [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], there is a third condition (3) for admissible
labellings, which does not occur in abstract argumentation labellings.
      </p>
      <p>
        The authors in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] have shown the following representation result:
Proposition 1. Let a normal logic program  be given. Then:
      </p>
      <p>three-valued stable interpretation of  .
• ⟨,  ′⟩ is a three-valued stable interpretation of  if Int2Lab(⟨,  ′⟩) is a complete
labelling of AF( ), and vice versa:  is a complete labelling of AF( ) if Lab2Int( ) is a
• ⟨,  ′⟩ is a regular interpretation of  if Int2Lab(⟨,  ′⟩) is a preferred labelling of AF( ),
and vice versa:  is a preferred labelling of AF( ) if Lab2Int( ) is a regular interpretation
• ⟨,  ′⟩ is a stable interpretation of  if Int2Lab(⟨,  ′⟩) is a stable labelling of AF( ),
and vice versa:  is a stable labelling of AF( ) if Lab2Int( ) is a three-valued stable
of  .</p>
      <p>interpretation of  .</p>
      <p>Notice that the above proposition also implies that every preferred interpretation corresponds
to a three-valued stable interpretation.</p>
      <p>
        The problem of incoherence in abstract argumentation has been studied in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In this work,
incoherence was analysed using the notion of strongly connected component (SCC) [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. A path
from a set of assumptions Δ to a set of assumptions Θ is a sequence of sets of assumptions
defined as AF( )↓Δ = ⟨Δ, ↝
      </p>
      <p>∩(Δ × Δ)⟩.
Δ1, . . . , Δ s.t. Δ1 = Δ, Θ = Δ and Δ ↝

Δ +1 for every 1 ≤  &lt;  . Path-equivalence
between two sets of assumptions Δ and Θ holds if Δ = Θ 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</p>
      <sec id="sec-3-1">
        <title>SCUP) if Δ is an initial SCC of AF( )↓U( ).</title>
        <p>Definition 6.</p>
      </sec>
      <sec id="sec-3-2">
        <title>Given a labelling  , Δ ⊆ ℘(Ω ) is a strongly connected U-part w.r.t.  (in short,</title>
        <p>
          The authors in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] show that SCUPs can be seen as the responsible parts of incoherence:
Proposition 2 (cf. [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]). There exists a SCUP w.r.t. the preferred labelling  if  is not stable.
SCUP.
        </p>
        <p>
          Corollary 1 (cf. [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]).  is incoherent if for every preferred labelling  of AF( ) there exists a
        </p>
        <p>
          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 [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] 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.
        </p>
        <p>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( ) = ⟨Ω†, ↝</p>
        <p>1 ∩(Ω† × Ω†)⟩.
∼workedOut }}. Thus, Δ is the unique SCUP w.r.t.  2.</p>
        <p>It can be observed that AF( 1)↓U( ) contains one SCC, namely: Δ = {Δ⊆ Ω 1 | Δ
⊇
{∼allergy } or Δ
⊇ {∼flu , ∼cold , ∼stress , ∼workedOut } or Δ
⊇ {∼migraine, ∼stress ,</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Coherence Restoration</title>
      <p>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.</p>
      <sec id="sec-4-1">
        <title>4.1. SCUP Amendment</title>
        <p>SCUPs in AF( ) w.r.t. a preferred labelling  for AF( ).</p>
        <p>In the remainder of this paper, we will assume as given an incoherent NLP 
corresponding argumentation graph AF( ) = ⟨℘(Ω ), ↝ ⟩, and the set SCUPS( ) of all
over  , its
Definition 7 (Informativeness). Let  be a labelling for AF( ) and  ′ a labelling for an
argumentation graph AF○⋆ = ⟨℘(Ω○⋆ ), ↝○⋆
⟩ with Ω</p>
        <p>=Ω○⋆ . We say  ′ is more informative than  ,
denoted by  ≺k  ′, if the following holds: T( ) ⊆ T( ′), F( ) ⊆ F( ′), and U( ′) ⊊ U( ).
SCUPS( ), a SCUP amendment of AF( ) w.r.t. Δ is AF○⋆ = ⟨℘(Ω○⋆ ), ↝○⋆ ⟩ such that
Definition 8 (SCUP Amendment). Given a preferred labelling  for AF( ) and a SCUP Δ ∈
• Δ ↝○⋆ Θ if Δ ↝</p>
        <p>︀⋃
 Θ, and Θ ∩
• there exists a preferred labelling  ○⋆ for AF○⋆ such that</p>
        <p>Δ = ∅ for any Δ, Θ⊆Ω .
–  ≺k  ○⋆ .</p>
        <p>– for all ∼ ∈ Ω○⋆ ∖ Ω:  ○⋆ (∼ ) = T or  ○⋆ (∼ ) = F, and
Any such preferred labelling  ○⋆ will be called an amendment labelling of AF○⋆ w.r.t.  .</p>
        <p>We explain SCUP amendments as follows: these amendments are changes to the
argumentation graph ⟨℘(Ω ), ↝</p>
        <p>⟩ 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.</p>
        <p>
          As shown in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], 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
AFi w.r.t. Δ and   +1 is an amendment labelling of AFi+1 w.r.t.   .
⟨AF1, L1⟩, . . . , ⟨AFn, Ln⟩(n &gt; 1) such that for all  (1 ≤  &lt;  ), AFi+1 is a SCUP amendment of
        </p>
        <p>Next, we will propose diferent methods on how to manipulate a given argumentation graph
in order to obtain a suitable SCUP amendment.</p>
      </sec>
      <sec id="sec-4-2">
        <title>4.2. SCUP Amendment Operations</title>
        <p>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.
operations can be used to (eventually) resolve SCUP Δ:</p>
        <p>Given a SCUP Δ ∈ SCUPS( ) w.r.t. a preferred labelling  , the following SCUP amendment
Enforcement The SCUP amendment operation (SCUP) enforcement consists of the
manipulation of AF to AF○⋆ = ⟨℘(Ω ), ↝○⋆
⟩ w.r.t. Δ where ↝○⋆ = ↝
 ∪{∅ ↝○⋆ Δ | ∼
∈ Δ} such
that ∼
∈
︀⋃</p>
        <p>Δ.3
Δ ∈ Δ, ∼
Pacification
∈
︀⋃</p>
        <p>Δ and ∼ ̸∈ Δ.</p>
        <p>Evening Up The SCUP amendment operation (SCUP) evening up consists of the manipulation
of AF to AF○⋆ = ⟨℘(Ω ), ↝○⋆
⟩ w.r.t. Δ where ↝○⋆ =
↝
 ∪{Δ ↝○⋆ Θ | ∼
∈ Θ} with</p>
        <p>The SCUP amendment operation (SCUP) pacification consists of the manipulation
with Δ ∈ Δ and ∼
∈
︀⋃</p>
        <p>Δ.
of AF to AF○⋆ = ⟨℘(Ω ), ↝○⋆
⟩ w.r.t. Δ such that ↝○⋆ = ↝ ∖{ Δ′ ↝
 Θ | ∼
∈ Θ, Δ′ ⊆ Δ}
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. Δ.</p>
        <p>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:</p>
        <p>(∼ ) =  (∼ ) =  (∼ ) = U.</p>
        <p>3A 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.</p>
        <p>∼
∼</p>
        <p>∼
(a) AF1
∼
∼</p>
        <p>∼
(b) AF2</p>
        <p>However, one can always iterate the amendment operations of enforcement and pacification
to obtain a SCUP amendment.</p>
        <p>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</p>
        <p>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.</p>
        <p>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.</p>
        <p>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
coherent.</p>
        <p>4In 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.</p>
        <p>∅
∼migraine,
∼workedOut,
∼stress
(a) AF( 1) after SCUP enforce- (b) AF( 1) after SCUP evening
ment up
(c) AF( 1) after SCUP
pacification
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 }}.</p>
        <p>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.</p>
        <p>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.</p>
        <p>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.</p>
        <p>Thus, the following methodology for resolving incoherence in an NLP  has been introduced:
ifrst, 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  .</p>
      </sec>
      <sec id="sec-4-3">
        <title>4.3. NLP Amendments</title>
        <p>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
that  ○⋆ is obtained by application of the program amendment operation enforcement.
 Δ′ =  Δ ∪ {. } and there exists a rule  ∈  Δ with 
∈  −( ). In that case we also say
Enforcement in 
modifies 
=  Δ ∪   to  ○⋆ =  Δ′ ∪   such that
Evening Up in</p>
        <p>Let  be an atom such that there exists a set Θ ∈ Δ with ∼
∈ Θ, and
let Δ ∈ Δ be a set in Δ such that ∼ / ∈ Δ. Evening up in 
modifies 
 ○⋆ =  Δ′ ∪   such that  Δ′ =  Δ ∪ { } with  ( ) =  and  ( ) = Δ. In that case we
also say that  ○⋆ is obtained by application of the program amendment operation evening up.
Pacification in</p>
        <p>Let  ∈  Δ be a rule in  Δ such that  ( ) =  and ∼ an assumption
derivations of  from some Δ in  Δ. Pacification in  modifies 
in  Δ. Let, furthermore, Γ = {Γ ⊆  Δ | Δ ⊢Γ  } with Δ ∈  Δ be the set of all possible
=  Δ∪  to  ○⋆ =  Δ′ ∪ 
AFn is coherent. In this section, we will show how the execution of each amendment operation
in AF( ) can be implemented in</p>
        <p>accordingly.
 for some Δ ∈ Δ and some ∼ ∈</p>
        <p>Δ}, and let   = ∖
︀⋃
Let  Δ denote the set of rules corresponding to Δ ∈ SCUPS( ), i. e.,  Δ = ⋃︀ {Ψ | Δ ⊢Ψ
Δ be the set of all other rules in</p>
        <sec id="sec-4-3-1">
          <title>Corollary 3. For any incoherent NLP</title>
          <p>there exists an iterated program amendment
of the program amendment operation enforcement, evening up or pacification.
be the set of rules corresponding to the unique SCUP Δ in  1 (see Example 6).
Example 7 (Example 6 continued). Consider the NLP  1, again. Let  Δ = { 2,  5,  6,  7,  8}
⟨ , 
1, . . . ,  
⟩ s.t. 
⋆
ℱ = {soreThroat , headache, pollenSeason, lowEnergy , tempAbove37 }. With  1○
Adding the fact migraine. would then constitute a program enforcement operation in  1. Let
=  1 ∪
{migraine.}, we get</p>
          <p>( 1○⋆ ) = {ℱ ∪ { highTemp, fatigue, migraine, allergy , sunstroke}}.
 .</p>
          <p>Enforcement in</p>
          <p>is coherent.</p>
          <p>Definition 10.
programs ⟨
1
,
the SCUP amendment operation enforcement, evening up or pacification to
respective SCUP amendment operation to AF( ) w.r.t. Δ. Conversely, for every application of
AF( ) w.r.t. Δ, there
the mentioned SCUP amendment operation to AF( ).
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
enforcement, evening up or pacification w.r.t.
and 
Proposition 7. Let a program  , a preferred labelling  w.r.t. AF( ), a SCUP Δw.r.t. AF( )
be given, and let  ○⋆ be obtained by application of the program amendment operation
2, . . . ,</p>
          <p>⟩ s.t. 
Given a program  , an iterated program amendment of  is a sequence of
1 =  and for every 1 ≤  &lt;  ,  +1 is obtained by application

by removing at least one rule of every derivation Γ ∈ Γ , i. e.  Δ′ =  Δ∖  , where 
hitting set of Γ ( contains at least one rule of every set in Γ).5 In that case we also say that
is a
 ○⋆ is obtained by application of the program amendment operation pacification .
Δ. Then AF( ○⋆ ) constitutes an application of the
=  Δ ∪   to
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.</p>
          <p>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}}.</p>
          <p>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}}.</p>
          <p>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  Δ.</p>
          <p>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.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Using Amendments in Applications</title>
      <p>
        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 [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. 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 insuficiently 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. [
        <xref ref-type="bibr" rid="ref18 ref19 ref20">18, 19, 20</xref>
        ]). 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.
      </p>
    </sec>
    <sec id="sec-6">
      <title>6. Related Work</title>
      <p>
        The presented approach is similar to methods developed and investigated in the area of ASP
debugging. Essentially, debugging approaches in [
        <xref ref-type="bibr" rid="ref21 ref22 ref23">21, 22, 23</xref>
        ] 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 suficient 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 [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] technique can be
used to successively obtain the most suitable solution in interaction with the user.
      </p>
    </sec>
    <sec id="sec-7">
      <title>7. Discussion</title>
      <p>
        We have shown how argumentation theory can be used to establish coherence in an NLP. The
presented approach shows diferent 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 diferent 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 [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ], 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.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>T.</given-names>
            <surname>Eiter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Fink</surname>
          </string-name>
          , G. Sabbatini,
          <string-name>
            <given-names>H.</given-names>
            <surname>Tompits</surname>
          </string-name>
          ,
          <article-title>On properties of update sequences based on causal rejection</article-title>
          ,
          <source>Theory Pract. Log. Program. 2</source>
          (
          <year>2002</year>
          )
          <fpage>711</fpage>
          -
          <lpage>767</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>F.</given-names>
            <surname>Buccafurri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Faber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Leone</surname>
          </string-name>
          ,
          <article-title>Disjunctive logic programs with inheritance</article-title>
          , in: D. D.
          <string-name>
            <surname>Schreye</surname>
          </string-name>
          (Ed.),
          <source>Logic Programming: The 1999 International Conference</source>
          , Las Cruces, New Mexico, USA, November 29 - December 4,
          <year>1999</year>
          , MIT Press,
          <year>1999</year>
          , pp.
          <fpage>79</fpage>
          -
          <lpage>93</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Leite</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. M.</given-names>
            <surname>Pereira</surname>
          </string-name>
          ,
          <article-title>Generalizing updates: From models to programs</article-title>
          , in: J.
          <string-name>
            <surname>Dix</surname>
            ,
            <given-names>L. M.</given-names>
          </string-name>
          <string-name>
            <surname>Pereira</surname>
          </string-name>
          , T. C. Przymusinski (Eds.),
          <source>Logic Programming and Knowledge Representation</source>
          , Third International Workshop, LPKR '97,
          <string-name>
            <surname>Port</surname>
            <given-names>Jeferson</given-names>
          </string-name>
          , New York, USA, October
          <volume>17</volume>
          ,
          <year>1997</year>
          ,
          <string-name>
            <given-names>Selected</given-names>
            <surname>Papers</surname>
          </string-name>
          , volume
          <volume>1471</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>1997</year>
          , pp.
          <fpage>224</fpage>
          -
          <lpage>246</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>V. W.</given-names>
            <surname>Marek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Truszczynski</surname>
          </string-name>
          , Revision programming,
          <source>Theor. Comput. Sci</source>
          .
          <volume>190</volume>
          (
          <year>1998</year>
          )
          <fpage>241</fpage>
          -
          <lpage>277</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>C.</given-names>
            <surname>Sakama</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Inoue</surname>
          </string-name>
          ,
          <article-title>Updating extended logic programs through abduction</article-title>
          , in: M.
          <string-name>
            <surname>Gelfond</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          <string-name>
            <surname>Leone</surname>
          </string-name>
          , G. Pfeifer (Eds.),
          <source>Logic Programming and Nonmonotonic Reasoning</source>
          , 5th International Conference, LPNMR'99,
          <string-name>
            <surname>El</surname>
            <given-names>Paso</given-names>
          </string-name>
          , Texas, USA, December 2-
          <issue>4</issue>
          ,
          <year>1999</year>
          , Proceedings, volume
          <volume>1730</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>1999</year>
          , pp.
          <fpage>147</fpage>
          -
          <lpage>161</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. Y.</given-names>
            <surname>Foo</surname>
          </string-name>
          ,
          <article-title>Updating logic programs</article-title>
          , in: H.
          <string-name>
            <surname>Prade</surname>
          </string-name>
          (Ed.),
          <source>13th European Conference on Artificial Intelligence</source>
          , Brighton,
          <string-name>
            <surname>UK</surname>
          </string-name>
          ,
          <year>August</year>
          23-28
          <year>1998</year>
          , Proceedings., John Wiley and Sons,
          <year>1998</year>
          , pp.
          <fpage>403</fpage>
          -
          <lpage>407</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S.</given-names>
            <surname>Costantini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Intrigila</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Provetti</surname>
          </string-name>
          ,
          <article-title>Coherence of updates in answer set programming</article-title>
          ,
          <source>in: In Proc. of the IJCAI-2003 Workshop on Nonmonotonic Reasoning, Action and Change</source>
          ,
          <year>2003</year>
          , pp.
          <fpage>66</fpage>
          -
          <lpage>72</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>S.</given-names>
            <surname>Costantini</surname>
          </string-name>
          ,
          <article-title>On the existence of stable models of non-stratified logic programs</article-title>
          ,
          <source>Theory Pract. Log. Program. 6</source>
          (
          <year>2006</year>
          )
          <fpage>169</fpage>
          -
          <lpage>212</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>C.</given-names>
            <surname>Schulz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Toni</surname>
          </string-name>
          ,
          <article-title>On the responsibility for undecisiveness in preferred and stable labellings in abstract argumentation</article-title>
          ,
          <source>Artif. Intell</source>
          .
          <volume>262</volume>
          (
          <year>2018</year>
          )
          <fpage>301</fpage>
          -
          <lpage>335</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gelfond</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Lifschitz</surname>
          </string-name>
          ,
          <article-title>Classical negation in logic programs</article-title>
          and disjunctive databases,
          <source>New Gener. Comput</source>
          .
          <volume>9</volume>
          (
          <year>1991</year>
          )
          <fpage>365</fpage>
          -
          <lpage>386</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>T. C.</given-names>
            <surname>Przymusinski</surname>
          </string-name>
          ,
          <article-title>The well-founded semantics coincides with the three-valued stable semantics</article-title>
          ,
          <source>Fundam. Inform</source>
          .
          <volume>13</volume>
          (
          <year>1990</year>
          )
          <fpage>445</fpage>
          -
          <lpage>463</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>J.-H. You</surname>
            ,
            <given-names>L. Y.</given-names>
          </string-name>
          <string-name>
            <surname>Yuan</surname>
          </string-name>
          ,
          <article-title>Three-valued formalization of logic programming: is it needed?</article-title>
          ,
          <source>in: Proceedings of the ninth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems</source>
          ,
          <year>1990</year>
          , pp.
          <fpage>172</fpage>
          -
          <lpage>182</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>P. M. Dung</surname>
            ,
            <given-names>R. A.</given-names>
          </string-name>
          <string-name>
            <surname>Kowalski</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Toni</surname>
          </string-name>
          ,
          <article-title>Assumption-based argumentation</article-title>
          ,
          <source>in: Argumentation in artificial intelligence</source>
          , Springer,
          <year>2009</year>
          , pp.
          <fpage>199</fpage>
          -
          <lpage>218</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>C.</given-names>
            <surname>Schulz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Toni</surname>
          </string-name>
          ,
          <article-title>Labellings for assumption-based and abstract argumentation</article-title>
          ,
          <source>International Journal of Approximate Reasoning</source>
          <volume>84</volume>
          (
          <year>2017</year>
          )
          <fpage>110</fpage>
          -
          <lpage>149</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M.</given-names>
            <surname>Caminada</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Schulz</surname>
          </string-name>
          ,
          <article-title>On the equivalence between assumption-based argumentation and logic programming</article-title>
          ,
          <source>Journal of Artificial Intelligence Research</source>
          <volume>60</volume>
          (
          <year>2017</year>
          )
          <fpage>779</fpage>
          -
          <lpage>825</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>P.</given-names>
            <surname>Baroni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Giacomin</surname>
          </string-name>
          ,
          <article-title>On the role of strongly connected components in argumentation</article-title>
          ,
          <source>in: Proceedings of the 10th International Conference on Information Processing and Management of Uncertainty inKnowledge-Based Systems (IPMU</source>
          <year>2004</year>
          ), Perugia, Italy,
          <year>2004</year>
          , p.
          <fpage>1887</fpage>
          -
          <lpage>1894</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Thevapalan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Kern-Isberner</surname>
          </string-name>
          ,
          <article-title>Towards interactive conflict resolution in asp programs</article-title>
          , in: M.
          <string-name>
            <surname>Martinez</surname>
          </string-name>
          , I. Varcinczak (Eds.),
          <source>Proceedings of the 18th International Workshop on Non-Monotonic Reasoning, NMR</source>
          <year>2020</year>
          ,
          <year>2020</year>
          , pp.
          <fpage>29</fpage>
          -
          <lpage>36</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>S.</given-names>
            <surname>Modgil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Caminada</surname>
          </string-name>
          ,
          <article-title>Proof theories and algorithms for abstract argumentation frameworks</article-title>
          ,
          <source>in: Argumentation in artificial intelligence</source>
          , Springer,
          <year>2009</year>
          , pp.
          <fpage>105</fpage>
          -
          <lpage>129</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>M.</given-names>
            <surname>Caminada</surname>
          </string-name>
          ,
          <article-title>Argumentation semantics as formal discussion</article-title>
          ,
          <source>Journal of Applied Logics</source>
          <volume>4</volume>
          (
          <year>2017</year>
          )
          <fpage>2457</fpage>
          -
          <lpage>2492</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>D.</given-names>
            <surname>Walton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. C.</given-names>
            <surname>Krabbe</surname>
          </string-name>
          ,
          <article-title>Commitment in dialogue: Basic concepts of interpersonal reasoning</article-title>
          , SUNY press,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gebser</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Pührer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schaub</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Tompits</surname>
          </string-name>
          ,
          <article-title>A meta-programming technique for debugging answer-set programs</article-title>
          , in: D.
          <string-name>
            <surname>Fox</surname>
            ,
            <given-names>C. P.</given-names>
          </string-name>
          Gomes (Eds.),
          <source>Proceedings of the Twenty-Third AAAI Conference on Artificial Intelligence</source>
          ,
          <source>AAAI</source>
          <year>2008</year>
          , Chicago, Illinois, USA, July
          <volume>13</volume>
          -
          <issue>17</issue>
          ,
          <year>2008</year>
          , AAAI Press,
          <year>2008</year>
          , pp.
          <fpage>448</fpage>
          -
          <lpage>453</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>J.</given-names>
            <surname>Oetsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Pührer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Tompits</surname>
          </string-name>
          ,
          <article-title>Stepping through an answer-set program</article-title>
          , in: J. P. Delgrande, W. Faber (Eds.),
          <source>Logic Programming and Nonmonotonic Reasoning - 11th International Conference, LPNMR 2011</source>
          , Vancouver, Canada, May
          <volume>16</volume>
          -19,
          <year>2011</year>
          . Proceedings, volume
          <volume>6645</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2011</year>
          , pp.
          <fpage>134</fpage>
          -
          <lpage>147</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <surname>K. M. Shchekotykhin</surname>
          </string-name>
          ,
          <article-title>Interactive query-based debugging of ASP programs</article-title>
          , in: B.
          <string-name>
            <surname>Bonet</surname>
          </string-name>
          , S. Koenig (Eds.),
          <source>Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence, January 25-30</source>
          ,
          <year>2015</year>
          , Austin, Texas, USA, AAAI Press,
          <year>2015</year>
          , pp.
          <fpage>1597</fpage>
          -
          <lpage>1603</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>A.</given-names>
            <surname>Thevapalan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Kern-Isberner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Howey</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Beierle</surname>
          </string-name>
          , R. G. Meyer, M. Nietzke,
          <article-title>Decision support core system for cancer therapies using ASP-HEX</article-title>
          , in: K.
          <string-name>
            <surname>Brawner</surname>
          </string-name>
          , V. Rus (Eds.),
          <source>Proceedings of the Thirty-First International Florida Artificial Intelligence Research Society Conference, FLAIRS</source>
          <year>2018</year>
          , Melbourne, Florida, USA. May 21-23
          <year>2018</year>
          , AAAI Press,
          <year>2018</year>
          , pp.
          <fpage>531</fpage>
          -
          <lpage>536</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>