<!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>A ConArg-based Library for Abstract Argumentation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Stefano Bistarelli</string-name>
          <email>bista@dmi.unipg.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fabio Rossi</string-name>
          <email>rossi@dmi.unipg.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francesco Santini</string-name>
          <email>francesco.santini@dmi.unipg.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Mathematics and Computer Science</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We present ConArgLib, a C++ library implemented to help programmers solve some of the most important problems related to extension-based Abstract Argumentation. The library is based on ConArg, which exploits Constraint Programming and, in particular, Gecode, a toolkit for developing constraint-based systems and applications. Given a semantics, such problems consist, for example, in enumerating all the extensions, and checking the credulous or sceptical acceptance of an argument passed as parameter. The goal is to let programmers use the library to quickly develop programs on top of it, as, for instance, implementing decision-making procedures based on the strongest arguments.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        We present ConArgLib, a C++ library implemented to help programmers solve
some intractable problems related to extension-based Abstract Argumentation [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
The library is based on a revised search engine developed for ConArg [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], a
stand-alone solver submitted to ICCMA15 [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] and (in its revised version) to
ICCMA17 1, that is the International Competition on Computational Models of
Argumentation. The search engine exploits Gecode2, a toolkit for developing
constraint-based systems and applications.
      </p>
      <p>
        An Abstract Argumentation Framework (AAF ) is simply a pair xArgs; Ry
consisting of a set Args whose elements are called arguments, and of a
binary relation R on Args, called \attack" relation. For example, the framework
xta; b; cu; tRpa; bq; Rpb; cquy has three arguments labelled as a, b, and c, and there
is an attack between a and b, and b and c. A framework can be simply represented
as a directed graph, where nodes are arguments, and edges model attacks. The
sets of arguments (or extensions [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]) to be considered are then de ned under
di erent semantics, which represent di erent degrees of scepticism. Most of them
are based on both the notion of con ict-freedom (extensions must not contain
attacks), and the notion of defence: in the previous AAF, b attacks c, but a
defends c since it attacks b.
      </p>
      <p>Recent years have seen researchers drawing their attention on computational
aspects of Abstract Argumentation; in particular, on tools that are capable to
solve classical problems, as, given a semantics, i) the enumeration of extensions
satisfying it, ii) the veri cation whether a subset of arguments satis es it, iii)
and iv) the sceptical and credulous acceptance of an argument (if an argument
belongs to resp. all or at least one of the extensions), v) the existence of at least
one extension, and nally vi) the non-emptiness of at least one extension, i.e., if
di erent from H.</p>
      <p>
        In addition to AAFs [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], ConArgLib also solves a weighted extension of them
we present in [
        <xref ref-type="bibr" rid="ref2 ref6">2, 6</xref>
        ]: semiring-based Weighted Abstract Argumentation
Frameworks (simply WAAFs in the following), where attacks are associated with a
value (taken an algebraic structure, i.e., a c-semiring [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]) representing e.g., a
strength score or an uncertainty degree. Then, in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] we study two di erent
relaxations of WAAFs: the rst one is related to the new weighted defence we
propose in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], by checking the di erence between the composition of inward and
outward attack-weights. The second one is related to how much inconsistency
we are willing to tolerate inside an extension; such an amount is computed by
aggregating the weights of the attacks between any two arguments inside an
extension. These relaxations are correlated: allowing a small con ict may lead
to have more arguments into an extension, and consequently result in a stronger
or weaker defence.
      </p>
      <p>
        To code the library we take advantage of Constraint Programming (CP) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]
since the problems i-vi can be intractable [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], depending on the semantics.
Despite the plethora of aforementioned solvers, as far as we know, ConArgLib
represents the rst attempt to provide a fast implementation of a library to
support the solution of problems in Abstract Argumentation. The end programmer
can use it to directly develop her own applications, instead of interfacing to an
external solver: as an example, solving the existence of a non-empty extension,
and the credulous/sceptical acceptance of arguments can be used to set-up a
decision-making procedure by ranking the arguments, and then to select the
decision supported by the strongest ones.
      </p>
      <p>
        The paper is organised as follows: in Sec. 2 we provide the necessary
background on Dung's AAFs [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], and c-semirings [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], i.e., the general algebraic
structure we use to parametrise weights in WAAFs in [
        <xref ref-type="bibr" rid="ref2 ref6">2, 6</xref>
        ], whose presentation
concludes this section. In Sec. 3 we provide a description of ConArgLib. Then,
in Sec. 4 we report some implementation details to explain the engine of the
library. Finally, in Sec. 5 we wrap up the paper with general conclusions and
ideas about future work.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Background</title>
      <p>
        This section is structured in three parts: rst we collect the main background
notions about AAFs [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] (Sec. 2.1), then we introduce c-semirings (Sec. 2.2),
and nally semiring-based WAAFs (Sec. 2.3).
2.1
In his pioneering work [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], Dung proposed Abstract Frameworks for
Argumentation, where an argument is an abstract entity whose role is solely determined
by its relations to other arguments:
De nition 1 (Argumentation Frameworks [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). An Abstract
Argumentation Framework (AAF) is a pair xArgs; Ry of a set Args of arguments and
a binary relation R on Args, called attack relation. @ai; aj P Args, aiR aj (or
Rpai; aj q) means that ai attacks aj (R is asymmetric).
      </p>
      <p>
        An argumentation semantics is the formal de nition of a method (either
declarative or procedural) ruling the argument evaluation process. In the
extension-based approach, a semantics de nition speci es how to derive from an AAF
a set of extensions, where an extension B of an AAF xArgs; Ry is simply a subset
of Args. In Def. 2 we de ne the rst semantics, which is at the basis of all the
others:
De nition 2 (Con ict-free [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). A set B  Args is con ict-free i no two
arguments a and b in B exist such that a attacks b.
      </p>
      <p>
        All the other semantics presented in this section rely (explicitly or implicitly)
upon the concept of defence:
De nition 3 (Defence [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). An argument c is defended by a set B  Args
(or B defends b) i for any argument a P Args, if Rpa; cq then Db P B s.t.,
Rpb; aq.
      </p>
      <p>
        An admissible set of arguments according to Dung must be a con ict-free set
which defends all its elements. Formally:
De nition 4 (Admissible [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). A con ict-free set B  Args is an admissible
set i each argument in B is defended by B.
      </p>
      <p>
        The following four de nitions elaborate on con ict-freedom and admissibility:
De nition 5 (Complete [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). An admissible set B  Args is a complete
extension i each argument which is defended by B is in B.
      </p>
      <p>
        De nition 6 (Preferred [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). A preferred extension is a maximal (w.r.t. set
inclusion) admissible set of Args.
      </p>
      <p>
        The de nition of stage [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] and semi-stable [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] semantics is based on the
idea of prescribing the maximisation not only of the arguments included in an
extension (as for the preferred extension), but also of those attacked by it:
De nition 7 (Stage [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] and semi-stable [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]). Given a set B  Args , the
range of B is de ned as B Y B , where B ta P Args : B attacks au. B is a
stage extension i is a con ict-free set with maximal (wrt. set inclusion) range.
B is semi-stable extension i B is a complete extension with maximal (w.r.t. set
inclusion) range.
      </p>
      <p>
        Finally, the stable semantics corresponds to the most stringent among all:
De nition 8 (Stable [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). A con ict-free set B  Args is a stable extension
i for each argument which is not in B, there exists an argument in B that
attacks it.
      </p>
      <p>
        The last three semantics, i.e., the grounded [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], ideal [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], and eager [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ],
enforce a sceptical approach: these semantics that always yields exactly one
extension.
      </p>
      <p>
        De nition 9 (Grounded [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]). The grounded extension is the minimal (w.r.t.
set inclusion) complete extension [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        De nition 10 (Ideal [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). B  Args is ideal i B is admissible and @B1 s.t.
B1 is preferred, B  B1. The ideal extension is the maximal (w.r.t. set inclusion)
ideal set.
      </p>
      <p>
        De nition 11 (Eager [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]). B  Args is eager i B is admissible and @B1
s.t. B1 is semi-stable, B  B1. The eager extension is the maximal (w.r.t. set
inclusion) eager set.
      </p>
      <p>
        If P tcf ; adm; com; prf ; sst ; stg ; stbu respectively stand for con ict-free and
admissible sets, complete, preferred, semi-stable, stage, and stable semantics,
and pF q is the set of all the extensions satisfying on a framework F , then
we have stb pF q  sst pF q  prf pF q  com pF q  adm pF q  cf pF q, and
stb pF q  stg pF q  cf pF q. Moreover, if grd, ide, and eag are respectively the
grounded, ideal, and eager extension, then we have that grd  ide  eag [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>Consider the AAF F xA; Ry in Fig. 1, with A ta; b; c; d; eu and R
tpa; bq; pc; bq; pc; dq; pd; cq; pd; eq; pe; equ. For example we have that adm pF q
corresponds to tH; tau; tcu; tdu; ta; cu; ta; duu, com pF q ttau; ta; cu; ta; duu, stb pF q
tta; cu; ta; duu, stb pF q tta; duu, and grd ttauu.
2.2</p>
      <p>
        C-semirings
C-semirings [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] are commutative (b is commutative) and idempotent semirings
(i.e., ` is idempotent), where ` de nes a complete lattice: every subset of
elements have a least upper bound, or lub, and a greatest lower bound, or glb.
De nition 12 (C-semirings [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]). A commutative semiring is a tuple S
xS; `; b; K; Jy such that S is a set, J; K P S, and `; b : S S ÝÑ S are
binary operators making the triples xS; `; Ky and xS; b; Jy commutative monoids
(semi-groups with identity), satisfying i) @s; t; u P S:s b pt ` uq ps b tq ` ps b uq
(distributivity), and ii) @s P S:sbK K (annihilator). If @s; t P S:s`psbtq s,
S is said to be absorptive, and consequently ` is idempotent. In short, c-semirings
are de ned as commutative and absorptive semirings.
      </p>
      <p>
        The idempotency of ` leads to the de nition of a partial ordering ¤S over
the set S (S is a poset). Such partial order is de ned as s ¤S t if and only
if s ` t t, and ` returns the lub of s and t. This intuitively means that t
is \better" than s. Some more properties can be derived on c-semirings [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]: i)
both ` and b are monotone over ¤S, ii) b is intensive (i.e., s b t ¤S s), and
iii) xS; ¤Sy is a complete lattice. K and J are respectively the bottom and top
elements of such lattice. When also b is idempotent, i) ` distributes over b, ii)
b returns the glb of two values in S, and iii) xS; ¤Sy is a distributive lattice.
      </p>
      <p>Some well-known instances of c-semirings in the literature are: Sboolean
xtfalse; trueu; _; ^; false; truey3, Sfuzzy xr0; 1s; max; min; 0; 1y, Sbottleneck
xR Y t 8u; max; min; 0; 8y, Sprobabilistic xr0; 1s; max; ; 0; 1y (or Viterbi
semiring), Sweighted xR Y t 8u; min; ; 8; 0y.</p>
      <p>
        Although c-semirings have been historically used as monotonic structures,
the need of removing values has raised in local consistency algorithms [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. A
solution comes from residuation theory [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], which allows for obtaining a division
operator that represents a \weak" inverse of b.
      </p>
      <p>De nition 13 (Division). A c-semiring S is residuated if the set tx P S |
t b x ¤ su admits a maximum for all elements s; t P S, denoted s m t.</p>
      <p>Since a complete4 tropical-semiring is also residuated, we have that all the
classical instances of c-semiring presented above are residuated, i.e., each element
in S admits an \inverse", which can be also unique:
De nition 14 (Unique invertibility). If S is absorptive and invertible, then
it is uniquely invertible i it is cancellative, i.e., @s; t; u P S:ps b u t b uq ^ pu
0q ñ s t.</p>
      <p>Since all the previously listed instances of c-semirings are cancellative, they
are uniquely invertible as well. For instance,
mintx | b</p>
      <p>x ¥ au
maxtx | minpb; xq ¤ au
#0
a</p>
      <p>
        if b ¥ a
b if a ¡ b
#1 if b ¤ a
a if a   b
weighted
fuzzy
3 Boolean c-semirings can be used to model crisp problems and classical
Argumentation [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
4 S is complete if it is closed with respect to in nite sums, and the distributivity law
holds also for an in nite number of summands.
2.3
      </p>
      <p>
        Semiring-based Weighted AAFs
In the beginning of this section we rephrase some of the classical de nitions given
in Sec. 2.1, with the purpose of parametrising them with the notion of weighted
attack and c-semiring. The following de nition reshapes the notion of WAAF
into semiring-based WAAF [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], called WAAF S:
De nition 15 (Semiring-based WAAF). A semiring-based Weighted AAF
(WAAF S) is a quadruple xArgs; R; W; Sy, where S is a c-semiring xS; `; b; K; Jy,
Args is a set of arguments, R the attack binary-relation on Args, and W : Args
Args ÝÑ S is a binary function. Given a; b P Args and Rpa; bq, then W pa; bq s
means that a attacks b with a weight s P S. Moreover, we require that Rpa; bq i
W pa; bq  S J.
      </p>
      <p>In Fig. 2 we provide an example of a weighted interaction graph describing
the WAAF S de ned by Args ta; b; c; d; eu, R tpa; bq; pc; bq; pc; dq; pd; cq; pd; eq;
pe; equ, with W pa; bq 7; W pc; bq 8; W pc; dq 9; W pd; cq 8; W pd; eq
5; W pe; eq 6, and S xR Y t8u; min; ; 8; 0y (i.e., the weighted semiring).</p>
      <p>
        Therefore, each attack is associated with a semiring value that represents the
\strength" of an attack between two arguments. We can consider the weights
in Fig. 2 as supports to the associated attack, as similarly suggested in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. A
semiring value equal to the top element of the c-semiring J represents a no-attack
relation between two arguments.
      </p>
      <p>In Def. 16 we de ne the attack strength for a set of arguments that attacks
an argument, a di erent set of arguments, or an argument that attacks a set of
arguments; the former and the latter are what we need to de ne w-defence. We
use Â to indicate the set-wise version of b:</p>
      <p>xArgs; R; W; Sy,
De nition 16 (Attacks to/from sets of arguments). Given a WAAF S,
WF</p>
      <p>bPB;dPD
{ a set of arguments B attacks an argument a with a weight of k P S if
W pB; aq â W pb; aq k.</p>
      <p>bPB
{ an argument a attacks a set of arguments B with a weight of k P S if
W pa; Bq â W pa; bq k.</p>
      <p>bPB
{ a set of arguments B attacks a set of arguments D with a weight k P S if
W pB; Dq â W pb; dq k.</p>
      <p>8
9
a
7</p>
      <p>8
b
c
d
5
e
6</p>
      <p>For example, looking at Fig. 2 we have that W pta; cu; bq 15, W pc; tb; duq
17, and W pta; cu; tb; duq 24.</p>
      <p>
        We are now ready to de ne our version of weighted defence, i.e., w-defence:
De nition 17 (w-defence (Dw) [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]). Given a WAAF S, WF xArgs; R; W; Sy,
B  Args w-defends b P Args from a P Args s.t. Rpa; bq, i W pa; B Y tbuq ¥S
W pB; aq; B w-defends b i it defends b from any a s.t. Rpa; bq.
      </p>
      <p>
        De nition 17 can be relaxed to -defence, which is parametrised on a
thresholdvalue : such is used to consider arguments that are not \fully" w-defended [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ],
i.e., for which W pa; B Y tbuq §S W pB; aq:
De nition 18 ( -defence (D ) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]). Given xArgs; R; W; S xS; `; b; K; Jyy
and P S, B  Args -defends b P Args i @a P Args such that Rpa; bq we have
that W pB; aq J and
      </p>
      <sec id="sec-2-1">
        <title>W pa; B Y tbuq m W pB; aq ¥S</title>
        <p>Considering the example in Fig. 2, for instance tdu 1-defends d from c (i.e.,
1):</p>
      </sec>
      <sec id="sec-2-2">
        <title>W pc; tduq W ptdu; cq ¤ 1;</title>
        <p>since 9 8 1 and 1 ¤ 1.</p>
        <p>Having de ned D as a relaxation of Dw, we can rede ne all the classical
semantics in Sec. 2.1 by exploiting both the notion of i) an inconsistency amount
inside an extension (to be tolerated), and ii) D .</p>
        <p>In Def. 19 we rede ne con ict-free sets: con icts can be now part of the
solution up to a cost-threshold . They are now called -con ict-free sets:
De nition 19. ( -con ict-free sets) Given a WAAF S, WF
a set of arguments B  Args is -con ict-free i W pB; Bq ¥S .</p>
        <p>With respect to the WAAF S in Fig. 2, while the set ta; b; cu is not con ict-free
in the crisp version of the problem (since it includes the attacks between a and
b, and between c and b), ta; b; cu is instead 15-con ict-free because W pa; bq
W pc; bq 15. For instance, ta; b; cu is also 16-con ict-free because it is a
15con ict-free (15 ¥S 16 in the weighted semiring).5 Therefore, in -con ict-free
extensions we tolerate an internal inconsistency-amount better than .</p>
        <p>D leads to the de nition of -admissible sets.</p>
        <p>De nition 20. ( -admissible sets) Given WF xArgs; R; W; Sy, an
con ict-free set B  Args is -admissible i the arguments in B are -defended
by B from the arguments in ArgszB.
5 In the weighted semiring, ¤S is equivalent to ¥ over Real numbers, while in the
probabilistic and fuzzy semirings, ¥S corresponds to ¥ over Real numbers in the
interval r0::1s.</p>
        <p>For instance, the set td; eu in Fig. 2 is 111-admissible, since it is 11-con
ictfree, and d defends itself (and the whole td; eu) from c by paying a penalty of
9 8 ¤ 1.</p>
        <p>Four semantics that re ne -admissibility are introduced from Def. 21 to
Def. 23:
De nition 21 ( -complete). Given xArgs; R; W; Sy, an -admissible B 
Args is -complete i each argument b P Args that is -defended by B and s.t.
W pB Y tbu; B Y tbuq ¥S is in B (i.e., b P B).</p>
        <p>
          For instance, the set ta; du in Fig. 2 is complete according to [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] (i.e., not
considering weights), but it is not 00-complete because d is not able to w-defend
ta; du from c. However, ta; du is 01-complete by considering the weighted semiring
and allowing 1. Note that ta; du also 1-defends argument e, but ta; d; eu is
not 01-complete if we keep 0: bringing e inside would lead to an internal
con ict of W pd; eq W pe; eq 11.
        </p>
        <p>De nition 22 ( -preferred). An -preferred extension is a maximal (with
respect to set inclusion) -admissible subset of Args.</p>
        <p>
          Still considering Fig. 2, ta; cu and ta; du are the two preferred extensions
according to [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] (i.e., not considering weights). However, ta; cu is the only
00preferred extension, while tta; cu; ta; duu is the set of 01-preferred extensions.
        </p>
        <p>Finally, we de ne -stable semantics.</p>
        <p>De nition 23. ( -stable semantics) Given xArgs; R; W; Sy, an -admissible
set B is also an -stable extension i @a R B; Db P B:W pb; aq J, and B Y tau
is not -admissible.</p>
        <p>For example, considering the problem in Fig. 2 as unweighted (i.e., as a
classical AAF), the set ta; du corresponds to the only stable extension. However,
considering weights, this set is not 00-stable, because W pc; dq §S W pta; du; cq,
i.e., 9 ¦ 8. However, it is 01-stable, since W pc; dq m W pta; du; cq 9 8 ¤ 1
satis es 1. Thus, in such example there is no 00-stable extension.</p>
        <p>
          When J and J, JJ-semantics are equivalent to their classic
counterpart in Sec. 2.1 [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ].
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>The Library</title>
      <p>ConArgLib is available for Linux 64bit platform, and it has been compiled with
gcc 4.9.2 and glibc 2.19 (using Debian 8). The pre-compiled package is freely
available online.6 ConArgLib sits on the layer o ered by Gecode 5.1.0, which
implements the search engine. Given a semantics , and the set of extensions
pF q that satisfy over a framework F , the decision problems solved by
ConArgLib are:</p>
      <sec id="sec-3-1">
        <title>6 http://www.dmi.unipg.it/conarg/.</title>
        <p>Enumeration. Given F xArgs; Ry and a semantics , this problem consists
in enumerating all B P pF q.</p>
        <p>Credulous Acceptance. Given F xArgs; Ry, a semantics , and an
argument a P Args, a is credulously accepted if DB P pF q; a P B.</p>
        <p>Sceptical Acceptance. Given F xArgs; Ry, a semantics , and an argument
a P Args, a is sceptically accepted if @B P pF q; a P B.</p>
        <p>Veri cation. Given F xArgs; Ry, a semantics , and a subset of arguments</p>
        <p>B, the veri cation of B consists in checking if B P pF q.</p>
        <p>Existence. Given F xArgs; Ry and a semantics , this problem corresponds
to checking whether pF q H.</p>
        <p>Non-emptiness. Given F xArgs; Ry and a semantics , this problem
corresponds to checking whether there is any B P pF q for which B H.</p>
        <p>
          The complexity of extension enumeration is reported in [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]. The complexity
of the other previouslt presented problems, e.g., credulous/sceptical acceptance,
can be instead found in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], [
          <xref ref-type="bibr" rid="ref16">16</xref>
          ], and [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ].
        </p>
        <p>We now introduce the functions we can use to solve each of the six problems
previously introduced. Besides \Admissible", each of the four following functions
can also be called by replacing it with \Con ictFree", \Complete", \Preferred",
\SemiStable", \Stable", \Grounded", \Ideal", \Stage", and \Eager"; hence the
library implements all the classical semantics in Sec. 2.1:
s e t &lt;t S o l u t i o n &gt; GetAdmissibleEnum ( ) ;
s t r i n g GetAdmissibleCred ( s t r i n g &amp;sArg ) ;
s t r i n g G e t A d m i s s i b l e S c e p t ( s t r i n g &amp;sArg ) ;
b o o l I s A d m i s s i b l e ( v e c t o r &lt;s t r i n g &gt; &amp;vecExtToCheck ) ;
s e t &lt;t S o l u t i o n &gt; G e t A d m i s s i b l e E x i s t ( ) ;
s e t &lt;t S o l u t i o n &gt; NonEmptinessAdmissible ( ) ;</p>
        <p>
          In addition, other functions have been coded to solve the relaxed framework
presented in [
          <xref ref-type="bibr" rid="ref2 ref6">2, 6</xref>
          ]. It is then possible to pass as input parameters the chosen
semiring (see in the following for implemented ones), the amount of internal
relaxation (dAlpha), and the amount of relaxation on the defence (dGamma). All
the following functions are presented for the admissible semantics, but by
replacing \Admissible" sub-strings with \Con ictFree", \Complete", \Preferred",
\Stable", or \Grounded", it is possible to nd a solution for the corresponding
semantics (all the semantics in Sec. 2.3):
s e t &lt;t S o l u t i o n &gt; GetAdmissibleEnum ( double dAlpha , double
dGamma) ;
s e t &lt;t S o l u t i o n &gt; G e t A d m i s s i b l e E x i s t ( double dAlpha , double
dGamma) ;
s t r i n g GetAdmissibleCred ( s t r i n g &amp;sArg , double dAlpha , double
dGamma) ;
s t r i n g G e t A d m i s s i b l e S c e p t ( s t r i n g &amp;sArg , double dAlpha , double
dGamma) ;
bool I s A d m i s s i b l e ( v e c t o r &lt;s t r i n g &gt; &amp;vecExtToCheck , double dAlpha
, double dGamma) ;
s e t &lt;t S o l u t i o n &gt; NonEmptinessAdmissible ( double dAlpha , double
dGamma) ;
        </p>
        <p>The following semirings are at the moment de ned and implemented in
ConArgLib: xtfalse; trueu; _; ^; false; xr0; 1s; max; min; 0; 1y, and xR Y t 8u;
min; ; 8; 0y.
#define CL SRTYPE BOOLEAN 0
#define CL SRTYPE FUZZY 1
#define CL SRTYPE WEIGHTED 2</p>
        <p>The following calls are instead used to manage the library:
bool L o a d F i l e ( s t r i n g &amp;sInputFileName ) ;
void P r i n t S o l ( s e t &lt;t S o l u t i o n &gt; p s e t S o l ) ;
void F r e e S o l ( s e t &lt;t S o l u t i o n &gt; p s e t S o l ) ;
bool E n g i n e I s I n i t i a l i z e d ( ) ;
int G e t So l u t i on s C o u nt ( s e t &lt;t S o l u t i o n &gt;
double GetFuzzyBestValue ( ) ;
double GetFuzzyWorstValue ( ) ;
double GetWeightedBestValue ( ) ;
double GetWeightedWorstValue ( ) ;
p s e t S o l ) ;</p>
        <p>LoadFile is used to load the description of an AAF by passing a le path.
For classical AAFs we use ASPARTIX format (apx ), which corresponds to a
text le with a list of arguments, expressed as \arg(argumentName).", and a
list of attacks between them, e.g., \att(argument1Name, argumentName2).".
To represent WAAFs as proposed in Sec. 2.3, we have modi ed the apx format
into wapx : the list of arguments is expressed in the same way, while attacks are
associated with a score, i.e., att(argumentName1, argumentName2):-score.</p>
        <p>PrintSol is used to print all the solutions: hence, it is meaningful for the
enumeration, existence, and non-emptiness problems.</p>
        <p>FreeSol deallocates the passed set of solutions from dynamic memory.</p>
        <p>EngineIsInitialized checks if the search engine has been correctly
initialised; for instance, it checks whether a semiring type has been already selected.</p>
        <p>GetSolutionsCount returns the number of solutions for the last solved
problem (it is meaningful in case of enumeration).</p>
        <p>GetFuzzyBestValue and GetFuzzyWorstValue can be used by the
programmer to respectively retrieve the top and bottom elements in fuzzy semiring
(see Sec. 2.2). The same holds for GetWeightedBestValue and
GetWeightedWorstValue, w.r.t. the weighted semiring.</p>
        <p>The following group of functions collects the functionalities to con gure how
solutions are found and printed. SetShowSolutions sets if the set of solutions
is printed on the screen or silenced, besides being saved in memory.</p>
        <p>SetRequestedSolutions stops the search as soon as a given number (input
parameter) of solutions is found, while SetRequestedAllSolutions returns all
the found solutions (these functions are meaningful only for the enumeration
problem).</p>
        <p>SetStatistics prints the search statistics obtained from Gecode: speci cally,
it returns the number of failed nodes in search tree, the number of nodes
expanded, the maximum depth during search, the number of restarts, and, nally,
the number of posted no-goods.</p>
        <p>SetProboOutput sets the output of requested problems to be compliant
with Probo7, which is the benchmark framework used for computational
argumentation competitions (i.e., ICCMA15 and ICCMA17).</p>
        <p>SetPercentOutput also prints the rate of appearance (as percentage) of
each argument in the current solutions. It can be used in combination with
solving the enumeration problem over any semantics, in order to understand the
degree of acceptability of each argument.</p>
        <p>SetSilentMode trims part of the output, e.g., removes messages concerning
the kind of problem being solved.</p>
        <p>All these function are also replicated with \Get" instead of \Set" in order to
know how parameters are currently set. Finally, ResetDefaults restores them
to the initial values (e.g., output is not silenced by default).
void S e t S h o w S o l u t i o n s ( bool bFlag ) ;
void S e t R e q u e s t e d S o l u t i o n s ( long lRS ) ;
void S e t R e q u e s t e d A l l S o l u t i o n s ( ) ;
void S e t S t a t i s t i c s ( bool bStat ) ;
void SetProboOutput ( bool bProbo ) ;
void SetPercentOutput ( bool bPercent ) ;
void S e t S i l e n t M o d e ( bool bSilentMode ) ;
void SetShowSolutionsCount ( bool bShowSolutionsCount ) ;
bool GetShowSolutions ( ) ;
long G e t R e q u e s t e d S o l u t i o n s ( ) ;
bool G e t S t a t i s t i c s ( ) ;
bool GetProboOutput ( ) ;
bool GetPercentOutput ( ) ;
bool GetSilentMode ( ) ;
void R e s e t D e f a u l t s ( ) ;</p>
        <p>An example of a program using ConArgLib is shown in Fig. 3: the code nds
all the admissible sets and prints them on the screen. The example in Fig. 4 shows
instead how to verify that the set ta; du is a 01-stable extension (see Def. 23)
according to the weighted semiring.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4 Implementation Details</title>
      <p>In this section we overview some technical details of the search engine, that is
how we have implemented constraints and heuristics. Gecode supports the
development of new constraints, branching strategies, and search engines. Constraints
can be de ned over Integers, Booleans, Sets, and Floats. In the following, args[]
is the array of Boolean variables (i.e., instances of the class BoolVar ) that
represents the whole set of arguments Args ; Boolean variables can only take 0 or
1 values (i.e., two integer values). An array of Boolean variables can be
created with BoolVarArray args[](space, |Args |, 0, 1), where space is the associated
search-space.</p>
      <sec id="sec-4-1">
        <title>7 https://sourceforge.net/projects/probo/.</title>
        <p>#i n c l u d e "AFEngine . h"
AFEngine a f = new AFEngine ( ) ;
s t r i n g sFileName1 = " f i l e . apx " ;
af &gt;L o a d F i l e ( sFileName1 ) ;
s e t &lt;t S o l u t i o n &gt; t s e t S o l = af &gt;GetAdmissibleEnum ( ) ;
af &gt;P r i n t S o l ( t s e t S o l ) ;
cout &lt;&lt; af &gt;G e tS o l u t i on s C o u nt ( t s e t S o l ) &lt;&lt; " s o l u t i o n ( s )
found " &lt;&lt; e n d l ;
af &gt;F r e e S o l ( t s e t S o l ) ;</p>
        <p>Constraints for modelling con ict-free-sets are based on the rst order logic
formula @a; b P Aarg s.t. Rpa; bq, then a ñ b (¡¡ is the implication operator
in Gecode):
r e l ( space , a r g s [ i ] &gt;&gt; ! a r g s [ j ] )</p>
        <p>The procedure to enforce the constraints for modelling admissibility rst
sets con ict-free constraints, and then checks if at least one defender (c) of each
attacker (b) of a is true, i.e., taken in an extension together with a: @a; b; c P Aarg
then a ñ  p  cq. In this case, we deal with two di erent cases: when
pb;aqPR pc;bqPR
an argument args[i] is attacked but has no defender, then it has not to be taken
(IRT EQ imposes equality, with 0 in this case):
r e l ( space , a r g s [ i ] , IRT EQ , 0 , IPL SPEED )</p>
        <p>Otherwise, if an argument has at least one defender, then we use the clause
constraint, where c is a Boolvar array that represents all the arguments ci that
defend a from each attacker b, and such a clause constraints models a _  ci
ciPc
c l a u s e ( s p a c e , BOT AND, a , c , 0 )
elled as</p>
        <p>IPL SPEED is a Gecode ag set to optimise propagation for execution
performance, at the expense of memory use.</p>
        <p>Constraints for stable extensions are obtained by imposing admissible
constraints and enforcing the formula @a P Args , then a ô  b. This is
modpb;aqPR
r e l ( s p a c e , m bvaArgs [ i ] , IRT EQ , 1 )
in case args[i] is never attacked (then it has to be taken). Otherwise, if args[i]
has one or more attackers the constraint is
l i n e a r ( s p a c e , a , x , IRT GR , 0 ) ;</p>
        <p>Given a rargsris; b1; : : : ; bns, where bi; : : : bn are the n attackers of args[i],
the previous constraint enforces argsris x1 b1 xn bn ¡ 0; in this case,
x is a vector of weights all set to 1 (with size n 1). Hence, either an argument
a or at least one of its attackers bi have to be true.</p>
        <p>We now introduce how we enumerate and verify preferred extensions. First
of all, we set the constraints to nd admissible sets, including constraints for
con ict-freedom. Afterwards, we use the following branching strategy:
branch ( s p a c e , a r g s , INT VAR DEGREE MAX( ) , INT VALUES MAX ( ) ) ;</p>
        <p>During search, at each step such a strategy selects the variable with the
highest degree (i.e., the number of dependant propagators) and tries to assign it
to true. This last condition automatically leads to nding a preferred extension:
Proposition 1 (Branching for preferred). By imposing only constraints to
nd admissible sets, a branching strategy INT VALUES MAX always terminates
with a preferred extension.</p>
        <p>This approach incrementally builds an extension by adding as more
(\admissible") arguments as possible: eventually, it is not possible to nd an admissible
set that includes it.</p>
        <p>
          In order to enumerate all preferred extensions, it is enough to i) launch the
search using Prop. 1, ii) record the obtained solution, iii) remove it from the set
of possible future solutions, and iv) restart search. The i-iv loop is terminated
when no further solution is found. To verify if a given set B is a preferred
extension, we set admissible constraints, and then we use Prop. 1 by rst assigning to
true all the arguments in B. As soon as we nd a solution di erent from B, then
we obtain that B is not a preferred extension.
Constraints for WAAFs in Sec. 2.3 are similar to the ones proposed in this
section for classical Abstract Argumentation [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]: in addition, we add some more
constraints to limit the internal inconsistency and the di erence between attack
and defence weights to be less than resp. and . In the following piece of code,
the rst constraint binds extensionCost to the aggregation (parametric w.r.t.
the chosen semiring) of the weights of all attacks \active" in the considered set
of arguments. Then, still depending on the semiring, such a value is compared
against :
r e l ( space , e x t e n s i o n C o s t == s e m i r i n g T i m e s O p e r a t i o n (
a c t i v e A t t a c k s ) ) ;
i f ( m s t r u c t &gt;GetSemiringType ( ) == WEIGHTED)
r e l ( space , e x t e n s i o n C o s t , FRT LQ, alpha ) ;
i f ( m s t r u c t &gt;GetSemiringType ( ) == FUZZY)
r e l ( space , e x t e n s i o n C o s t , FRT GQ, alpha ) ;
        </p>
        <p>Concerning -defence (see Def. 18), the of all the attackers (A) and
defenders (B) of an argument is computed and compared against . Expr posts a
Boolean expression and returns its value, which is then checked to be true:
expr ( space , SemiringXAIsGammaWorseEqualThanXB (B, A) ) ;
i f ( m s t r u c t &gt;GetSemiringType ( ) == WEIGHTED)
expr ( space , ( SemiringXOperation (B) SemiringXOperation (A) ) &lt;=
gamma) ;
i f ( m s t r u c t &gt;GetSemiringType ( ) == FUZZY)
expr ( space , ( SemiringXOperation (B) SemiringXOperation (A) ) &gt;=
gamma) ;
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>We have presented ConArgLib, a C++ software library designed to o er to the
end user functions to solve classical tasks in Abstract Argumentation: extension
enumeration, existence, and veri cation, and credulous/sceptical acceptance of
arguments. The engine at the core of the library o ers good performance, and
is the rst attempt to provide such functionalities as a software library.</p>
      <p>
        In the future, we plan to extend the library by providing higher-level
functions, e.g., to check if two frameworks are equivalent on some given semantics.
Moreover, we would like to implement a recent di erent de nition of grounded
semantics for semiring-based WAAFs [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], which, contrarily to all the other
proposals in the literature for Weighted Argumentation Frameworks, always returns
one extension as result, as in the classical formulation [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Finally, we will
implement coalition-based extensions [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and voting systems as in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Benedetti</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>From argumentation frameworks to voting systems and back</article-title>
          .
          <source>Fundam. Inform</source>
          .
          <volume>150</volume>
          (
          <issue>1</issue>
          ),
          <volume>25</volume>
          {
          <fpage>48</fpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santini</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A relaxation of internal con ict and defence in weighted argumentation frameworks</article-title>
          .
          <source>In: European Conference on Logics in Articial Intelligence, JELIA. LNCS</source>
          , vol.
          <volume>10021</volume>
          , pp.
          <volume>127</volume>
          {
          <fpage>143</fpage>
          . Springer (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santini</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Conarg: A constraint-based computational framework for argumentation systems</article-title>
          .
          <source>In: International Conference on Tools with Arti cial Intelligence</source>
          . pp.
          <volume>605</volume>
          {
          <fpage>612</fpage>
          . ICTAI '11, IEEE Computer Society (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santini</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Coalitions of arguments: An approach with constraint programming</article-title>
          .
          <source>Fundamenta Informaticae</source>
          <volume>124</volume>
          (
          <issue>4</issue>
          ),
          <volume>383</volume>
          {
          <fpage>401</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Montanari</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Semiring-based constraint satisfaction and optimization</article-title>
          .
          <source>Journal of the ACM</source>
          <volume>44</volume>
          (
          <issue>2</issue>
          ),
          <volume>201</volume>
          {
          <fpage>236</fpage>
          (
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santini</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A collective defence against grouped attacks for weighted abstract argumentation frameworks</article-title>
          .
          <source>In: Florida Arti cial Intelligence Research Society Conference, FLAIRS</source>
          . pp.
          <volume>638</volume>
          {
          <fpage>643</fpage>
          . AAAI Press (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Bistarelli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santini</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A Hasse diagram for weighted sceptical semantics with a unique-status grounded semantics</article-title>
          .
          <source>In: Logic Programming and Nonmonotonic Reasoning</source>
          ,
          <source>LPNMR. LNCS</source>
          , vol.
          <volume>10377</volume>
          , pp.
          <volume>49</volume>
          {
          <fpage>56</fpage>
          . Springer (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Blyth</surname>
            ,
            <given-names>T.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Janowitz</surname>
            ,
            <given-names>M.F.</given-names>
          </string-name>
          :
          <article-title>Residuation theory</article-title>
          , vol.
          <volume>102</volume>
          . Pergamon press Oxford (
          <year>1972</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Caminada</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Comparing two unique extension semantics for formal argumentation: ideal and eager</article-title>
          .
          <source>In: Belgian-Dutch conference on arti cial intelligence (BNAIC)</source>
          . pp.
          <volume>81</volume>
          {
          <issue>87</issue>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Caminada</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Semi-stable semantics</article-title>
          .
          <source>In: Computational Models of Argument: Proceedings of COMMA 2006. Frontiers in Arti cial Intelligence and Applications</source>
          , vol.
          <volume>144</volume>
          , pp.
          <volume>121</volume>
          {
          <fpage>130</fpage>
          . IOS Press (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Charwat</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dvorak</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gaggl</surname>
            ,
            <given-names>S.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wallner</surname>
            ,
            <given-names>J.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Woltran</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Methods for solving reasoning problems in abstract argumentation: A survey</article-title>
          .
          <source>Arti cial Intelligence</source>
          <volume>220</volume>
          (
          <issue>0</issue>
          ),
          <volume>28</volume>
          {
          <fpage>63</fpage>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Dung</surname>
            ,
            <given-names>P.M.</given-names>
          </string-name>
          :
          <article-title>On the acceptability of arguments and its fundamental role in nonmonotonic reasoning, logic programming and n-person games</article-title>
          .
          <source>Arti cial Intelligence</source>
          <volume>77</volume>
          (
          <issue>2</issue>
          ),
          <volume>321</volume>
          {
          <fpage>357</fpage>
          (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Dung</surname>
            ,
            <given-names>P.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mancarella</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toni</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>A dialectic procedure for sceptical, assumption-based argumentation</article-title>
          .
          <source>In: Proceedings of the 2006 conference on Computational Models of Argument (COMMA)</source>
          . pp.
          <volume>145</volume>
          {
          <fpage>156</fpage>
          . IOS Press (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Dunne</surname>
            ,
            <given-names>P.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hunter</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McBurney</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parsons</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wooldridge</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Weighted argument systems: Basic de nitions, algorithms, and complexity results</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>175</volume>
          (
          <issue>2</issue>
          ),
          <volume>457</volume>
          {
          <fpage>486</fpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Dunne</surname>
            ,
            <given-names>P.E.</given-names>
          </string-name>
          :
          <article-title>The computational complexity of ideal semantics</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>173</volume>
          (
          <issue>18</issue>
          ),
          <volume>1559</volume>
          {
          <fpage>1591</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Dvorak</surname>
          </string-name>
          , W.:
          <article-title>Computational Aspects of Abstract Argumentation</article-title>
          .
          <source>Ph.D. thesis</source>
          , Technische Universitat
          <string-name>
            <surname>Wien</surname>
          </string-name>
          (
          <year>2012</year>
          ), http://permalink.obvsg.at/AC07812708
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17. Kroll,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Pichler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Woltran</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          :
          <article-title>On the complexity of enumerating the extensions of abstract argumentation frameworks</article-title>
          .
          <source>In: International Joint Conference on Arti cial Intelligence</source>
          ,
          <source>IJCAI</source>
          . pp.
          <volume>1145</volume>
          {
          <fpage>1152</fpage>
          . ijcai.
          <source>org</source>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Rossi</surname>
          </string-name>
          , F.,
          <string-name>
            <surname>van Beek</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walsh</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Handbook of Constraint Programming. Elsevier Science Inc</article-title>
          ., New York, NY, USA (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Thimm</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Villata</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cerutti</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oren</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Strass</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vallati</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Summary report of the rst international competition on computational models of argumentation</article-title>
          .
          <source>AI</source>
          Magazine
          <volume>37</volume>
          (
          <issue>1</issue>
          ),
          <volume>102</volume>
          (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Verheij</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Two approaches to dialectical argumentation: admissible sets and argumentation stages</article-title>
          .
          <source>Dutch Conference on Arti cial Intelligence</source>
          <volume>96</volume>
          ,
          <fpage>357</fpage>
          {
          <fpage>368</fpage>
          (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>