Class IteratedGradedDefenseReasoner

All Implemented Interfaces:
ModelProvider<Argument,DungTheory,LatticePartialOrder<Argument,DungTheory>>, PostulateEvaluatable<Argument>

public class IteratedGradedDefenseReasoner extends AbstractRankingReasoner<LatticePartialOrder<Argument,DungTheory>>
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
  • Constructor Details

    • IteratedGradedDefenseReasoner

      public IteratedGradedDefenseReasoner()
  • Method Details

    • gradedDefense

      public Collection<Argument> gradedDefense(DungTheory theory, Collection<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<Argument> gradedNeutrality(DungTheory theory, Collection<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(DungTheory theory, Collection<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(DungTheory theory, Collection<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(DungTheory theory, Collection<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(DungTheory theory, Collection<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(DungTheory theory, Collection<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(DungTheory theory, Collection<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<Extension<DungTheory>> getAllMNCompleteExtensions(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<Extension<DungTheory>> getAllMNPreferredExtensions(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<Extension<DungTheory>> getAllMNGroundedExtensions(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<Extension<DungTheory>> getAllMStableExtensions(DungTheory theory, int m)
      Returns all m-stable extensions.
      Parameters:
      theory - a Dung theory
      m - some integer
      Returns:
      all m-stable extensions.
    • getModels

      Description copied from interface: ModelProvider
      Returns a characterizing model of the given belief base
      Parameters:
      bbase - some belief base
      Returns:
      the (selected) models of the belief base
    • getModel

      Description copied from interface: ModelProvider
      Returns a single (dedicated) model of the given belief base. If the implemented method allows for more than one dedicated model, the selection may be non-deterministic.
      Parameters:
      bbase - some belief base
      Returns:
      a selected model of the belief base.
    • isInstalled

      public boolean isInstalled()
      natively installed
      Specified by:
      isInstalled in class AbstractRankingReasoner<LatticePartialOrder<Argument,DungTheory>>