Skip to Content

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

Path: DBAI > research > Argumentation > ASPARTIX > Dung AFs > Minimal Extensions

Tools: Drucken


Computing Minimal Extensions in Dung AFs


This module is used to compute minimal extensions that contain a given query argument.

Usage (with clingo)

In order to compute a minimal extension of an AF stored in a file input.af containing an argument target use the following command

$ clingo input.af semantics.lp minext.lp query.lp filter.lp

To compute all minimal extensions use:

$ clingo --opt-mode=optN --quiet=1 
     input.af semantics.lp minext.lp query.lp filter.lp 0

Files

First of all pick an encoding for one of the supported semantics: Then there is the minext.lp file that encodes the used minimization. Here you have to pick the minimization you want to use and uncomment to corresponding minimization statements (and comment the other minimization statements). Default is minimizing the number of arguments in the extension.
%% computes the attackers of the extension attacker(X):-in(Y),att(X,Y). %%% Uncomment your minimization of choice %% Minimize the number of arguments in the extension #minimize {1@1,X:in(X)}. %% Minimize the number of arguments attacking the extension %#minimize {1@1,X:attacker(X)}. %% %% First Minimize the number of arguments attacking the extension and among the minima minimize the number of arguments in the extension %#minimize {1@2,X:attacker(X)}. %#minimize {1@1,X:in(X)}. %% First Minimize the number of arguments in the extension and among the minima minimize the number of arguments attacking the extension %#minimize {1@1,X:attacker(X)}. %#minimize {1@2,X:in(X)}. %% Minimize the number of arguments in the extension plus the number of arguments attacking the extension %#minimize {1@1,X:attacker(X)}. %#minimize {1@1,X:in(X)}. %% Minimize the weighted sum of arguments in the extension and arguments attacking the extension (change the first number in the statements to change weight) %% here attackers are weighted 1 and arguments in the extension weighted 2 %#minimize {1@1,X:attacker(X)}. %#minimize {2@1,X:in(X)}.

Finally for each call you have to create a query.lp file encoding the query argument. For a query argument named target we have the following query.lp file:

:- not in(target).

Integer Linear Programming Implementation

We also provide an implementation for strongly admissible set based integer linear programming we used to compare our ASP encoding with: ILP implementation

References

Main References

[28] Computing Strongly Admissible Sets
Wolfgang Dvořák, Johannes P. Wallner
COMMA 2020: 179-190 [ paper at IOS Press ]
more system-related references

Some Related Literature



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