I - input symbol typeSP - state property type@ParametersAreNonnullByDefault public abstract class AbstractCompactSimpleDeterministic<I,SP> extends AbstractCompactDeterministic<I,Integer,SP,Void>
AbstractCompactDeterministic for transition-property-less automata. As a
result, transitions may be represented as integers (where a transition object effectively is the successor).
Provides further default implementations for FullIntAbstraction concepts.
AbstractCompact.PayloadMutableDeterministic.FullIntAbstraction<T,SP,TP>, MutableDeterministic.IntAbstraction<T,SP,TP>, MutableDeterministic.StateIntAbstraction<I,T,SP,TP>MutableDeterministic.StateIntAbstraction.DefaultAbstraction<S,I,T,SP,TP,A extends MutableDeterministic<S,I,T,SP,TP>>MutableDeterministic.FullIntAbstraction.DefaultAbstraction<I,T,SP,TP,A extends MutableDeterministic.StateIntAbstraction<I,T,SP,TP>>| Modifier and Type | Field and Description |
|---|---|
protected int[] |
transitions |
DEFAULT_INIT_CAPACITY, DEFAULT_RESIZE_FACTOR, INVALID_STATEINVALID_STATE| Constructor and Description |
|---|
AbstractCompactSimpleDeterministic(Alphabet<I> alphabet,
AbstractCompactSimpleDeterministic<?,?> other) |
AbstractCompactSimpleDeterministic(Alphabet<I> alphabet,
int stateCapacity,
float resizeFactor) |
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
Integer |
createTransition(int successor,
Void property) |
int |
getIntSuccessor(Integer transition) |
Integer |
getState(Iterable<? extends I> input) |
Integer |
getSuccessor(Integer state,
Iterable<? extends I> input) |
Integer |
getTransition(int state,
int input) |
Void |
getTransitionProperty(Integer transition) |
void |
removeAllTransitions(Integer state) |
void |
setTransition(int state,
int inputIdx,
int succ) |
void |
setTransition(int state,
int input,
Integer transition) |
void |
setTransition(int state,
int input,
int successor,
Void property) |
void |
setTransitionProperty(Integer transition,
Void property) |
protected void |
updateTransitionStorage(AbstractCompact.Payload payload)
Implementing classes should override this method in order to react to changes to the layout of their array-based
transition data, e.g. due to calls to
MutableAutomaton.addState() or AbstractCompact.addAlphabetSymbol(Object). |
addIntInitialState, createTransition, fullIntAbstraction, getInitialState, getIntInitialState, getLocalInputs, getStateProperty, getSuccessor, getTransition, getTransition, powersetView, setInitialState, setInitialState, setStateProperty, setTransition, setTransition, setTransition, stateIntAbstractionaddAlphabetSymbol, addIntState, addState, getInputAlphabet, getState, getStateId, getStates, getSymbolIndex, numInputs, setStateProperty, size, stateIDs, toId, toMemoryIndex, toState, updateStateStorage, updateStateStorage, updateTransitionStorage, updateTransitionStorage, updateTransitionStorageclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddTransition, fullIntAbstraction, removeAllTransitions, removeTransition, setInitial, setTransition, setTransitionsgetTransitionPropertygetSuccessor, getSuccessors, getTransitions, transToSetgetInitialStates, getStates, getSuccessors, stateToSetaddInitialState, addInitialState, addState, addState, addTransition, addTransitions, copyTransitiontransitionGraphViewcreateStaticStateMapping, getStates, iterator, size, stateIDsforEach, spliteratorcreateDynamicStateMapping, getSuccessorsgetTransitionPropertygetSuccessoraddIntInitialState, addIntState, addIntState, setStatePropertygetTransitionPropertygetStatePropertygetSuccessornumInputssizetransitionGraphViewgraphViewpublic AbstractCompactSimpleDeterministic(Alphabet<I> alphabet, int stateCapacity, float resizeFactor)
public AbstractCompactSimpleDeterministic(Alphabet<I> alphabet, AbstractCompactSimpleDeterministic<?,?> other)
public Integer getTransition(int state, int input)
protected void updateTransitionStorage(AbstractCompact.Payload payload)
AbstractCompactMutableAutomaton.addState() or AbstractCompact.addAlphabetSymbol(Object).
Subclasses may use one of the AbstractCompact.updateTransitionStorage(Object[], IntFunction, Object, Payload)... methods
to conveniently delegate this task to this base class. This leaves subclasses only with the task to invoke the
provided update methods for each of their local array storages.
updateTransitionStorage in class AbstractCompact<I,Integer,SP,Void>payload - the payload containing the necessary information for the update operation. This object must be passed
as-is to the AbstractCompact.updateTransitionStorage(Object[], IntFunction, Object, Payload)... methods.public void setTransitionProperty(Integer transition, @Nullable Void property)
public void removeAllTransitions(Integer state)
public void setTransition(int state,
int input,
Integer transition)
public void setTransition(int state,
int input,
int successor,
Void property)
public void setTransition(int state,
int inputIdx,
int succ)
public void clear()
public int getIntSuccessor(Integer transition)
Copyright © 2019. All rights reserved.