Interface IncrementalMooreBuilder<I,O>
-
- Type Parameters:
I
- input symbol typeO
- output symbol type
- All Superinterfaces:
IncrementalConstruction<MooreMachine<?,I,?,O>,I>
,SupportsGrowingAlphabet<I>
- All Known Implementing Classes:
IncrementalMooreDAGBuilder
,IncrementalMooreTreeBuilder
public interface IncrementalMooreBuilder<I,O> extends IncrementalConstruction<MooreMachine<?,I,?,O>,I>, SupportsGrowingAlphabet<I>
General interface for incremental Moore builders.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description MooreTransitionSystem<?,I,?,O>
asTransitionSystem()
Retrieves a transition system view of the current state of the construction.default boolean
hasDefinitiveInformation(Word<? extends I> word)
Checks whether this class has definitive information about a given word.void
insert(Word<? extends I> inputWord, Word<? extends O> outputWord)
Incorporates a pair of input/output words into the stored information.default Word<O>
lookup(Word<? extends I> inputWord)
boolean
lookup(Word<? extends I> inputWord, List<? super O> output)
Retrieves the output word for the given input word.-
Methods inherited from interface net.automatalib.incremental.IncrementalConstruction
asGraph, findSeparatingWord
-
Methods inherited from interface net.automatalib.alphabet.SupportsGrowingAlphabet
addAlphabetSymbol
-
-
-
-
Method Detail
-
lookup
boolean lookup(Word<? extends I> inputWord, List<? super O> output)
Retrieves the output word for the given input word. If no definitive information for the input word exists, the output for the longest known prefix will be returned.- Parameters:
inputWord
- the input wordoutput
- a consumer for constructing the output word- Returns:
true
if the information contained was complete (in this case,word.length() == output.size() + 1
will hold),false
otherwise.
-
hasDefinitiveInformation
default boolean hasDefinitiveInformation(Word<? extends I> word)
Description copied from interface:IncrementalConstruction
Checks whether this class has definitive information about a given word.- Specified by:
hasDefinitiveInformation
in interfaceIncrementalConstruction<I,O>
- Parameters:
word
- the word- Returns:
true
if this class has definitive information about the word,false
otherwise.
-
insert
void insert(Word<? extends I> inputWord, Word<? extends O> outputWord)
Incorporates a pair of input/output words into the stored information.- Parameters:
inputWord
- the input wordoutputWord
- the corresponding output word- Throws:
ConflictException
- if this information conflicts with information already stored
-
asTransitionSystem
MooreTransitionSystem<?,I,?,O> asTransitionSystem()
Description copied from interface:IncrementalConstruction
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.- Specified by:
asTransitionSystem
in interfaceIncrementalConstruction<I,O>
- Returns:
- a transition system view on the current state of the construction
-
-