Safe Haskell | Safe-Inferred |
---|
This module implements Dung's argumentation frameworks.
- data DungAF arg = AF [arg] [(arg, arg)]
- setAttacks :: Eq arg => DungAF arg -> [arg] -> arg -> Bool
- conflictFree :: Eq arg => DungAF arg -> [arg] -> Bool
- acceptable :: Eq arg => DungAF arg -> arg -> [arg] -> Bool
- f :: Eq arg => DungAF arg -> [arg] -> [arg]
- admissible :: Eq arg => DungAF arg -> [arg] -> Bool
- unattacked :: Eq arg => [arg] -> DungAF arg -> arg -> Bool
- attacked :: Eq arg => [arg] -> DungAF arg -> arg -> Bool
- groundedF :: Eq arg => ([arg] -> [arg]) -> [arg]
- data Status
- grounded :: Eq arg => DungAF arg -> [(arg, Status)]
- groundedExt :: Eq arg => DungAF arg -> [arg]
Basic definitions
An abstract argumentation framework is a set of arguments (represented as a list) and an attack relation on these arguments.
AF [arg] [(arg, arg)] |
setAttacks :: Eq arg => DungAF arg -> [arg] -> arg -> BoolSource
Given an argumentation framework, determines whether args (subset of the arguments in the AF), attacks an argument arg (in the AF).
conflictFree :: Eq arg => DungAF arg -> [arg] -> BoolSource
Given an argumentation framework, determines whether args (subset of the arguments in the AF) is conflict-free.
acceptable :: Eq arg => DungAF arg -> arg -> [arg] -> BoolSource
Given an argumentation framework, determines whether an
argument is acceptable with respect to a list of args
(subset of the arguments in the AF).
f :: Eq arg => DungAF arg -> [arg] -> [arg]Source
Given an argumentation framework, determines whether an
argument is acceptable with respect to args
(subset of the arguments in the AF).
admissible :: Eq arg => DungAF arg -> [arg] -> BoolSource
Given an argumentation framework, determines whether
the set of arguments args
(subset of the arguments in the AF) is admissible,
i.e. if args
is conflictFree
and args is a subset of f af args
unattacked :: Eq arg => [arg] -> DungAF arg -> arg -> BoolSource
Given a list of arguments that are Out
in an argumentation framework af,
an argument arg
is unattacked if the list of its attackers, ignoring the outs, is empty.
Grounded semantics through fixpoints and labelling
groundedF :: Eq arg => ([arg] -> [arg]) -> [arg]Source
Given a characteristic function f, computes the grounded extension by iterating on the empty set (list) until it reaches a fixpoint.
grounded :: Eq arg => DungAF arg -> [(arg, Status)]Source
Computes the grounded labelling for a Dung argumentation framework, returning a list of arguments with statuses.
Based on section 4.1 of Proof Theories and Algorithms for Abstract Argumentation Frameworks by Modgil and Caminada
groundedExt :: Eq arg => DungAF arg -> [arg]Source
The grounded extension of an argumentation framework is just the grounded labelling,
keeping only those arguments that were labelled In
.