50 template <
class StateType >
56 if ( initials.count ( a ) == initials.count ( b ) ) {
74 template <
class SymbolType,
class StateType >
84 template <
class SymbolType,
class StateType >
87 template <
class SymbolType,
class StateType >
90 template <
class SymbolType,
class StateType >
100 template <
class SymbolType,
class StateType >
110 template <
class SymbolType,
class StateType >
120 template <
class SymbolType,
class StateType >
130 template <
class SymbolType,
class StateType >
134template <
class SymbolType,
class StateType >
139template <
class SymbolType,
class StateType >
156 if ( qTransition.first.second != pTransition.first.second )
179template <
class SymbolType,
class StateType >
184template <
class SymbolType,
class StateType >
198 if ( ! pTransition.first.template is < SymbolType > ( ) )
201 const SymbolType & pSource = pTransition.first.template get < SymbolType > ( );
205 if ( ! qTransition.first.template is < SymbolType > ( ) )
208 const SymbolType & qSource = qTransition.first.template get < SymbolType > ( );
210 if ( qSource != pSource )
237 if ( pTransition.first.template is < SymbolType > ( ) )
244 if ( qTransition.first.template is < SymbolType > ( ) )
270template <
class SymbolType,
class StateType >
275template <
class SymbolType,
class StateType >
292 if ( qTransition.first.first != pTransition.first.first )
295 size_t inRelation = 0;
296 for (
size_t i = 0;
i < pTransition.first.second.size ( ); ++
i ) {
301 if ( inRelation == pTransition.first.second.size ( ) ) {
321template <
class SymbolType,
class StateType >
326template <
class SymbolType,
class StateType >
342 for (
const StateType & state : pTransition.first.second ) {
344 pSource.insert ( lower->second );
349 if ( qTransition.first.first != pTransition.first.first )
353 for (
const StateType & state : qTransition.first.second ) {
355 qSource.insert ( lower->second );
358 if ( pSource == qSource ) {
Deterministic Z-Automaton in Arc-Factored Normal Form. Computation model for unranked regular tree la...
Definition: ArcFactoredDeterministicZAutomaton.h:65
Nondeterministic Z-Automaton in Arc-Factored Normal Form. Computation model for unranked regular tree...
Definition: ArcFactoredNondeterministicZAutomaton.h:67
ext::multimap< ext::variant< SymbolType, ext::pair< StateType, StateType > >, StateType > getTransitionsToState(const StateType &q) const
Definition: ArcFactoredNondeterministicZAutomaton.h:309
const ext::set< StateType > & getStates() const &
Definition: ArcFactoredNondeterministicZAutomaton.h:105
Deterministic finite automaton. Accepts regular languages.
Definition: DFA.h:71
Nondeterministic finite tree automaton without epsilon transitions. Accepts regular tree languages.
Definition: DFTA.h:74
Nondeterministic finite automaton. Accepts regular languages.
Definition: NFA.h:66
const ext::set< StateType > & getStates() const &
Definition: NFA.h:136
ext::multimap< ext::pair< StateType, SymbolType >, StateType > getTransitionsToState(const StateType &to) const
Definition: NFA.h:502
Nondeterministic finite tree automaton without epsilon transitions. Accepts regular tree languages.
Definition: NFTA.h:72
const ext::set< StateType > & getStates() const &
Definition: NFTA.h:110
ext::multimap< ext::pair< common::ranked_symbol< SymbolType >, ext::vector< StateType > >, StateType > getTransitionsToState(const StateType &q) const
Definition: NFTA.h:310
Deterministic unordered finite tree automaton without epsilon transitions. Accepts regular tree langu...
Definition: UnorderedDFTA.h:72
Nondeterministic unordered finite tree automaton without epsilon transitions. Accepts regular tree la...
Definition: UnorderedNFTA.h:72
const ext::set< StateType > & getStates() const &
Definition: UnorderedNFTA.h:110
ext::multimap< ext::pair< common::ranked_symbol< SymbolType >, ext::multiset< StateType > >, StateType > getTransitionsToState(const StateType &q) const
Definition: UnorderedNFTA.h:310
Definition: BackwardBisimulation.h:49
static ext::set< ext::pair< StateType, StateType > > backwardBisimulation(const automaton::DFA< SymbolType, StateType > &fta)
Definition: BackwardBisimulation.h:135
Definition: ranked_symbol.hpp:20
Definition: multiset.hpp:44
Class extending the pair class from the standard library. Original reason is to allow printing of the...
Definition: pair.hpp:43
Implementation of the variant class allowing to store any type of those listed in the template parame...
Definition: variant.hpp:98
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
typename T::SymbolType SymbolType
Definition: ReachableStates.h:176
q
Definition: SingleInitialStateEpsilonTransition.h:85
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