public abstract class FastMutableNondet<S extends FastNondetState<S,T>,I,T,SP,TP> extends AbstractShrinkableAutomaton<S,I,T,SP,TP> implements FiniteAlphabetAutomaton<S,I,T>, UniversalGraph<S,TransitionEdge<I,T>,SP,TransitionEdge.Property<I,TP>>, StateIDs<S>, NodeIDs<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> |
createDynamicNodeMapping() |
<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> |
createStaticNodeMapping() |
<V> MutableMapping<S,V> |
createStaticStateMapping()
Creates a
MutableMapping allowing to associate arbitrary data
with this transition system's states. |
TransitionEdge.Property<I,TP> |
getEdgeProperty(TransitionEdge<I,T> edge)
Retrieves the property of a given edge.
|
Set<S> |
getInitialStates()
Retrieves the set of initial states of the transition system.
|
Alphabet<I> |
getInputAlphabet() |
S |
getNode(int id) |
int |
getNodeId(S node) |
SP |
getNodeProperty(S node)
Retrieves the property of a given node.
|
Collection<S> |
getNodes()
Retrieves an (unmodifiable) collection of the nodes in this graph.
|
Collection<TransitionEdge<I,T>> |
getOutgoingEdges(S node)
Retrieves the outgoing edges of a given node.
|
S |
getState(int id) |
int |
getStateId(S state) |
Collection<S> |
getStates()
Retrieves all states of the transition system.
|
S |
getTarget(TransitionEdge<I,T> edge)
Retrieves, for a given edge, its target node.
|
Collection<T> |
getTransitions(S state,
I input)
Retrieves the transitions that can be triggered by the given
input symbol.
|
NodeIDs<S> |
nodeIDs() |
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() |
removeState, removeState, unlinkStateaddInitialState, addInitialState, addInitialState, addInitialState, addState, addState, addTransition, addTransition, addTransition, addTransition, addTransitions, addTransitions, removeAllTransitions, removeAllTransitions, removeTransition, removeTransitioniterator, iterator, size, size, stateIDscreateDynamicStateMapping, createStaticStateMapping, getStates, getStates, getSuccessors, getSuccessors, getSuccessors, getSuccessors, getSuccessors, getSuccessors, powersetView, powersetViewclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetSuccessor, powersetViewsizegetStates, getSuccessors, getSuccessors, getSuccessorsforEach, iterator, spliteratoraddInitialState, addInitialState, addState, addTransition, addTransition, addTransitions, copyTransition, createTransition, removeAllTransitions, removeTransition, setStateProperty, setTransitionPropertygetStateProperty, getTransitionPropertyprotected Alphabet<I> inputAlphabet
public FastMutableNondet(Alphabet<I> inputAlphabet)
public Collection<S> getStates()
SimpleAutomatongetStates in interface SimpleAutomaton<S extends FastNondetState<S,T>,I>public int getStateId(S state)
getStateId in interface StateIDs<S extends FastNondetState<S,T>>public Set<S> getInitialStates()
SimpleTSgetInitialStates in interface SimpleTS<S extends FastNondetState<S,T>,I>public Collection<T> getTransitions(S state, I input)
TransitionSystemgetTransitions in interface TransitionSystem<S extends FastNondetState<S,T>,I,T>state - the source state.input - the input symbol.null if no transitions
are triggered by this input symbol.public void clear()
MutableAutomatonclear in interface MutableAutomaton<S extends FastNondetState<S,T>,I,T,SP,TP>public S addState(SP property)
MutableAutomatonaddState 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)
ShrinkableAutomatonnull 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 nullpublic 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>stateIDs in class AbstractAutomaton<S extends FastNondetState<S,T>,I,T>public <V> MutableMapping<S,V> createStaticStateMapping()
SimpleTSMutableMapping 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 SimpleTS<S extends FastNondetState<S,T>,I>createStaticStateMapping in class AbstractTS<S extends FastNondetState<S,T>,I,T>public <V> MutableMapping<S,V> createDynamicStateMapping()
SimpleTSMutableMapping 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>createDynamicStateMapping in class AbstractTS<S extends FastNondetState<S,T>,I,T>public <V> MutableMapping<S,V> createStaticNodeMapping()
createStaticNodeMapping in interface IndefiniteGraph<S extends FastNondetState<S,T>,TransitionEdge<I,T>>public <V> MutableMapping<S,V> createDynamicNodeMapping()
createDynamicNodeMapping in interface IndefiniteGraph<S extends FastNondetState<S,T>,TransitionEdge<I,T>>public Collection<S> getNodes()
GraphgetNodes in interface Graph<S extends FastNondetState<S,T>,TransitionEdge<I,T>>public Collection<TransitionEdge<I,T>> getOutgoingEdges(S node)
IndefiniteGraphgetOutgoingEdges in interface IndefiniteGraph<S extends FastNondetState<S,T>,TransitionEdge<I,T>>node - the node.Collection of all outgoing edges, or null if
the node has no outgoing edges.public S getTarget(TransitionEdge<I,T> edge)
IndefiniteGraphgetTarget in interface IndefiniteGraph<S extends FastNondetState<S,T>,TransitionEdge<I,T>>edge - the edge.public NodeIDs<S> nodeIDs()
nodeIDs in interface Graph<S extends FastNondetState<S,T>,TransitionEdge<I,T>>public SP getNodeProperty(S node)
UniversalIndefiniteGraphgetNodeProperty in interface UniversalIndefiniteGraph<S extends FastNondetState<S,T>,TransitionEdge<I,T>,SP,TransitionEdge.Property<I,TP>>node - the nodepublic TransitionEdge.Property<I,TP> getEdgeProperty(TransitionEdge<I,T> edge)
UniversalIndefiniteGraphgetEdgeProperty in interface UniversalIndefiniteGraph<S extends FastNondetState<S,T>,TransitionEdge<I,T>,SP,TransitionEdge.Property<I,TP>>edge - the edgeprotected abstract S createState(SP property)
Copyright © 2015. All Rights Reserved.