57 requires isMultiInitialStateNFA < T > || isMultiInitialStateEpsilonNFA < T >
64 requires isDFA < T > || isNFA < T > || isEpsilonNFA < T > || isExtendedNFA < T > || isCompactNFA < T >
65 static T
convert (
const T & fsm );
69requires isMultiInitialStateNFA < T > || isMultiInitialStateEpsilonNFA < T >
78 res.setInputAlphabet ( fsm.getInputAlphabet ( ) );
84 for (
const auto &
q : fsm.getInitialStates ( ) )
87 for (
const auto & t : fsm.getTransitions ( ) )
88 res.addTransition ( t.first.first, t.first.second, t.second );
91 res.setFinalStates ( fsm.getFinalStates ( ) );
97requires isDFA < T > || isNFA < T > || isEpsilonNFA < T > || isExtendedNFA < T > || isCompactNFA < T >
Epsilon nondeterministic finite automaton. Accepts regular languages.
Definition: EpsilonNFA.h:74
Definition: SingleInitialStateEpsilonTransition.h:46
static automaton::EpsilonNFA< typename T::StateType, typename T::SymbolType > convert(const T &fsm)
typename T::StateType StateType
Definition: ToGrammarLeftRG.h:64
typename T::SymbolType SymbolType
Definition: SingleInitialStateEpsilonTransition.h:72
return res
Definition: MinimizeByPartitioning.h:145
q
Definition: SingleInitialStateEpsilonTransition.h:85
StateType q0
Definition: SingleInitialState.h:96
Definition: ToGrammar.h:31
T createUnique(T object, const Alphabets &... alphabets)
Definition: createUnique.hpp:46