Class IteratedGradedDefenseReasoner

  • All Implemented Interfaces:
    net.sf.tweety.commons.ModelProvider<net.sf.tweety.arg.dung.syntax.Argument,​net.sf.tweety.arg.dung.syntax.DungTheory,​LatticeArgumentRanking>, net.sf.tweety.commons.postulates.PostulateEvaluatable<net.sf.tweety.arg.dung.syntax.Argument>

    public class IteratedGradedDefenseReasoner
    extends AbstractRankingReasoner<LatticeArgumentRanking>
    This class implements the argument ranking approach of [Grossi, Modgil. On the Graded Acceptability of Arguments. IJCAI 2015] The used algorithms are simple brute force search algorithms.
    Author:
    Matthias Thimm
    • Method Summary

      Modifier and Type Method Description
      Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMNCompleteExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory, int m, int n)
      Returns all mn-complete extensions.
      Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMNGroundedExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory, int m, int n)
      Returns all mn-grounded extensions.
      Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMNPreferredExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory, int m, int n)
      Returns all mn-preferred extensions.
      Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMStableExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory, int m)
      Returns all m-stable extensions.
      LatticeArgumentRanking getModel​(net.sf.tweety.arg.dung.syntax.DungTheory bbase)  
      Collection<LatticeArgumentRanking> getModels​(net.sf.tweety.arg.dung.syntax.DungTheory bbase)  
      Collection<net.sf.tweety.arg.dung.syntax.Argument> gradedDefense​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m, int n)
      Implements the graded defense function from Def.
      Collection<net.sf.tweety.arg.dung.syntax.Argument> gradedNeutrality​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m)
      Implements the graded neutrality function from Def.
      boolean isMConflictFree​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m)
      Checks whether the given set of arguments is m-conflict-free, cf.
      boolean isMNAdmissible​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m, int n)
      Checks whether the given set of arguments is mn-admissible, cf.
      boolean isMNComplete​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m, int n)
      Checks whether the given set of arguments is mn-complete, cf.
      boolean isMNGrounded​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m, int n)
      Checks whether the given set of arguments is mn-grounded, cf.
      boolean isMNPreferred​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m, int n)
      Checks whether the given set of arguments is mn-preferred, cf.
      boolean isMStable​(net.sf.tweety.arg.dung.syntax.DungTheory theory, Collection<net.sf.tweety.arg.dung.syntax.Argument> args, int m)
      Checks whether the given set of arguments is m-stable, cf.
    • Constructor Detail

      • IteratedGradedDefenseReasoner

        public IteratedGradedDefenseReasoner()
    • Method Detail

      • gradedDefense

        public Collection<net.sf.tweety.arg.dung.syntax.Argument> gradedDefense​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                                                                Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                                                                int m,
                                                                                int n)
        Implements the graded defense function from Def. 5, i.e. gradedDefense_m_n(X) = { x | there are not more than m different y s.t. y attacks x and there are not more than n different z s.t. z attacks y and z is in X}
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer (indicating the number of attackers)
        n - some integer (indicating the number of attackers of attackers)
        Returns:
        the set of arguments mn-defended by the given set of arguments
      • gradedNeutrality

        public Collection<net.sf.tweety.arg.dung.syntax.Argument> gradedNeutrality​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                                                                   Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                                                                   int m)
        Implements the graded neutrality function from Def. 6, i.e. gradedNeutrality_m(X) = {x | there are less than m arguments y from X that attack x}
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer (the number of attackers)
        Returns:
        the set of arguments m-neutral to args.
      • isMConflictFree

        public boolean isMConflictFree​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                       Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                       int m)
        Checks whether the given set of arguments is m-conflict-free, cf. Def. 9.
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer
        Returns:
        "true" iff args is m-conflict-free
      • isMNAdmissible

        public boolean isMNAdmissible​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                      Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                      int m,
                                      int n)
        Checks whether the given set of arguments is mn-admissible, cf. Def. 9.
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer
        n - some integer
        Returns:
        "true" iff args is mn-admissible
      • isMNComplete

        public boolean isMNComplete​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                    Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                    int m,
                                    int n)
        Checks whether the given set of arguments is mn-complete, cf. Def. 9.
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer
        n - some integer
        Returns:
        "true" iff args is mn-complete
      • isMStable

        public boolean isMStable​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                 Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                 int m)
        Checks whether the given set of arguments is m-stable, cf. Def. 9.
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer
        Returns:
        "true" iff args is m-stable
      • isMNGrounded

        public boolean isMNGrounded​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                    Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                    int m,
                                    int n)
        Checks whether the given set of arguments is mn-grounded, cf. Def. 9.
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer
        n - some integer
        Returns:
        "true" iff args is mn-grounded
      • isMNPreferred

        public boolean isMNPreferred​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                     Collection<net.sf.tweety.arg.dung.syntax.Argument> args,
                                     int m,
                                     int n)
        Checks whether the given set of arguments is mn-preferred, cf. Def. 9.
        Parameters:
        theory - a Dung theory
        args - some set of arguments
        m - some integer
        n - some integer
        Returns:
        "true" iff args is mn-preferred
      • getAllMNCompleteExtensions

        public Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMNCompleteExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                                                                                 int m,
                                                                                                 int n)
        Returns all mn-complete extensions.
        Parameters:
        theory - a Dung theory
        m - some integer
        n - some integer
        Returns:
        all mn-complete extensions.
      • getAllMNPreferredExtensions

        public Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMNPreferredExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                                                                                  int m,
                                                                                                  int n)
        Returns all mn-preferred extensions.
        Parameters:
        theory - a Dung theory
        m - some integer
        n - some integer
        Returns:
        all mn-preferred extensions.
      • getAllMNGroundedExtensions

        public Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMNGroundedExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                                                                                 int m,
                                                                                                 int n)
        Returns all mn-grounded extensions.
        Parameters:
        theory - a Dung theory
        m - some integer
        n - some integer
        Returns:
        all mn-grounded extensions.
      • getAllMStableExtensions

        public Collection<net.sf.tweety.arg.dung.semantics.Extension> getAllMStableExtensions​(net.sf.tweety.arg.dung.syntax.DungTheory theory,
                                                                                              int m)
        Returns all m-stable extensions.
        Parameters:
        theory - a Dung theory
        m - some integer
        Returns:
        all m-stable extensions.