44 template <
class StateType >
50 if ( finals.count ( a ) == finals.count ( b ) ) {
70 template <
class SymbolType,
class StateType >
83 template <
class SymbolType,
class StateType >
87template <
class SymbolType,
class StateType >
98 if ( transition2 == dfa.
getTransitions ( ).end ( ) || ! undistinguishable2.count (
ext::make_pair ( transition.second, transition2->second ) ) ) {
114template <
class SymbolType,
class StateType >
123 for (
size_t i = 0;
i < transition.first.second.size ( ); ++
i ) {
124 if ( transition.first.second [
i ] == iter . first ) {
126 copy [
i ] = iter.second;
130 if ( transition2 == fta.
getTransitions ( ).end ( ) || ! undistinguishable2.count (
ext::make_pair ( transition.second, transition2->second ) ) ) {
Deterministic finite automaton. Accepts regular languages.
Definition: DFA.h:71
const ext::set< StateType > & getFinalStates() const &
Definition: DFA.h:183
const ext::map< ext::pair< StateType, SymbolType >, StateType > & getTransitions() const &
Definition: DFA.h:473
const ext::set< StateType > & getStates() const &
Definition: DFA.h:134
Nondeterministic finite tree automaton without epsilon transitions. Accepts regular tree languages.
Definition: DFTA.h:74
const ext::map< ext::pair< common::ranked_symbol< SymbolType >, ext::vector< StateType > >, StateType > & getTransitions() const &
Definition: DFTA.h:289
const ext::set< StateType > & getFinalStates() const &
Definition: DFTA.h:154
const ext::set< StateType > & getStates() const &
Definition: DFTA.h:105
Definition: UndistinguishableStates.h:43
static ext::set< ext::pair< StateType, StateType > > undistinguishable(const automaton::DFA< SymbolType, StateType > &dfa)
Definition: UndistinguishableStates.h:88
Definition: ranked_symbol.hpp:20
Class extending the pair class from the standard library. Original reason is to allow printing of the...
Definition: pair.hpp:43
Class extending the vector class from the standard library. Original reason is to allow printing of t...
Definition: vector.hpp:45
typename T::StateType StateType
Definition: ToGrammarLeftRG.h:64
int i
Definition: AllEpsilonClosure.h:118
Definition: ToGrammar.h:31
SliceComp< Ts ... > slice_comp(const Ts &... inst)
Definition: functional.hpp:95
constexpr auto make_pair(T1 &&x, T2 &&y)
Definition: pair.hpp:79