public class IncrementalMealyTreeBuilder<I,O> extends AbstractIncrementalMealyBuilder<I,O>
Modifier and Type | Class and Description |
---|---|
class |
IncrementalMealyTreeBuilder.GraphView |
class |
IncrementalMealyTreeBuilder.TransitionSystemView |
AbstractIncrementalMealyBuilder.AbstractGraphView<I,O,N,E>
inputAlphabet
Constructor and Description |
---|
IncrementalMealyTreeBuilder(Alphabet<I> inputAlphabet) |
Modifier and Type | Method and Description |
---|---|
IncrementalMealyTreeBuilder.GraphView |
asGraph()
Retrieves a graph view of the current state of the construction.
|
IncrementalMealyTreeBuilder.TransitionSystemView |
asTransitionSystem()
Retrieves a transition system view of the current state of the construction.
|
Word<I> |
findSeparatingWord(MealyMachine<?,I,?,O> 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.
|
void |
insert(Word<? extends I> input,
Word<? extends O> outputWord)
Incorporates a pair of input/output words into the stored information.
|
boolean |
lookup(Word<? extends I> word,
List<? super O> output)
Retrieves the output word for the given input word.
|
getInputAlphabet, lookup
public boolean lookup(Word<? extends I> word, List<? super O> output)
IncrementalMealyBuilder
word
- the input wordoutput
- a consumer for constructing the output wordword.length() ==
output.size()
will hold), false otherwise.public void insert(Word<? extends I> input, Word<? extends O> outputWord) throws ConflictException
IncrementalMealyBuilder
input
- the input wordoutputWord
- the corresponding output wordConflictException
- if this information conflicts with information already storedpublic IncrementalMealyTreeBuilder.GraphView asGraph()
IncrementalConstruction
public IncrementalMealyTreeBuilder.TransitionSystemView asTransitionSystem()
IncrementalConstruction
public Word<I> findSeparatingWord(MealyMachine<?,I,?,O> target, Collection<? extends I> inputs, boolean omitUndefined)
IncrementalConstruction
target
- the target automaton modelinputs
- the set of input symbols to consideromitUndefined
- if this is set to true, then undefined transitions in the target 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).public boolean hasDefinitiveInformation(Word<? extends I> word)
IncrementalConstruction
hasDefinitiveInformation
in interface IncrementalConstruction<MealyMachine<?,I,?,O>,I>
hasDefinitiveInformation
in class AbstractIncrementalMealyBuilder<I,O>
word
- the wordCopyright © 2018. All rights reserved.