This repository contains a dataset of argumentation frameworks that includes enumerations of sets of extensions for each framework.
An argumentation framework is a pair AF = (A, R)
, where A
is a set of arguments and R
is a binary relation over A
that represents the attack relation.
A set S ⊆ A
is conflict-free iff there are no attacking argument in S
, and an argument a
is defended by S
iff any argument that attacks a
is attacked by an argument in S
.
A set S
is admissible iff it is conflict-free and defends all its arguments.
Then, for a set E ⊆ A
:
E
is a complete extension (denotedCO
) iff it is admissible any argument defended byE
is inE
,E
is the single, unique grounded extension (denotedGR
) iff it is the smallest complete extension (w.r.t. set inclusion),E
is a preferred extension (denotedPR
) iff it is a maximal complete extension (w.r.t. set inclusion),E
is a stable extension (denotedST
) iff it is a complete extension that attacks all arguments not inE
,E
is a semi-stable extension (denotedSST
) iff it is a complete extension that maximises the union of its members and the arguments its members attack, andE
is a stage extension (denotedSTG
) iff it is a complete extension that minimises the union of its members and the arguments its members attack.
Denote the set of all σ
-extensions (where σ
is one of the above semantics) as E_σ
.
An argument is credulously acceptable w.r.t. AF
and σ
iff it is in at least one σ
-extension E ∈ E_σ
, and it is sceptically acceptable iff it is in all σ
-extensions E ∈ E_σ
.
The data is derived from the International Competition on Computational Models of Argumentation from the ICCMA 2017 benchmark datasets.
Each framework was read in .tgf
format and translated into an .apx
format using the store_af.py
script.
The .apx
format is a simple text-based format that lists the arguments and attacks in the framework for input into an answer set programming solver.
The .apx
files were then solved using the ASPARTIX
implementations of argumentation solving and the clingo
answer-set programming solver, using the single_solve.py
script.
Each framework is stored in Python dictionary with the following keys, this is based on the pytorch_geometric
data format.
x
: node feature matrix with shape(|A|, 1)
consisting of unique integer identifiers for each argument (typetorch.float32
).edge_index
: the relationR
encoded in COO format with shape(2, |R|)
and typetorch.long
.extensions
: a dictionary mapping keysσ ∈ {"CO", "GR", "PR", "ST", "SST", "STG"}
to binary tensors with shape(|E_σ|, |A|)
and typetorch.long
.
For example:
{
"x": torch.tensor([[0], [1], [2], [3]]),
"edge_index": torch.tensor([[0, 1, 1, 2], [1, 2, 3, 3]]),
"extensions": {
"GR": torch.tensor([[1, 0, 1, 0]]),
# ...
}
}
The code is authored by Alex Jackson and is licensed under the MIT License.
This work was supported by UK Research and Innovation [grant number EP/S023356/1], in the UKRI Centre for Doctoral Training in Safe and Trusted Artificial Intelligence (www.safeandtrustedai.org).
In addition:
- The source data was provided as part of the International Competition on Computational Models of Argumentation.
- The
ASPARTIX
implementations of argumentation solving were created by the Database and Artificial Intelligence Group at the Vienna University of Technology. - The
clingo
answer-set programming solver was created by the Potassco project.