Class SimpleAttackConstraint

java.lang.Object
org.tweetyproject.arg.dung.learning.syntax.SimpleAttackConstraint
All Implemented Interfaces:
AttackConstraint<AssociativePlFormula>

public class SimpleAttackConstraint extends Object implements AttackConstraint<AssociativePlFormula>
Implementation of the acceptance conditions used for learning argumentation frameworks from labelings Notation: for each acceptance condition we also store the argument a it is associated with In the condition itself we then use !b and b to represent !r_(ba) and r_(ba) respectively e.g. the condition C_a = !a and !c and b means a is not attacked by a and c, but must be attacked by b
Author:
Lars Bengel
  • Constructor Details

    • SimpleAttackConstraint

      public SimpleAttackConstraint(Argument arg)
      initialize empty acceptance condition for the given argument in tha case any incoming attack is optional
      Parameters:
      arg - some argument
    • SimpleAttackConstraint

      public SimpleAttackConstraint(Argument arg, Input input)
      compute acceptance condition for the given argument with respect to the given input labeling
      Parameters:
      arg - some argument
      input - some input labeling
    • SimpleAttackConstraint

      public SimpleAttackConstraint(SimpleAttackConstraint condition1, SimpleAttackConstraint condition2)
      compute acceptance condition by combining two acceptance conditions for the same argument a
      Parameters:
      condition1 - some condition for the argument a
      condition2 - some condition for the argument a
    • SimpleAttackConstraint

      public SimpleAttackConstraint(SimpleAttackConstraint condition1, SimpleAttackConstraint condition2, boolean toDNF)
      compute acceptance condition by combining two acceptance conditions for the same argument a after combining the acceptance condition is transformed into DNF this leads to better computability in later steps see: thesis.util.ModelComputation
      Parameters:
      condition1 - some condition for the argument a
      condition2 - some condition for the argument a
      toDNF - true if acceptance condition should be transformed to DNF
  • Method Details

    • getCondition

      public AssociativePlFormula getCondition()
      return the acceptance condition
      Specified by:
      getCondition in interface AttackConstraint<AssociativePlFormula>
      Returns:
      the condition
    • getArgument

      public Argument getArgument()
      return the argument the condition is for
      Specified by:
      getArgument in interface AttackConstraint<AssociativePlFormula>
      Returns:
      the argument
    • getConditionForArgument

      public AssociativePlFormula getConditionForArgument(Argument arg, Input input)
      compute the acceptance condition with respect to the labeling and its semantics for the given argument
      Parameters:
      arg - some argument
      input - some input labeling
      Returns:
      the acceptance condition for arg wrt. the input labeling
    • getOptionalCondition

      public AssociativePlFormula getOptionalCondition(Collection<Argument> arguments)
      compute the optional acceptance condition for this argument based on its acceptance condition
      Parameters:
      arguments - the set of all arguments
      Returns:
      the optional acceptance condition of this argument
    • toString

      public String toString()
      Overrides:
      toString in class Object