@ParametersAreNonnullByDefault public class BricsDFA extends AbstractBricsAutomaton implements DFA<State,Character>
DFA.
This adapter is backed by the Brics automaton, so changes to the Automaton are reflected. Please note that
any changes which result in a loss of determinism will result in incorrect behavior exposed by this class until
determinism is restored.
AbstractBricsAutomaton.GraphViewUniversalDeterministicAutomaton.FullIntAbstraction<T,SP,TP>, UniversalDeterministicAutomaton.IntAbstraction<T,SP,TP>, UniversalDeterministicAutomaton.StateIntAbstraction<I,T,SP,TP>FiniteStateAcceptor.FSAGraphView<S,I,A extends FiniteStateAcceptor<S,I>>automatonSTATE_PROPERTIES, TRANSITION_PROPERTIES| Constructor and Description |
|---|
BricsDFA(Automaton automaton)
Constructor.
|
BricsDFA(Automaton automaton,
boolean totalize)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
State |
getInitialState() |
State |
getSuccessor(State state,
Character input) |
State |
getTransition(State state,
Character input) |
getBricsAutomaton, getInitialStates, getStates, getTransitions, graphView, isAcceptingclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaccepts, computeOutput, computeStateOutput, computeSuffixOutput, isAcceptingfullIntAbstraction, fullIntAbstraction, stateIntAbstractiongetTransitionPropertygetSuccessors, getTransitions, transToSetgetInitialStates, getState, getStates, getSuccessor, getSuccessors, stateToSettransitionGraphViewgetStateProperty, getSuccessor, getTransitionProperty, isAcceptingpowersetViewcreateStaticStateMapping, getStates, iterator, size, stateIDscreateDynamicStateMapping, getSuccessorsforEach, spliteratorpublic BricsDFA(Automaton automaton)
Automaton is not deterministic, it will be automatically determinized by
invoking Automaton.determinize().
Note: Brics automata may only be partially defined (especially when created from regular expressions). If
you plan to use this wrapper in any structural analysis (e.g. for determining equivalence), consider using
BricsDFA(Automaton, boolean) instead.
automaton - the Brics automaton to wrap.public BricsDFA(Automaton automaton, boolean totalize)
Automaton is not deterministic, it will be automatically determinized by
invoking Automaton.determinize().
If the parameter totalize is set to true, an additional sink state will be added to the automaton
and all otherwise undefined transitions will transition the automaton into the sink. Note: this mutates
the original automaton.
automaton - the Brics automaton to wrap.totalize - flag, indicating whether the automaton should have a total transition function.public State getInitialState()
getInitialState in interface SimpleDTS<State,Character>public State getSuccessor(State state, @Nonnull Character input)
getSuccessor in interface DeterministicTransitionSystem<State,Character,State>getSuccessor in interface SimpleDTS<State,Character>public State getTransition(State state, @Nonnull Character input)
getTransition in interface DeterministicTransitionSystem<State,Character,State>Copyright © 2019. All rights reserved.