Skip to Content

TU Wien Fakultät für Informatik DBAI Database and Artificial Intelligence Group
Top-level Navigation:

Path: DBAI > research > Argumentation > ASPARTIX > SETAFs

Tools: Drucken


Here we provide a system, i.e., ASP encodings, to compute the extensions of and reasoning with SETAFs. The system is independent of the core ASPARTIX system, however we follow the same approach of encoding the SETAF as input database and the semantics as fixed query. Thus the encodings provided here and their usage have a similar flavor as the core ASPARTIX system.


SETAFs extend Dung AFs by allowing for collective attacks, i.e., attacks where a non-empty set S of arguments attacks an argument a. The attack is active only if all of the arguments of S an argument is defendeed against a collective attack (S,a) by an extensions E if at least one of the arguments in S is attacked by E. We also call S the support of the attack and a the target.

Input Format

SETAFs are encoded by a sequence of statements that either encode an argument, the target of an attack, or the support of an attack.

arg(a). ... a is an argument att(x,b). ... the attack named x attacks argument b mem(x,a). ... the argument a is in the support of attack x
Consider the following example
SETAF Input File
SETAF F=(A,R) with
  • A={a,b,c} and
  • Attacks R={({a,b},c), ({a,c},b), ({b,c},a)}.

That is we have three arguments a,b,c
and three attacks r1=({a,b},c), r2=({a,c},b),
arg(a). arg(b). arg(c). att(r1,c). mem(r1,a). mem(r1,b). att(r2,b). mem(r2,a). mem(r2,c). att(r3,a). mem(r3,b). mem(r3,c).


For the execution of the programs one needs a disjunctive ASP solver and the encodings are tested with Clingo (see Potassco).

Enumerate Extensions.

In order to enumerate all extensions of an SETAF (given in a file w.r.t. a semantics (encoded in the file semantics.lp) use the following command:
$ clingo semantics.lp filter.lp 0

The filter.lp file filters out the predicates in(.) which denote the arguments contained in the extension.

To just enumerate a fixed number of extensions, say 6, use the following command
$ clingo semantics.lp filter.lp 6

Credulous Reasoning.

Computing all credulously accepted arguments:
$ clingo semantics.lp filter.lp -e brave

Skeptical Reasoning.

Computing all skeptically accepted arguments:
$ clingo semantics.lp filter.lp -e cautious

Encodings of Argumentation Semantics.

In the following we provide the encodings for all semantics. Sometimes, beside the standard encoding, we also provide a "basic encoding" that avoids more advanced constructs in the ASP-language of gringo and thus can be easily adapted for other ASP solver.


Main References

[25] Evaluating SETAFs via Answer-Set Programming
Wolfgang Dvořák, Alexander Greßler, and Stefan Woltran
SAFA 2018: 10-21 [paper]
[24] Evaluating SETAFs via Answer-Set Programming
Wolfgang Dvořák, Alexander Greßler, and Stefan Woltran
Technical Report DBAI-TR-2018-112, Technische Universität Wien, 2018. [ .pdf ]
more system-related references

References for SETAFs

Home / Kontakt / Webmaster / Offenlegung gemäß § 25 Mediengesetz: Inhaber der Website ist das Institut für Logic and Computation an der Technischen Universität Wien, 1040 Wien. Die TU Wien distanziert sich von den Inhalten aller extern gelinkten Seiten und übernimmt diesbezüglich keine Haftung. Disclaimer / Datenschutzerklärung