Class AbstractDiscriminationTree<DSCR,​I,​O,​D,​N extends AbstractDTNode<DSCR,​O,​D,​N>>

  • Type Parameters:
    DSCR - type of discriminator
    I - input symbol type
    O - output symbol type
    D - data symbol type
    N - node type
    All Implemented Interfaces:
    Iterable<N>, net.automatalib.automaton.concept.FiniteRepresentation, net.automatalib.graph.Graph<N,​Map.Entry<O,​N>>, net.automatalib.graph.IndefiniteGraph<N,​Map.Entry<O,​N>>, net.automatalib.graph.IndefiniteSimpleGraph<N>, net.automatalib.graph.SimpleGraph<N>
    Direct Known Subclasses:
    AbstractWordBasedDiscriminationTree, BaseTTTDiscriminationTree, DTree

    public abstract class AbstractDiscriminationTree<DSCR,​I,​O,​D,​N extends AbstractDTNode<DSCR,​O,​D,​N>>
    extends Object
    implements net.automatalib.graph.Graph<N,​Map.Entry<O,​N>>
    An abstract super class for aggregating some information/functionality for discrimination trees.
    • Constructor Detail

      • AbstractDiscriminationTree

        public AbstractDiscriminationTree​(N root,
                                          MembershipOracle<I,​O> oracle)
    • Method Detail

      • sift

        public N sift​(net.automatalib.word.Word<I> prefix)
      • sift

        public N sift​(N start,
                      net.automatalib.word.Word<I> prefix)
      • sift

        protected N sift​(N start,
                         net.automatalib.word.Word<I> prefix,
                         Predicate<N> continueExploring)
      • sift

        public List<N> sift​(List<N> starts,
                            List<net.automatalib.word.Word<I>> prefixes)
      • sift

        protected List<N> sift​(List<N> starts,
                               List<net.automatalib.word.Word<I>> prefixes,
                               Predicate<N> continueExploring)
      • getRoot

        public N getRoot()
      • leastCommonAncestor

        public N leastCommonAncestor​(N a,
                                     N b)
      • buildQuery

        protected abstract DefaultQuery<I,​O> buildQuery​(N node,
                                                              net.automatalib.word.Word<I> prefix)
      • getNodes

        public Collection<N> getNodes()
        Specified by:
        getNodes in interface net.automatalib.graph.SimpleGraph<DSCR>
      • getOutgoingEdges

        public Collection<Map.Entry<O,​N>> getOutgoingEdges​(N node)
        Specified by:
        getOutgoingEdges in interface net.automatalib.graph.Graph<DSCR,​I>
      • getTarget

        public N getTarget​(Map.Entry<O,​N> edge)
        Specified by:
        getTarget in interface net.automatalib.graph.IndefiniteGraph<DSCR,​I>
      • getVisualizationHelper

        public net.automatalib.visualization.VisualizationHelper<N,​Map.Entry<O,​N>> getVisualizationHelper()
        Specified by:
        getVisualizationHelper in interface net.automatalib.graph.Graph<DSCR,​I>
        Specified by:
        getVisualizationHelper in interface net.automatalib.graph.SimpleGraph<DSCR>