Class EvidentialArgSystem

  • All Implemented Interfaces:
    java.lang.Comparable<DungTheory>, java.lang.Iterable<Argument>, java.util.Collection<Argument>, BeliefBase, Graph<Argument>

    public class EvidentialArgSystem
    extends BipolarArgFramework
    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
    • Field Detail

      • epsilon

        private Argument epsilon
        Special argument Epsilon, which serves as a representation of the prima facie arguments
    • Constructor Detail

      • EvidentialArgSystem

        public EvidentialArgSystem()
        Default constructor; initializes empty sets of arguments and attacks
      • EvidentialArgSystem

        public EvidentialArgSystem​(Graph<Argument> graph)
        Creates a new theory from the given graph.
        Parameters:
        graph - some graph
    • Method Detail

      • fes

        public Extension fes​(Extension extension)
        The characteristic function of an abstract argumentation framework: F_ES(S) = {A|A is acceptable wrt. S}.
        Parameters:
        extension - an extension (a set of arguments).
        Returns:
        an extension (a set of arguments).
      • hasEvidentialSupport

        public boolean hasEvidentialSupport​(Argument argument,
                                            java.util.Collection<Argument> ext)
        returns true if argument has reasoner.evidential support from set ext. An argument a has e-support from ext iff a=epsilon or there exists an argument x of ext which supports a and all x has e-support from ext \ {a}
        Parameters:
        argument - an argument
        ext - an extension, ie. a set of arguments
        Returns:
        true if argument has e-support from ext.
      • hasMinimalEvidentialSupport

        public boolean hasMinimalEvidentialSupport​(Argument argument,
                                                   java.util.Collection<Argument> ext)
        returns true if argument has minimal reasoner.evidential support from set ext. 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 argument
        ext - an extension, ie. a set of arguments
        Returns:
        true if argument has e-support from ext.
      • isEvidenceSupportedAttack

        public boolean isEvidenceSupportedAttack​(java.util.Collection<Argument> ext,
                                                 Argument argument)
        returns true if ext carries out an evidence supported attack on argument ext e-support-attacks an argument a iff an element x of ext attacks a and x has e-support from ext.
        Parameters:
        argument - an argument
        ext - an extension, ie. a set of arguments
        Returns:
        true if ext e-support-attacks argument
      • isMinimalEvidenceSupportedAttack

        public boolean isMinimalEvidenceSupportedAttack​(java.util.Collection<Argument> ext,
                                                        Argument argument)
        returns true if ext carries out a minimal evidence supported attack on argument i.e. there is no true subset of ext which e-support-attacks argument
        Parameters:
        argument - an argument
        ext - an extension, ie. a set of arguments
        Returns:
        true if ext e-support-attacks argument
      • isAcceptable

        public boolean isAcceptable​(Argument argument,
                                    java.util.Collection<Argument> ext)
        return true if argument is acceptable with respect to ext 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.
        Parameters:
        argument - an argument
        ext - an extension i.e. a set of arguments
        Returns:
        true if argument is acceptable wrt. ext
      • addPrimaFacie

        public boolean addPrimaFacie​(Argument argument)
        Adds a argument with reasoner.evidential support to this reasoner.evidential argumentation system
        Parameters:
        argument - some argument
        Returns:
        "true" if the argument has been modified.
      • getEpsilon

        public Argument getEpsilon()
        returns the special argument epsilon
        Returns:
        epsilon
      • getEvidenceSupportedArguments

        public java.util.Set<Argument> getEvidenceSupportedArguments()
      • prettyPrint

        public java.lang.String prettyPrint()
        Pretty print of the framework.
        Overrides:
        prettyPrint in class BipolarArgFramework
        Returns:
        the pretty print of the framework.