public class Automata extends TS
TS.TransRef<S,I,T>| Constructor and Description |
|---|
Automata() |
| Modifier and Type | Method and Description |
|---|---|
static <S,I> Iterable<TS.TransRef<S,I,?>> |
allDefinedInputs(Automaton<S,I,?> automaton,
Iterable<? extends I> inputs) |
static <S,I> Iterator<TS.TransRef<S,I,?>> |
allDefinedInputsIterator(Automaton<S,I,?> automaton,
Iterable<? extends I> inputs) |
static <S,I> Iterable<TS.TransRef<S,I,?>> |
allUndefinedInputs(Automaton<S,I,?> automaton,
Iterable<? extends I> inputs) |
static <S,I> Iterator<TS.TransRef<S,I,?>> |
allUndefinedInputsIterator(Automaton<S,I,?> automaton,
Iterable<? extends I> inputs) |
static <S,I,T> Graph<S,TransitionEdge<I,T>> |
asGraph(Automaton<S,I,T> automaton,
Collection<? extends I> inputs) |
static <S,I,T,SP,TP> |
asUniversalGraph(UniversalAutomaton<S,I,T,SP,TP> automaton,
Collection<? extends I> inputs) |
static <I> List<Word<I>> |
characterizingSet(UniversalDeterministicAutomaton<?,I,?,?,?> automaton,
Collection<? extends I> inputs)
Computes a characterizing set, and returns it as a
List. |
static <I> void |
characterizingSet(UniversalDeterministicAutomaton<?,I,?,?,?> automaton,
Collection<? extends I> inputs,
Collection<? super Word<I>> result)
Computes a characterizing set for the given automaton.
|
static <I> @Nullable Word<I> |
findSeparatingWord(OneSEVPA<?,I> sevpa1,
OneSEVPA<?,I> sevpa2,
VPDAlphabet<I> inputs) |
static <I> @Nullable Word<I> |
findSeparatingWord(UniversalDeterministicAutomaton<?,I,?,?,?> reference,
UniversalDeterministicAutomaton<?,I,?,?,?> other,
Collection<? extends I> inputs)
Finds a separating word for two automata.
|
static <S,I> @Nullable Word<I> |
findSeparatingWord(UniversalDeterministicAutomaton<S,I,?,?,?> automaton,
S state1,
S state2,
Collection<? extends I> inputs)
Finds a separating word for two states in an automaton.
|
static <I> @Nullable Word<I> |
findShortestSeparatingWord(UniversalDeterministicAutomaton<?,I,?,?,?> reference,
UniversalDeterministicAutomaton<?,I,?,?,?> other,
Collection<? extends I> inputs) |
static <S,I> @Nullable TS.TransRef<S,I,?> |
findUndefinedInput(Automaton<S,I,?> automaton,
Iterable<? extends I> inputs) |
static <I> boolean |
hasUndefinedInput(Automaton<?,I,?> automaton,
Iterable<? extends I> inputs) |
static <I> boolean |
incrementalCharacterizingSet(UniversalDeterministicAutomaton<?,I,?,?,?> automaton,
Collection<? extends I> inputs,
Collection<? extends Word<I>> oldSuffixes,
Collection<? super Word<I>> newSuffixes) |
static <S,I,T,SP,TP,A extends MutableDeterministic<S,I,T,SP,TP>> |
invasiveMinimize(A automaton,
Collection<? extends I> inputs) |
static <S,I,T,SP,TP,SO,TO,A extends MutableDeterministic<SO,? super I,TO,? super SP,? super TP>> |
minimize(UniversalDeterministicAutomaton<S,I,T,SP,TP> automaton,
Collection<? extends I> inputs,
A output) |
static <S,I> List<Word<I>> |
stateCharacterizingSet(UniversalDeterministicAutomaton<S,I,?,?,?> automaton,
Collection<? extends I> inputs,
S state)
Computes a characterizing set for a single state, and returns it as a
List. |
static <S,I> void |
stateCharacterizingSet(UniversalDeterministicAutomaton<S,I,?,?,?> automaton,
Collection<? extends I> inputs,
S state,
Collection<? super Word<I>> result)
Computes a characterizing set for a single state.
|
static <I> List<Word<I>> |
stateCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs)
Convenient method for computing a state cover.
|
static <I> List<Word<I>> |
structuralCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs)
Convenient method for computing a structural cover.
|
static <I> boolean |
testEquivalence(OneSEVPA<?,I> sevpa1,
OneSEVPA<?,I> sevpa2,
VPDAlphabet<I> inputs) |
static <I> boolean |
testEquivalence(UniversalDeterministicAutomaton<?,I,?,?,?> reference,
UniversalDeterministicAutomaton<?,I,?,?,?> other,
Collection<? extends I> inputs) |
static <I> List<Word<I>> |
transitionCover(DeterministicAutomaton<?,I,?> automaton,
Collection<? extends I> inputs)
Convenient method for computing a state cover.
|
allDefinedInputs, allDefinedInputsIterator, allUndefinedTransitions, allUndefinedTransitionsIterator, bfsOrder, bfsOrderIterator, definedInputs, definedInputsIterator, stateProperties, transitionProperties, undefinedInputs, undefinedInputsIteratorpublic static <S,I,T> Graph<S,TransitionEdge<I,T>> asGraph(Automaton<S,I,T> automaton, Collection<? extends I> inputs)
public static <S,I,T,SP,TP,SO,TO,A extends MutableDeterministic<SO,? super I,TO,? super SP,? super TP>> A minimize(UniversalDeterministicAutomaton<S,I,T,SP,TP> automaton, Collection<? extends I> inputs, A output)
public static <S,I,T,SP,TP> UniversalGraph<S,TransitionEdge<I,T>,SP,TransitionEdge.Property<I,TP>> asUniversalGraph(UniversalAutomaton<S,I,T,SP,TP> automaton, Collection<? extends I> inputs)
public static <S,I,T,SP,TP,A extends MutableDeterministic<S,I,T,SP,TP>> A invasiveMinimize(A automaton, Collection<? extends I> inputs)
public static <I> @Nullable Word<I> findShortestSeparatingWord(UniversalDeterministicAutomaton<?,I,?,?,?> reference, UniversalDeterministicAutomaton<?,I,?,?,?> other, Collection<? extends I> inputs)
public static <I> boolean testEquivalence(UniversalDeterministicAutomaton<?,I,?,?,?> reference, UniversalDeterministicAutomaton<?,I,?,?,?> other, Collection<? extends I> inputs)
public static <I> boolean testEquivalence(OneSEVPA<?,I> sevpa1, OneSEVPA<?,I> sevpa2, VPDAlphabet<I> inputs)
public static <I> @Nullable Word<I> findSeparatingWord(UniversalDeterministicAutomaton<?,I,?,?,?> reference, UniversalDeterministicAutomaton<?,I,?,?,?> other, Collection<? extends I> inputs)
I - input symbol typereference - the one automaton to considerother - the other automaton to considerinputs - the input symbols to considernull if no such word could be found.public static <S,I> @Nullable Word<I> findSeparatingWord(UniversalDeterministicAutomaton<S,I,?,?,?> automaton, S state1, S state2, Collection<? extends I> inputs)
S - state typeI - input symbol typeautomaton - the automaton containing the statesstate1 - the one statestate2 - the other stateinputs - the input symbols to considernull if no such word could be foundpublic static <I> @Nullable Word<I> findSeparatingWord(OneSEVPA<?,I> sevpa1, OneSEVPA<?,I> sevpa2, VPDAlphabet<I> inputs)
public static <I> List<Word<I>> characterizingSet(UniversalDeterministicAutomaton<?,I,?,?,?> automaton, Collection<? extends I> inputs)
List.I - input symbol typeautomaton - the automaton for which to determine the characterizing setinputs - the input symbols to considerCharacterizingSetspublic static <I> void characterizingSet(UniversalDeterministicAutomaton<?,I,?,?,?> automaton, Collection<? extends I> inputs, Collection<? super Word<I>> result)
This is a convenience method acting as a shortcut to CharacterizingSets.findCharacterizingSet(
UniversalDeterministicAutomaton, Collection, Collection).
I - input symbol typeautomaton - the automaton for which to determine the characterizing setinputs - the input symbols to considerresult - the collection in which to store the characterizing wordsCharacterizingSetspublic static <I> boolean incrementalCharacterizingSet(UniversalDeterministicAutomaton<?,I,?,?,?> automaton, Collection<? extends I> inputs, Collection<? extends Word<I>> oldSuffixes, Collection<? super Word<I>> newSuffixes)
public static <S,I> List<Word<I>> stateCharacterizingSet(UniversalDeterministicAutomaton<S,I,?,?,?> automaton, Collection<? extends I> inputs, S state)
List.S - state typeI - input symbol typeautomaton - the automaton containing the stateinputs - the input symbols to considerstate - the state for which to determine a characterizing setCharacterizingSetspublic static <S,I> void stateCharacterizingSet(UniversalDeterministicAutomaton<S,I,?,?,?> automaton, Collection<? extends I> inputs, S state, Collection<? super Word<I>> result)
This is a convenience method acting as a shortcut to CharacterizingSets.findCharacterizingSet(
UniversalDeterministicAutomaton, Collection, Object, Collection).
S - state typeI - input symbol typeautomaton - the automaton containing the stateinputs - the input symbols to considerstate - the state for which to determine a characterizing setresult - the collection in which to store the characterizing wordsCharacterizingSetspublic static <I> List<Word<I>> stateCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs)
I - input symbol typeautomaton - the automaton for which the cover should be computedinputs - the set of input symbols allowed in the cover sequencesCovers.stateCover(DeterministicAutomaton, Collection, Collection)public static <I> List<Word<I>> transitionCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs)
I - input symbol typeautomaton - the automaton for which the cover should be computedinputs - the set of input symbols allowed in the cover sequencesCovers.transitionCover(DeterministicAutomaton, Collection, Collection)public static <I> List<Word<I>> structuralCover(DeterministicAutomaton<?,I,?> automaton, Collection<? extends I> inputs)
I - input symbol typeautomaton - the automaton for which the cover should be computedinputs - the set of input symbols allowed in the cover sequencesCovers.structuralCover(DeterministicAutomaton, Collection, Collection)public static <S,I> Iterator<TS.TransRef<S,I,?>> allDefinedInputsIterator(Automaton<S,I,?> automaton, Iterable<? extends I> inputs)
public static <S,I> Iterable<TS.TransRef<S,I,?>> allDefinedInputs(Automaton<S,I,?> automaton, Iterable<? extends I> inputs)
public static <S,I> Iterable<TS.TransRef<S,I,?>> allUndefinedInputs(Automaton<S,I,?> automaton, Iterable<? extends I> inputs)
public static <I> boolean hasUndefinedInput(Automaton<?,I,?> automaton, Iterable<? extends I> inputs)
public static <S,I> @Nullable TS.TransRef<S,I,?> findUndefinedInput(Automaton<S,I,?> automaton, Iterable<? extends I> inputs)
public static <S,I> Iterator<TS.TransRef<S,I,?>> allUndefinedInputsIterator(Automaton<S,I,?> automaton, Iterable<? extends I> inputs)
Copyright © 2020. All rights reserved.