Class OrderingSemanticsReasoner


  • public class OrderingSemanticsReasoner
    extends java.lang.Object
    Reasoner for ordering semantics
    Author:
    Lars Bengel
    • Constructor Detail

      • OrderingSemanticsReasoner

        public OrderingSemanticsReasoner​(OrderingSemantics semantics)
                                  throws java.lang.NoSuchMethodException
        create a reasoner for the given ordering semantics
        Parameters:
        semantics - an ordering semantics
        Throws:
        java.lang.NoSuchMethodException - should never happen
      • OrderingSemanticsReasoner

        public OrderingSemanticsReasoner​(OrderingSemantics semantics1,
                                         OrderingSemantics semantics2)
                                  throws java.lang.NoSuchMethodException
        create a reasoner for the given combination of ordering semantics
        Parameters:
        semantics1 - an ordering semantics
        semantics2 - an ordering semantics
        Throws:
        java.lang.NoSuchMethodException - should never happen
    • Method Detail

      • getModels

        public DungTheory getModels​(DungTheory theory)
                             throws java.lang.reflect.InvocationTargetException,
                                    java.lang.IllegalAccessException
        compute a meta graph for the ordering of the subsets over the given theory
        Parameters:
        theory - a dung theory
        Returns:
        a graph representing the ordered subsets of theory
        Throws:
        java.lang.reflect.InvocationTargetException - should never happen
        java.lang.IllegalAccessException - should never happen
      • getEmpty

        public java.util.Collection<Argument> getEmpty​(Extension ext,
                                                       DungTheory theory)
        dummy method used if only one ordering semantics is specified
        Parameters:
        ext - an extension
        theory - a dung theory
        Returns:
        always return empty set
      • getConflicts

        public java.util.Collection<Argument> getConflicts​(Extension ext,
                                                           DungTheory theory)
        computes the set of conflicts occurring inside ext
        Parameters:
        ext - an extension
        theory - a dung theory
        Returns:
        set of conflict in ext
      • getUndefended

        public java.util.Collection<Argument> getUndefended​(Extension ext,
                                                            DungTheory theory)
        computes the set of arguments in ext, which are not defended by ext against outside attackers
        Parameters:
        ext - an extension
        theory - a dung theory
        Returns:
        set of arguments in ext which are not defended by ext
      • getUnattacked

        public java.util.Collection<Argument> getUnattacked​(Extension ext,
                                                            DungTheory theory)
        computes the set of arguments outside of ext, which are not attacked by ext
        Parameters:
        ext - an extension
        theory - a dung theory
        Returns:
        set of arguments in theory \ ext which are not attacked by ext
      • getDefendedNotIn

        public java.util.Collection<Argument> getDefendedNotIn​(Extension ext,
                                                               DungTheory theory)
        computes the set of arguments outside of ext, which are defended by ext
        Parameters:
        ext - an extension
        theory - a dung theory
        Returns:
        set of arguments in theory \ ext which are defended by ext
      • show

        public void show​(DungTheory theory)
                  throws java.lang.reflect.InvocationTargetException,
                         java.lang.IllegalAccessException
        print out table showing the sets according to the given ordering semantics
        Parameters:
        theory - a dung theory
        Throws:
        java.lang.reflect.InvocationTargetException - should never happen
        java.lang.IllegalAccessException - should never happen