Class WeaklyAdmissibleReasoner

  • All Implemented Interfaces:
    ModelProvider<Argument,​DungTheory,​Extension>, QualitativeReasoner<DungTheory,​Argument>, Reasoner<java.lang.Boolean,​DungTheory,​Argument>

    public class WeaklyAdmissibleReasoner
    extends AbstractExtensionReasoner
    Reasoner for weak admissibility the reasoner reduces the number of sets we have to check by computing candidate sets instead of checking all sets. a candidate set of an Extension E is a conflict-free set S, which contains at least one attacker of E and contains only arguments relevant to E and itself. An argument is considered relevant to E iff it attacks any argument in the same component as E.
    Author:
    Lars Bengel
    • Constructor Detail

      • WeaklyAdmissibleReasoner

        public WeaklyAdmissibleReasoner()
    • Method Detail

      • getModels

        public java.util.Collection<Extension> getModels​(DungTheory bbase)
        computes all weakly admissible sets of bbase. A set S is weakly admissible iff it is conflict-free and no attacker of S is element of a weakly admissible set of the reduct of bbase wrt. S
        Specified by:
        getModels in interface ModelProvider<Argument,​DungTheory,​Extension>
        Specified by:
        getModels in class AbstractExtensionReasoner
        Parameters:
        bbase - an argumentation framework
        Returns:
        the weakly admissible sets of bbase
      • getAttackingCandidates

        public java.util.Set<java.util.Set<Argument>> getAttackingCandidates​(DungTheory bbase,
                                                                             java.util.Collection<Argument> ext)
        computes all conflict-free sets, which attack any argument in ext
        Parameters:
        bbase - an argumentation framework
        ext - an extension
        Returns:
        all sets which attack ext and are conflict-free
      • getConflictFreeCandidateSets

        public java.util.Set<java.util.Set<Argument>> getConflictFreeCandidateSets​(DungTheory bbase,
                                                                                   java.util.Collection<Argument> candidates)
        computes all conflict-free sets of bbase, that contain only arguments in candidates and all arguments are relevant an argument is considered relevant iff it attacks any argument in the same component as the given argument A
        Parameters:
        bbase - an argumentation framework
        candidates - a set of arguments
        Returns:
        conflict-free sets in bbase
      • getComponent

        public java.util.Set<Argument> getComponent​(DungTheory bbase,
                                                    Argument argument)
        finds the set of arguments S = {a | there exists an edge between a and argument}
        Parameters:
        bbase - an argumentation framework
        argument - an argument
        Returns:
        the set of arguments connected with argument
      • getConflictFreeSets

        public java.util.Set<java.util.Set<Argument>> getConflictFreeSets​(DungTheory bbase,
                                                                          java.util.Collection<Argument> candidates)
        computes all conflict-free sets of bbase, that contain only arguments in candidates
        Parameters:
        bbase - an argumentation framework
        candidates - a set of arguments
        Returns:
        conflict-free sets in bbase
      • getReduct

        public DungTheory getReduct​(DungTheory bbase,
                                    Extension ext)
        computes the reduct of bbase wrt. ext ie. removes all arguments from bbase which are either in ext or are attacked by any element of ext
        Parameters:
        bbase - an argumentation framework
        ext - an extension
        Returns:
        the reduct of bbase wrt. ext