Module net.automatalib.core
Package net.automatalib.automaton.impl
Class UniversalCompactDet<I,SP,TP>
java.lang.Object
net.automatalib.automaton.base.AbstractCompact<I,T,SP,TP>
net.automatalib.automaton.base.AbstractCompactDeterministic<I,CompactTransition<TP>,SP,TP>
net.automatalib.automaton.impl.UniversalCompactDet<I,SP,TP>
- Type Parameters:
I- input symbol typeSP- state property typeTP- transition property type
- All Implemented Interfaces:
Iterable<Integer>,SupportsGrowingAlphabet<I>,DeterministicAbstractions.FullIntAbstraction<CompactTransition<TP>>,DeterministicAbstractions.IntAbstraction<CompactTransition<TP>>,DeterministicAbstractions.StateIntAbstraction<I,,CompactTransition<TP>> MutableDeterministicAbstractions.FullIntAbstraction<CompactTransition<TP>,,SP, TP> MutableDeterministicAbstractions.IntAbstraction<CompactTransition<TP>,,SP, TP> MutableDeterministicAbstractions.StateIntAbstraction<I,,CompactTransition<TP>, SP, TP> SimpleDeterministicAbstractions.FullIntAbstraction,SimpleDeterministicAbstractions.IntAbstraction,SimpleDeterministicAbstractions.StateIntAbstraction<I>,UniversalDeterministicAbstractions.FullIntAbstraction<CompactTransition<TP>,,SP, TP> UniversalDeterministicAbstractions.IntAbstraction<CompactTransition<TP>,,SP, TP> UniversalDeterministicAbstractions.StateIntAbstraction<I,,CompactTransition<TP>, SP, TP> Automaton<Integer,,I, CompactTransition<TP>> FiniteRepresentation,InitialState<Integer>,InitialStates<Integer>,InputAlphabetHolder<I>,StateIDs<Integer>,StateLocalInput<Integer,,I> DeterministicAutomaton<Integer,,I, CompactTransition<TP>> FiniteAlphabetAutomaton<Integer,,I, CompactTransition<TP>> MutableAutomaton<Integer,,I, CompactTransition<TP>, SP, TP> MutableDeterministic<Integer,,I, CompactTransition<TP>, SP, TP> SimpleAutomaton<Integer,,I> SimpleDeterministicAutomaton<Integer,,I> UniversalAutomaton<Integer,,I, CompactTransition<TP>, SP, TP> UniversalDeterministicAutomaton<Integer,,I, CompactTransition<TP>, SP, TP> UniversalFiniteAlphabetAutomaton<Integer,,I, CompactTransition<TP>, SP, TP> GraphViewable,DeterministicTransitionSystem<Integer,,I, CompactTransition<TP>> SimpleDTS<Integer,,I> SimpleTS<Integer,,I> TransitionSystem<Integer,,I, CompactTransition<TP>> UniversalDTS<Integer,,I, CompactTransition<TP>, SP, TP> UniversalTransitionSystem<Integer,I, CompactTransition<TP>, SP, TP>
- Direct Known Subclasses:
CompactSST,UniversalCompactDetAutomaton
public class UniversalCompactDet<I,SP,TP>
extends AbstractCompactDeterministic<I,CompactTransition<TP>,SP,TP>
A default implementation for
AbstractCompactDeterministic that uses CompactTransition as transition
type and supports various types of state and transition properties.-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class net.automatalib.automaton.base.AbstractCompact
AbstractCompact.PayloadNested classes/interfaces inherited from interface net.automatalib.automaton.Automaton
Automaton.RegularAutomaton<S,I, T> Nested classes/interfaces inherited from interface net.automatalib.automaton.MutableAutomaton
MutableAutomaton.RegularAutomaton<S,I, T, SP, TP> Nested classes/interfaces inherited from interface net.automatalib.automaton.MutableDeterministic
MutableDeterministic.RegularAutomaton<S,I, T, SP, TP> Nested classes/interfaces inherited from interface net.automatalib.automaton.UniversalAutomaton
UniversalAutomaton.RegularAutomaton<S,I, T, SP, TP> -
Field Summary
Fields inherited from class net.automatalib.automaton.base.AbstractCompact
DEFAULT_INIT_CAPACITY, DEFAULT_RESIZE_FACTOR, INVALID_STATEFields inherited from interface net.automatalib.automaton.abstraction.SimpleDeterministicAbstractions.IntAbstraction
INVALID_STATE -
Constructor Summary
ConstructorsModifierConstructorDescriptionUniversalCompactDet(Alphabet<I> alphabet) UniversalCompactDet(Alphabet<I> alphabet, int stateCapacity) UniversalCompactDet(Alphabet<I> alphabet, int stateCapacity, float resizeFactor) protectedUniversalCompactDet(Alphabet<I> alphabet, UniversalCompactDet<?, SP, TP> other) -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()Removes all states and transitions.createTransition(int successor, TP property) intgetIntSuccessor(CompactTransition<TP> transition) Retrieves the (abstracted) successor of a transition object.getStateProperty(int state) Retrieves the state property of a given (abstracted) state.getTransition(int state, int input) Retrieves the outgoing transition for an (abstracted) source state and (abstracted) input symbol, or returnsnullif the automaton has no transition for this state and input.getTransitionProperty(CompactTransition<TP> transition) Retrieves the transition property for the given state.voidremoveAllTransitions(Integer state) voidsetStateProperty(int state, SP property) voidsetTransition(int state, int input, int successor, @Nullable TP property) voidsetTransition(int state, int input, @Nullable CompactTransition<TP> transition) voidsetTransitionProperty(CompactTransition<TP> transition, TP property) protected voidImplementing classes should override this method in order to react to changes to the layout of their array-based state data, e.g. due to calls toMutableAutomaton.addState().protected voidImplementing 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 toMutableAutomaton.addState()orAbstractCompact.addAlphabetSymbol(Object).Methods inherited from class net.automatalib.automaton.base.AbstractCompactDeterministic
addIntInitialState, createTransition, fullIntAbstraction, getInitialState, getIntInitialState, getLocalInputs, getSuccessor, getSuccessor, getTransition, getTransition, setInitialState, setInitialState, setTransition, setTransition, setTransition, stateIntAbstractionMethods inherited from class net.automatalib.automaton.base.AbstractCompact
addAlphabetSymbol, addIntState, addState, getInputAlphabet, getState, getStateId, getStateProperty, getStates, getSymbolIndex, numInputs, setStateProperty, size, stateIDs, toId, toMemoryIndex, toState, updateStateStorage, updateTransitionStorage, updateTransitionStorage, updateTransitionStorageMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.automatalib.automaton.abstraction.DeterministicAbstractions.FullIntAbstraction
getSuccessorMethods inherited from interface net.automatalib.ts.DeterministicTransitionSystem
getSuccessor, getSuccessors, getTransitions, powersetViewMethods inherited from interface net.automatalib.automaton.FiniteAlphabetAutomaton
getTransitions, graphViewMethods inherited from interface net.automatalib.automaton.concept.InitialState
getInitialStatesMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface net.automatalib.automaton.MutableAutomaton
addInitialState, addInitialState, addState, addState, addTransition, addTransitions, copyTransition, setStatePropertyMethods inherited from interface net.automatalib.automaton.MutableDeterministic
addTransition, fullIntAbstraction, removeAllTransitions, removeTransition, setInitial, setTransition, setTransitionsMethods inherited from interface net.automatalib.automaton.abstraction.MutableDeterministicAbstractions.IntAbstraction
addIntInitialState, addIntState, addIntStateMethods inherited from interface net.automatalib.automaton.simple.SimpleAutomaton
createDynamicStateMapping, createStaticStateMapping, getStates, iterator, size, stateIDsMethods inherited from interface net.automatalib.automaton.abstraction.SimpleDeterministicAbstractions.FullIntAbstraction
numInputsMethods inherited from interface net.automatalib.ts.simple.SimpleDTS
getState, getStates, getSuccessor, getSuccessorsMethods inherited from interface net.automatalib.ts.simple.SimpleTS
getSuccessorsMethods inherited from interface net.automatalib.automaton.UniversalAutomaton
transitionGraphViewMethods inherited from interface net.automatalib.automaton.abstraction.UniversalDeterministicAbstractions.FullIntAbstraction
getTransitionPropertyMethods inherited from interface net.automatalib.automaton.abstraction.UniversalDeterministicAbstractions.StateIntAbstraction
getTransitionPropertyMethods inherited from interface net.automatalib.ts.UniversalDTS
getTransitionPropertyMethods inherited from interface net.automatalib.automaton.UniversalFiniteAlphabetAutomaton
transitionGraphViewMethods inherited from interface net.automatalib.ts.UniversalTransitionSystem
getStateProperty
-
Constructor Details
-
UniversalCompactDet
-
UniversalCompactDet
-
UniversalCompactDet
-
UniversalCompactDet
-
-
Method Details
-
getTransition
Description copied from interface:DeterministicAbstractions.FullIntAbstractionRetrieves the outgoing transition for an (abstracted) source state and (abstracted) input symbol, or returnsnullif the automaton has no transition for this state and input.- Parameters:
state- the integer representing the source stateinput- the integer representing the input symbol- Returns:
- the outgoing transition, or
null
-
getIntSuccessor
Description copied from interface:DeterministicAbstractions.IntAbstractionRetrieves the (abstracted) successor of a transition object.- Parameters:
transition- the transition object- Returns:
- the integer representing the successor of the given transition
-
setStateProperty
- Specified by:
setStatePropertyin interfaceMutableDeterministicAbstractions.IntAbstraction<I,SP, TP> - Specified by:
setStatePropertyin classAbstractCompact<I,CompactTransition<TP>, SP, TP>
-
setTransitionProperty
-
createTransition
-
removeAllTransitions
-
setTransition
-
setTransition
-
getStateProperty
Description copied from interface:UniversalDeterministicAbstractions.IntAbstractionRetrieves the state property of a given (abstracted) state.- Specified by:
getStatePropertyin interfaceUniversalDeterministicAbstractions.IntAbstraction<I,SP, TP> - Specified by:
getStatePropertyin classAbstractCompact<I,CompactTransition<TP>, SP, TP> - Parameters:
state- the integer representing the state of which to retrieve the property- Returns:
- the property for the given state
-
getTransitionProperty
Description copied from interface:UniversalTransitionSystemRetrieves the transition property for the given state.- Parameters:
transition- the transition.- Returns:
- the corresponding property.
-
clear
public void clear()Description copied from interface:MutableAutomatonRemoves all states and transitions.- Specified by:
clearin interfaceMutableAutomaton<Integer,I, CompactTransition<TP>, SP, TP> - Overrides:
clearin classAbstractCompactDeterministic<I,CompactTransition<TP>, SP, TP>
-
updateStateStorage
Description copied from class:AbstractCompactImplementing classes should override this method in order to react to changes to the layout of their array-based state data, e.g. due to calls toMutableAutomaton.addState().Subclasses may use one of the
AbstractCompact.updateStateStorage(Object[], 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.- Overrides:
updateStateStoragein classAbstractCompact<I,CompactTransition<TP>, SP, TP> - Parameters:
payload- the payload containing the necessary information for the update operation. This object must be passed as-is to theAbstractCompact.updateStateStorage(Object[], Object, Payload)... methods.
-
updateTransitionStorage
Description copied from class:AbstractCompactImplementing 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 toMutableAutomaton.addState()orAbstractCompact.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.- Overrides:
updateTransitionStoragein classAbstractCompact<I,CompactTransition<TP>, SP, TP> - Parameters:
payload- the payload containing the necessary information for the update operation. This object must be passed as-is to theAbstractCompact.updateTransitionStorage(Object[], IntFunction, Object, Payload)... methods.
-