Package net.automatalib.incremental
Interface IncrementalConstruction<A,I>
-
- Type Parameters:
A
- the automaton model which is constructedI
- input symbol class
- All Known Subinterfaces:
AdaptiveMealyBuilder<I,O>
,IncrementalDFABuilder<I>
,IncrementalMealyBuilder<I,O>
,IncrementalMooreBuilder<I,O>
,MealyBuilder<I,O>
- All Known Implementing Classes:
AbstractIncrementalDFABuilder
,AdaptiveMealyTreeBuilder
,DynamicIncrementalMealyTreeBuilder
,IncrementalDFADAGBuilder
,IncrementalDFATreeBuilder
,IncrementalMealyDAGBuilder
,IncrementalMealyTreeBuilder
,IncrementalMooreDAGBuilder
,IncrementalMooreTreeBuilder
,IncrementalPCDFADAGBuilder
,IncrementalPCDFATreeBuilder
public interface IncrementalConstruction<A,I>
Basic interface for incremental automata constructions. An incremental automaton construction creates an (acyclic) automaton by iterated insertion of example words.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Graph<?,?>
asGraph()
Retrieves a graph view of the current state of the construction.DeterministicTransitionSystem<?,I,?>
asTransitionSystem()
Retrieves a transition system view of the current state of the construction.@Nullable Word<I>
findSeparatingWord(A target, Collection<? extends I> inputs, boolean omitUndefined)
Checks the current state of the construction against a given target model, and returns a word exposing a difference if there is one.boolean
hasDefinitiveInformation(Word<? extends I> word)
Checks whether this class has definitive information about a given word.
-
-
-
Method Detail
-
findSeparatingWord
@Nullable Word<I> findSeparatingWord(A target, Collection<? extends I> inputs, boolean omitUndefined)
Checks the current state of the construction against a given target model, and returns a word exposing a difference if there is one.- Parameters:
target
- the target automaton modelinputs
- the set of input symbols to consideromitUndefined
- if this is set totrue
, then undefined transitions in thetarget
model will be interpreted as "unspecified/don't know" and omitted in the equivalence test. Otherwise, they will be interpreted in the usual manner (e.g., non-accepting sink in case of DFAs).- Returns:
- a separating word, or
null
if no difference could be found.
-
hasDefinitiveInformation
boolean hasDefinitiveInformation(Word<? extends I> word)
Checks whether this class has definitive information about a given word.- Parameters:
word
- the word- Returns:
true
if this class has definitive information about the word,false
otherwise.
-
asGraph
Graph<?,?> asGraph()
Retrieves a graph view of the current state of the construction. The graph model should be backed by the construction, i.e., subsequent changes will be reflected in the graph model.- Returns:
- a graph view on the current state of the construction
-
asTransitionSystem
DeterministicTransitionSystem<?,I,?> asTransitionSystem()
Retrieves a transition system view of the current state of the construction. The transition system model should be backed by the construction, i.e., subsequent changes will be reflected in the transition system.- Returns:
- a transition system view on the current state of the construction
-
-