Class DialecticalTree


  • public class DialecticalTree
    extends java.lang.Object
    This class implements a node of a dialectical tree from DeLP.
    Author:
    Matthias Thimm
    • Field Detail

      • argument

        private final DelpArgument argument
        The argument in this node
      • parent

        private final DialecticalTree parent
        The parent node; null if this node is a root
      • children

        private final java.util.Set<DialecticalTree> children
        The children of this node; size=0 indicates a leaf
    • Constructor Detail

      • DialecticalTree

        public DialecticalTree​(DelpArgument argument)
        constructor; initializes this dialectical tree node as a root with given argument
        Parameters:
        argument - a DeLP argument
    • Method Detail

      • getDefeaters

        public java.util.Set<DialecticalTree> getDefeaters​(DefeasibleLogicProgram delp,
                                                           ComparisonCriterion comparisonCriterion)
        Computes the set of arguments which are defeaters for the argument in this tree node and returns the corresponding dialectical tree nodes with these defeaters. For the computation of the defeaters the whole argumentation line to this tree node is considered. As a side effect the computed tree nodes are added as children of this node
        Parameters:
        delp - a defeasible logic program
        comparisonCriterion - a comparison criterion.
        Returns:
        the set of defeater nodes of the argument in this node
      • isAcceptable

        public boolean isAcceptable​(DelpArgument argument,
                                    DefeasibleLogicProgram delp,
                                    ComparisonCriterion comparisonCriterion)
        Checks whether the argumentation line composed of the ancestors of this node and the parameter argument is acceptable given the parameter delp
        Parameters:
        argument - a DeLP argument
        delp - a defeasible logic program
        comparisonCriterion - a comparison criterion.
        Returns:
        true if the corresponding argumentation line is acceptable
      • getArgumentationLine

        public java.util.stream.Stream<DelpArgument> getArgumentationLine()
        Returns the argumentation line which is generated by the path from this node to the root (in reverse)
        Returns:
        a stream of arguments denoting the argumentation line
      • getMarking

        public DialecticalTree.Mark getMarking()
        Computes the marking of this node by considering the marking of all child nodes
        Returns:
        one of DialecticalTree.MARK_DEFEATED and DialecticalTree.MARK_UNDEFEATED
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object