Package de.learnlib.algorithm.ttt.base
Class BaseTTTDiscriminationTree<I,D>
- java.lang.Object
-
- de.learnlib.datastructure.discriminationtree.model.AbstractDiscriminationTree<Word<I>,I,D,TTTState<I,D>,AbstractBaseDTNode<I,D>>
-
- de.learnlib.algorithm.ttt.base.BaseTTTDiscriminationTree<I,D>
-
- Type Parameters:
I
- input symbol type
- All Implemented Interfaces:
Iterable<AbstractBaseDTNode<I,D>>
,FiniteRepresentation
,Graph<AbstractBaseDTNode<I,D>,Map.Entry<D,AbstractBaseDTNode<I,D>>>
,IndefiniteGraph<AbstractBaseDTNode<I,D>,Map.Entry<D,AbstractBaseDTNode<I,D>>>
,IndefiniteSimpleGraph<AbstractBaseDTNode<I,D>>
,SimpleGraph<AbstractBaseDTNode<I,D>>
public class BaseTTTDiscriminationTree<I,D> extends AbstractDiscriminationTree<Word<I>,I,D,TTTState<I,D>,AbstractBaseDTNode<I,D>>
The discrimination tree data structure.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface net.automatalib.graph.Graph
Graph.IntAbstraction<E extends Object>
-
-
Field Summary
-
Fields inherited from class de.learnlib.datastructure.discriminationtree.model.AbstractDiscriminationTree
oracle
-
-
Constructor Summary
Constructors Constructor Description BaseTTTDiscriminationTree(MembershipOracle<I,D> oracle, AbstractBaseDTNode<I,D> root)
BaseTTTDiscriminationTree(MembershipOracle<I,D> oracle, Supplier<? extends AbstractBaseDTNode<I,D>> supplier)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DefaultQuery<I,D>
buildQuery(AbstractBaseDTNode<I,D> node, Word<I> prefix)
VisualizationHelper<AbstractBaseDTNode<I,D>,Map.Entry<D,AbstractBaseDTNode<I,D>>>
getVisualizationHelper()
AbstractBaseDTNode<I,D>
sift(AbstractBaseDTNode<I,D> start, Word<I> prefix)
AbstractBaseDTNode<I,D>
sift(AbstractBaseDTNode<I,D> start, Word<I> prefix, boolean hard)
List<AbstractBaseDTNode<I,D>>
sift(List<AbstractBaseDTNode<I,D>> starts, List<Word<I>> prefixes)
List<AbstractBaseDTNode<I,D>>
sift(List<AbstractBaseDTNode<I,D>> starts, List<Word<I>> prefixes, boolean hard)
AbstractBaseDTNode<I,D>
sift(Word<I> word, boolean hard)
Sifts an access sequence provided by an object into the tree, starting at the root.-
Methods inherited from class de.learnlib.datastructure.discriminationtree.model.AbstractDiscriminationTree
getNodes, getOutgoingEdges, getRoot, getTarget, lcaInfo, leastCommonAncestor, setOracle, sift, sift, sift
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.automatalib.graph.Graph
getAdjacentNodes, getOutgoingEdgesIterator
-
Methods inherited from interface net.automatalib.graph.IndefiniteGraph
getAdjacentNodesIterator, getEdgesBetween
-
Methods inherited from interface net.automatalib.graph.IndefiniteSimpleGraph
createDynamicNodeMapping, createStaticNodeMapping, isConnected
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface net.automatalib.graph.SimpleGraph
iterator, nodeIDs, size
-
-
-
-
Constructor Detail
-
BaseTTTDiscriminationTree
public BaseTTTDiscriminationTree(MembershipOracle<I,D> oracle, Supplier<? extends AbstractBaseDTNode<I,D>> supplier)
-
BaseTTTDiscriminationTree
public BaseTTTDiscriminationTree(MembershipOracle<I,D> oracle, AbstractBaseDTNode<I,D> root)
-
-
Method Detail
-
sift
public AbstractBaseDTNode<I,D> sift(Word<I> word, boolean hard)
Sifts an access sequence provided by an object into the tree, starting at the root. This can either be a "soft" sift, which stops either at the leaf or at the first temporary node, or a "hard" sift, stopping only at a leaf.- Parameters:
word
- the object providing the access sequencehard
- flag, whether this should be a soft or a hard sift- Returns:
- the leaf resulting from the sift operation
-
sift
public AbstractBaseDTNode<I,D> sift(AbstractBaseDTNode<I,D> start, Word<I> prefix, boolean hard)
-
sift
public List<AbstractBaseDTNode<I,D>> sift(List<AbstractBaseDTNode<I,D>> starts, List<Word<I>> prefixes, boolean hard)
-
sift
public AbstractBaseDTNode<I,D> sift(AbstractBaseDTNode<I,D> start, Word<I> prefix)
-
sift
public List<AbstractBaseDTNode<I,D>> sift(List<AbstractBaseDTNode<I,D>> starts, List<Word<I>> prefixes)
-
buildQuery
protected DefaultQuery<I,D> buildQuery(AbstractBaseDTNode<I,D> node, Word<I> prefix)
- Specified by:
buildQuery
in classAbstractDiscriminationTree<Word<I>,I,D,TTTState<I,D>,AbstractBaseDTNode<I,D>>
-
getVisualizationHelper
public VisualizationHelper<AbstractBaseDTNode<I,D>,Map.Entry<D,AbstractBaseDTNode<I,D>>> getVisualizationHelper()
- Specified by:
getVisualizationHelper
in interfaceGraph<I,D>
- Specified by:
getVisualizationHelper
in interfaceSimpleGraph<I>
- Overrides:
getVisualizationHelper
in classAbstractDiscriminationTree<Word<I>,I,D,TTTState<I,D>,AbstractBaseDTNode<I,D>>
-
-