Class EvidentialArgumentationFramework
java.lang.Object
org.tweetyproject.commons.BeliefSet<BArgument,DungSignature>
org.tweetyproject.arg.bipolar.syntax.AbstractBipolarFramework
org.tweetyproject.arg.bipolar.syntax.EvidentialArgumentationFramework
- All Implemented Interfaces:
Comparable<EvidentialArgumentationFramework>
,Iterable<BArgument>
,Collection<BArgument>
,BeliefBase
,GeneralGraph<BArgument>
,Graph<BArgument>
public class EvidentialArgumentationFramework
extends AbstractBipolarFramework
implements Comparable<EvidentialArgumentationFramework>
This class implements a bipolar abstract argumentation theory with support in an evidential sense.
ie. we distinguish between prima-facie and standard arguments. Prima-facie arguments do not
require any support from other arguments to stand, while standard arguments must be supported
by at least one prima-facie argument.
See
Polberg, Oren. Revisiting Support in Abstract Argumentation Systems. 2014
See
Polberg, Oren. Revisiting Support in Abstract Argumentation Systems. 2014
- Author:
- Lars Bengel
-
Field Summary
Fields inherited from class org.tweetyproject.commons.BeliefSet
EQUALS_USES_SIGNATURE
Fields inherited from interface org.tweetyproject.graphs.Graph
IGNORE_SELFLOOPS, INVERT_SELFLOOPS, REMOVE_SELFLOOPS
-
Constructor Summary
ConstructorDescriptionDefault constructor; initializes empty sets of arguments, attacks and supportscreates an evidential argumentation framework from the given framework with necessities -
Method Summary
Modifier and TypeMethodDescriptionboolean
Adds the given attack to this argumentation frameworkboolean
Adds the given support to this argumentation framework.boolean
addAttack
(ArgumentSet attacker, BArgument attacked) Adds an attack from the set of arguments to the argument to this evidential argumentation system.boolean
Adds an attack from the first argument to the second to this evidential argumentation system.boolean
addPrimaFacie
(BArgument argument) Adds a argument with evidential support to this evidential argumentation system If the argument is already in this evidential argumentation system, adds evidential supportboolean
addSupport
(ArgumentSet supporter, BArgument supported) Adds a support from a set of arguments to an argument to this argumentation framework.boolean
addSupport
(BArgument supporter, BArgument supported) Adds a support from the first argument to the second to this argumentation framework.int
getAttackingSets
(BArgument argument) Computes the set {S | (S, argument) in attacks}.Returns all attacks of this theory.getEta()
returns the special argument etareturns all arguments that have evidential support in this frameworkcomputes all subsets which carry out a minimal evidence supported attack on argumentgetMinimalEvidentialSupporters
(BArgument argument) computes all subsets which minimal e-support argumentcalculates the minimal form of this argumentation framework ie.getSupported
(ArgumentSet argumentSet) Computes the set {A | there is a sequence of direct supports from argumentSet to A}Returns all supports of this theory.boolean
hasEvidentialSupport
(BArgument argument, Collection<BArgument> ext) returns true if argument has evidential support from setext
.int
hashCode()
boolean
hasMinimalEvidentialSupport
(BArgument argument, Collection<BArgument> ext) returns true if argument has minimal evidential support from setext
.boolean
isAcceptable
(BArgument argument, Collection<BArgument> ext) return true if argument is acceptable with respect toext
argument is acceptable wrt.boolean
isEvidenceSupportedAttack
(Collection<BArgument> ext, BArgument argument) returns true ifext
carries out an evidence supported attack on argument ext e-support-attacks an argument a iff a subset S of ext attacks a and all elements of S have e-support from ext.boolean
isMinimalEvidenceSupportedAttack
(Collection<BArgument> ext, BArgument argument) returns true ifext
carries out a minimal evidence supported attack on argument i.e.boolean
removePrimaFacie
(BArgument argument) removes evidential support from argument, does not remove argument itselftoNAF()
translates this EAF into the corresponding NAF can only translate framework which contain only binary attacks translation algorithm from: Polberg, Oren.Methods inherited from class org.tweetyproject.arg.bipolar.syntax.AbstractBipolarFramework
add, add, add, addAllAttacks, addAllSupports, areAdjacent, existsDirectedPath, faf, getAdjacencyMatrix, getAttacked, getAttackers, getChildren, getComplementGraph, getDirectSupported, getDirectSupporters, getEdge, getEdges, getMinimalSignature, getNeighbors, getNodes, getNumberOfEdges, getNumberOfNodes, getParents, getRestriction, getStronglyConnectedComponents, getSubgraphs, hasSelfLoops, isAttackedBy, isDirectSupportedBy, isWeightedGraph, prettyPrint, remove, remove, remove, removeAll
Methods inherited from class org.tweetyproject.commons.BeliefSet
add, addAll, clear, contains, containsAll, equals, getSignature, isEmpty, iterator, remove, retainAll, setSignature, size, toArray, toArray, toString, toString
Methods inherited from interface java.util.Collection
parallelStream, removeIf, spliterator, stream, toArray
-
Constructor Details
-
EvidentialArgumentationFramework
public EvidentialArgumentationFramework()Default constructor; initializes empty sets of arguments, attacks and supports -
EvidentialArgumentationFramework
creates an evidential argumentation framework from the given framework with necessities- Parameters:
naf
- a argumentation framework with necessities
-
-
Method Details
-
hasEvidentialSupport
returns true if argument has evidential support from setext
. An argument a has e-support from ext iff a=eta or there exists a subset S of ext which supports a and all arguments in S have e-support from ext \ {a}- Parameters:
argument
- an argumentext
- a set of arguments- Returns:
- true if argument has e-support from
ext
.
-
hasMinimalEvidentialSupport
returns true if argument has minimal evidential support from setext
. An argument a has minimal e-support from ext iff ext e-supports a and no true subset of ext e-supports a- Parameters:
argument
- an argumentext
- a set of arguments- Returns:
- true if argument has e-support from
ext
.
-
getMinimalEvidentialSupporters
-
isEvidenceSupportedAttack
returns true ifext
carries out an evidence supported attack on argument ext e-support-attacks an argument a iff a subset S of ext attacks a and all elements of S have e-support from ext.- Parameters:
ext
- a set of argumentsargument
- an argument- Returns:
- true if
ext
e-support-attacks argument
-
isMinimalEvidenceSupportedAttack
returns true ifext
carries out a minimal evidence supported attack on argument i.e. there is no true subset ofext
which e-support-attacks argument- Parameters:
ext
- a set of argumentsargument
- an argument- Returns:
- true if
ext
e-support-attacks argument
-
getMinimalEvidenceSupportedAttackers
computes all subsets which carry out a minimal evidence supported attack on argument- Parameters:
argument
- some argument- Returns:
- set of minimal e-supported attackers of argument
-
isAcceptable
return true if argument is acceptable with respect toext
argument is acceptable wrt. S iff argument is e-supported by S and if a set T minimal e-support-attacks argument, then S carries out an e-supported attack against a member of T.- Specified by:
isAcceptable
in classAbstractBipolarFramework
- Parameters:
argument
- an argumentext
- a set of arguments- Returns:
- true if argument is acceptable wrt.
ext
-
getSupported
Computes the set {A | there is a sequence of direct supports from argumentSet to A}- Parameters:
argumentSet
- a set of arguments- Returns:
- the set of all arguments that are supported by
argumentSet
.
-
getAttackingSets
Computes the set {S | (S, argument) in attacks}.- Parameters:
argument
- an argument- Returns:
- the set of all argument sets that are attacking
argument
.
-
add
Description copied from class:AbstractBipolarFramework
Adds the given support to this argumentation framework.- Specified by:
add
in classAbstractBipolarFramework
- Parameters:
s
- a support- Returns:
- "true" if the set of supports has been modified.
-
addSupport
-
addSupport
Adds a support from a set of arguments to an argument to this argumentation framework.- Parameters:
supporter
- a set of argumentssupported
- some argument- Returns:
- "true" if the set of supports has been modified.
-
add
Description copied from class:AbstractBipolarFramework
Adds the given attack to this argumentation framework- Specified by:
add
in classAbstractBipolarFramework
- Parameters:
att
- an attack- Returns:
- "true" if the set of attacks has been modified.
-
addAttack
-
addAttack
Adds an attack from the set of arguments to the argument to this evidential argumentation system.- Parameters:
attacker
- a set of argumentsattacked
- some argument- Returns:
- "true" if the set of attacks has been modified.
-
getSupports
Returns all supports of this theory.- Specified by:
getSupports
in classAbstractBipolarFramework
- Returns:
- all supports of this theory.
-
getAttacks
Returns all attacks of this theory.- Specified by:
getAttacks
in classAbstractBipolarFramework
- Returns:
- all attacks of this theory.
-
addPrimaFacie
Adds a argument with evidential support to this evidential argumentation system If the argument is already in this evidential argumentation system, adds evidential support- Parameters:
argument
- some argument- Returns:
- "true" if the argument has been modified.
-
removePrimaFacie
removes evidential support from argument, does not remove argument itself- Parameters:
argument
- some argument- Returns:
- "true" if the argument has been modified
-
getEvidenceSupportedArguments
-
getEta
-
getMinimalForm
calculates the minimal form of this argumentation framework ie. only attacks and supports with minimal attacker/supporter are kept- Returns:
- the minimal form of this evidential argumentation framework
-
toNAF
translates this EAF into the corresponding NAF can only translate framework which contain only binary attacks translation algorithm from: Polberg, Oren. Revisiting Support in Abstract Argumentation Systems. 2014- Returns:
- the corresponding NAF
-
compareTo
- Specified by:
compareTo
in interfaceComparable<EvidentialArgumentationFramework>
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfaceCollection<BArgument>
- Overrides:
hashCode
in classBeliefSet<BArgument,
DungSignature>
-