public abstract class FastMutableNondet<S extends FastNondetState<S,T>,I,T,SP,TP> extends Object implements ShrinkableAutomaton<S,I,T,SP,TP>, UniversalFiniteAlphabetAutomaton<S,I,T,SP,TP>, StateIDs<S>
Modifier and Type | Field and Description |
---|---|
protected Alphabet<I> |
inputAlphabet |
Constructor and Description |
---|
FastMutableNondet(Alphabet<I> inputAlphabet) |
Modifier and Type | Method and Description |
---|---|
S |
addState(SP property)
Adds a state to the automaton.
|
void |
clear()
Removes all states and transitions.
|
<V> MutableMapping<S,V> |
createDynamicStateMapping()
Creates a
MutableMapping allowing to associate arbitrary data
with this transition system's states. |
protected abstract S |
createState(SP property) |
<V> MutableMapping<S,V> |
createStaticStateMapping()
Creates a
MutableMapping allowing to associate arbitrary data
with this transition system's states. |
Set<S> |
getInitialStates()
Retrieves the set of initial states of the transition system.
|
Alphabet<I> |
getInputAlphabet() |
S |
getState(int id) |
int |
getStateId(S state) |
Collection<S> |
getStates()
Retrieves all states of the transition system.
|
Collection<T> |
getTransitions(S state,
I input)
Retrieves the transitions that can be triggered by the given
input symbol.
|
void |
removeAllTransitions(S state) |
void |
removeState(S state,
S replacement)
Removes a state from the automaton.
|
void |
setInitial(S state,
boolean initial) |
void |
setTransitions(S state,
I input,
Collection<? extends T> transitions) |
StateIDs<S> |
stateIDs() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
removeState, unlinkState
addInitialState, addInitialState, addState, addTransition, addTransition, addTransitions, copyTransition, createTransition, removeAllTransitions, removeTransition, setStateProperty, setTransitionProperty
transitionGraphView
iterator, size
forEach, spliterator
getStateProperty, getTransitionProperty
getSuccessor, getSuccessors, powersetView
getStates, getSuccessors, getSuccessors
transitionGraphView
graphView
public Collection<S> getStates()
SimpleAutomaton
getStates
in interface SimpleAutomaton<S extends FastNondetState<S,T>,I>
public S getState(int id)
public int getStateId(S state)
getStateId
in interface StateIDs<S extends FastNondetState<S,T>>
public Set<S> getInitialStates()
SimpleTS
getInitialStates
in interface SimpleTS<S extends FastNondetState<S,T>,I>
public Collection<T> getTransitions(S state, I input)
TransitionSystem
The return value must not be null
; if there
are no transitions triggered by the specified input,
Collections.emptySet()
should be returned.
getTransitions
in interface TransitionSystem<S extends FastNondetState<S,T>,I,T>
state
- the source state.input
- the input symbol.public void clear()
MutableAutomaton
clear
in interface MutableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>
public S addState(SP property)
MutableAutomaton
addState
in interface MutableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>
public void setInitial(S state, boolean initial)
setInitial
in interface MutableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>
public void removeState(S state, S replacement)
ShrinkableAutomaton
null
replacement is given, then
this method behaves like the above ShrinkableAutomaton.removeState(Object)
.removeState
in interface ShrinkableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>
state
- the state to removereplacement
- the replacement state, or null
public void removeAllTransitions(S state)
removeAllTransitions
in interface MutableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>
public void setTransitions(S state, I input, Collection<? extends T> transitions)
setTransitions
in interface MutableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>
public Alphabet<I> getInputAlphabet()
getInputAlphabet
in interface InputAlphabetHolder<I>
public StateIDs<S> stateIDs()
stateIDs
in interface SimpleAutomaton<S extends FastNondetState<S,T>,I>
public <V> MutableMapping<S,V> createStaticStateMapping()
SimpleTS
MutableMapping
allowing to associate arbitrary data
with this transition system's states. The returned mapping is however
only guaranteed to work correctly if the transition system is not
modified.createStaticStateMapping
in interface SimpleAutomaton<S extends FastNondetState<S,T>,I>
createStaticStateMapping
in interface SimpleTS<S extends FastNondetState<S,T>,I>
public <V> MutableMapping<S,V> createDynamicStateMapping()
SimpleTS
MutableMapping
allowing to associate arbitrary data
with this transition system's states. The returned mapping maintains
the association even when the transition system is modified.createDynamicStateMapping
in interface SimpleTS<S extends FastNondetState<S,T>,I>
Copyright © 2015. All rights reserved.