Package net.automatalib.automaton
Interface MutableDeterministic<S,I,T,SP,TP>
-
- Type Parameters:
S- state class.I- input symbol class.T- transition class.SP- state property.TP- transition property.
- All Superinterfaces:
Automaton<S,I,T>,DeterministicAutomaton<S,I,T>,DeterministicTransitionSystem<S,I,T>,FiniteRepresentation,Iterable<S>,MutableAutomaton<S,I,T,SP,TP>,SimpleAutomaton<S,I>,SimpleDeterministicAutomaton<S,I>,SimpleDTS<S,I>,SimpleTS<S,I>,TransitionSystem<S,I,T>,UniversalAutomaton<S,I,T,SP,TP>,UniversalDeterministicAutomaton<S,I,T,SP,TP>,UniversalDTS<S,I,T,SP,TP>,UniversalTransitionSystem<S,I,T,SP,TP>
- All Known Subinterfaces:
MutableDFA<S,I>,MutableMealyMachine<S,I,T,O>,MutableMooreMachine<S,I,T,O>,MutableSubsequentialTransducer<S,I,T,O>,ShrinkableDeterministic<S,I,T,SP,TP>
public interface MutableDeterministic<S,I,T,SP,TP> extends UniversalDeterministicAutomaton<S,I,T,SP,TP>, MutableAutomaton<S,I,T,SP,TP>
Interface for a mutable deterministic automaton.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceMutableDeterministic.FullIntAbstraction<T,SP,TP>Interface forfull integer abstractionsof aMutableDeterministic.static interfaceMutableDeterministic.IntAbstraction<T,SP,TP>Base interface forinteger abstractionsof aMutableDeterministic.static interfaceMutableDeterministic.StateIntAbstraction<I,T,SP,TP>Interface forstate integer abstractionsof aMutableDeterministic.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voidaddTransition(S state, I input, T transition)default MutableDeterministic.FullIntAbstraction<T,SP,TP>fullIntAbstraction(int numInputs, IntFunction<? extends I> symMapping)Retrieves aSimpleDeterministicAutomaton.FullIntAbstractionof this automaton, using the given number of (abstract) inputs and the inputs mapping.default MutableDeterministic.FullIntAbstraction<T,SP,TP>fullIntAbstraction(Alphabet<I> alphabet)Retrieves aSimpleDeterministicAutomaton.FullIntAbstractionof this automaton, using the mapping induced by the given alphabet as the abstraction for the input symbols.default voidremoveAllTransitions(S state, I input)default voidremoveTransition(S state, I input, T transition)default voidsetInitial(S state, boolean initial)voidsetInitialState(@Nullable S state)Sets the initial state to the given state.default voidsetTransition(S state, I input, @Nullable S successor, TP property)Sets the transition for the given state and input symbol to a newly created one.voidsetTransition(S state, I input, @Nullable T transition)Sets the transition for the given state and input symbol.default voidsetTransitions(S state, I input, Collection<? extends T> transitions)default MutableDeterministic.StateIntAbstraction<I,T,SP,TP>stateIntAbstraction()Retrieves aSimpleDeterministicAutomaton.StateIntAbstractionof this automaton.-
Methods inherited from interface net.automatalib.ts.DeterministicTransitionSystem
getSuccessor, getSuccessors, getTransition, getTransitions
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface net.automatalib.automaton.MutableAutomaton
addInitialState, addInitialState, addState, addState, addTransition, addTransitions, clear, copyTransition, createTransition, removeAllTransitions, setStateProperty, setTransitionProperty
-
Methods inherited from interface net.automatalib.automaton.simple.SimpleAutomaton
createDynamicStateMapping, createStaticStateMapping, getStates, iterator, size, stateIDs
-
Methods inherited from interface net.automatalib.ts.simple.SimpleDTS
getInitialState, getInitialStates, getState, getStates, getSuccessor, getSuccessors, getSuccessors
-
Methods inherited from interface net.automatalib.ts.simple.SimpleTS
getSuccessors
-
Methods inherited from interface net.automatalib.ts.TransitionSystem
getSuccessor, powersetView
-
Methods inherited from interface net.automatalib.automaton.UniversalAutomaton
transitionGraphView
-
Methods inherited from interface net.automatalib.ts.UniversalDTS
getTransitionProperty
-
Methods inherited from interface net.automatalib.ts.UniversalTransitionSystem
getStateProperty, getTransitionProperty
-
-
-
-
Method Detail
-
setInitial
default void setInitial(S state, boolean initial)
- Specified by:
setInitialin interfaceMutableAutomaton<S,I,T,SP,TP>
-
setTransitions
default void setTransitions(S state, I input, Collection<? extends T> transitions)
- Specified by:
setTransitionsin interfaceMutableAutomaton<S,I,T,SP,TP>
-
removeTransition
default void removeTransition(S state, I input, T transition)
- Specified by:
removeTransitionin interfaceMutableAutomaton<S,I,T,SP,TP>
-
removeAllTransitions
default void removeAllTransitions(S state, I input)
- Specified by:
removeAllTransitionsin interfaceMutableAutomaton<S,I,T,SP,TP>
-
addTransition
default void addTransition(S state, I input, T transition)
- Specified by:
addTransitionin interfaceMutableAutomaton<S,I,T,SP,TP>
-
setInitialState
void setInitialState(@Nullable S state)
Sets the initial state to the given state. If the current initial state should be unset,nullcan be passed.- Parameters:
state- the new initial state, ornull.
-
setTransition
void setTransition(S state, I input, @Nullable T transition)
Sets the transition for the given state and input symbol.- Parameters:
state- the source stateinput- the triggering input symboltransition- the transition
-
setTransition
default void setTransition(S state, I input, @Nullable S successor, TP property)
Sets the transition for the given state and input symbol to a newly created one.- Parameters:
state- the source stateinput- the triggering input symbolsuccessor- the target stateproperty- the transition's property
-
fullIntAbstraction
default MutableDeterministic.FullIntAbstraction<T,SP,TP> fullIntAbstraction(Alphabet<I> alphabet)
Description copied from interface:SimpleDeterministicAutomatonRetrieves aSimpleDeterministicAutomaton.FullIntAbstractionof this automaton, using the mapping induced by the given alphabet as the abstraction for the input symbols.This method is provided for convenience. It is equivalent to calling
fullIntAbstraction(alphabet.size(), alphabet).- Specified by:
fullIntAbstractionin interfaceDeterministicAutomaton<S,I,T>- Specified by:
fullIntAbstractionin interfaceSimpleDeterministicAutomaton<S,I>- Specified by:
fullIntAbstractionin interfaceUniversalDeterministicAutomaton<S,I,T,SP,TP>- Parameters:
alphabet- the alphabet inducing the abstraction- Returns:
- a
SimpleDeterministicAutomaton.FullIntAbstraction
-
fullIntAbstraction
default MutableDeterministic.FullIntAbstraction<T,SP,TP> fullIntAbstraction(int numInputs, IntFunction<? extends I> symMapping)
Description copied from interface:SimpleDeterministicAutomatonRetrieves aSimpleDeterministicAutomaton.FullIntAbstractionof this automaton, using the given number of (abstract) inputs and the inputs mapping.- Specified by:
fullIntAbstractionin interfaceDeterministicAutomaton<S,I,T>- Specified by:
fullIntAbstractionin interfaceSimpleDeterministicAutomaton<S,I>- Specified by:
fullIntAbstractionin interfaceUniversalDeterministicAutomaton<S,I,T,SP,TP>- Parameters:
numInputs- the number of inputs represented in the full abstractionsymMapping- the mapping from integers in the range[0, numInputs - 1]to input symbols.- Returns:
- a
SimpleDeterministicAutomaton.FullIntAbstraction
-
stateIntAbstraction
default MutableDeterministic.StateIntAbstraction<I,T,SP,TP> stateIntAbstraction()
Description copied from interface:SimpleDeterministicAutomatonRetrieves aSimpleDeterministicAutomaton.StateIntAbstractionof this automaton.- Specified by:
stateIntAbstractionin interfaceDeterministicAutomaton<S,I,T>- Specified by:
stateIntAbstractionin interfaceSimpleDeterministicAutomaton<S,I>- Specified by:
stateIntAbstractionin interfaceUniversalDeterministicAutomaton<S,I,T,SP,TP>- Returns:
- a
SimpleDeterministicAutomaton.StateIntAbstraction
-
-