Class BricsNFA
- java.lang.Object
-
- net.automatalib.brics.AbstractBricsAutomaton
-
- net.automatalib.brics.BricsNFA
-
- All Implemented Interfaces:
Iterable<State>
,Automaton<State,Character,State>
,FiniteRepresentation
,Output<Character,Boolean>
,OutputAutomaton<State,Character,State,Boolean>
,SuffixOutput<Character,Boolean>
,FiniteStateAcceptor<State,Character>
,NFA<State,Character>
,SimpleAutomaton<State,Character>
,UniversalAutomaton<State,Character,State,Boolean,Void>
,GraphViewable
,AcceptorTS<State,Character>
,SimpleTS<State,Character>
,TransitionSystem<State,Character,State>
,UniversalTransitionSystem<State,Character,State,Boolean,Void>
public class BricsNFA extends AbstractBricsAutomaton implements NFA<State,Character>
Adapter class for wrapping a Brics automaton as anNFA
.This adapter is backed by the Brics automaton, so changes to the
Automaton
are reflected.As a DFA can be regarded as a special case of an NFA, using this class on a Brics
Automaton
will always work. However, determining successor states for input characters might be much less efficient than when using aBricsDFA
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.automatalib.brics.AbstractBricsAutomaton
AbstractBricsAutomaton.GraphView
-
Nested classes/interfaces inherited from interface net.automatalib.automaton.fsa.FiniteStateAcceptor
FiniteStateAcceptor.FSAGraphView<S,I,A extends FiniteStateAcceptor<S,I>>
-
-
Field Summary
-
Fields inherited from class net.automatalib.brics.AbstractBricsAutomaton
automaton
-
Fields inherited from interface net.automatalib.automaton.fsa.FiniteStateAcceptor
STATE_PROPERTIES, TRANSITION_PROPERTIES
-
-
Method Summary
-
Methods inherited from class net.automatalib.brics.AbstractBricsAutomaton
getBricsAutomaton, getInitialStates, getStates, getTransitions, graphView, isAccepting
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.automatalib.ts.acceptor.AcceptorTS
accepts, getStateProperty, getSuccessor, getTransitionProperty, isAccepting
-
Methods inherited from interface net.automatalib.automaton.fsa.FiniteStateAcceptor
computeOutput, computeSuffixOutput, transitionGraphView
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface net.automatalib.automaton.fsa.NFA
isAccepting
-
Methods inherited from interface net.automatalib.automaton.simple.SimpleAutomaton
createDynamicStateMapping, createStaticStateMapping, getStates, iterator, size, stateIDs
-
Methods inherited from interface net.automatalib.ts.simple.SimpleTS
getInitialStates, getStates, getSuccessors, getSuccessors
-
Methods inherited from interface net.automatalib.ts.TransitionSystem
getSuccessors, getTransitions, powersetView
-
-
-
-
Constructor Detail
-
BricsNFA
public BricsNFA(Automaton automaton)
Constructor.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
BricsNFA(Automaton, boolean)
instead.- Parameters:
automaton
- the Brics automaton to wrap.
-
BricsNFA
public BricsNFA(Automaton automaton, boolean totalize)
Constructor.If the parameter
totalize
is set totrue
, 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 originalautomaton
.- Parameters:
automaton
- the Brics automaton to wrap.totalize
- flag, indicating whether the automaton should have a total transition function.
-
-