10#include <ext/iostream>
46 template<
class SymbolType,
class StateType>
49 template<
class SymbolType,
class StateType>
52 template<
class SymbolType,
class StateType>
55 template<
class SymbolType,
class StateType>
58 template<
class SymbolType,
class StateType>
61 template<
class SymbolType,
class StateType>
64 template<
class SymbolType,
class StateType>
67 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
70 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
73 template<
class SymbolType,
class StateType>
76 template<
class SymbolType,
class StateType>
79 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
82 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
85 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
88 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
91 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
94 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
97 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
100 template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
103 template<
class SymbolType,
class StateType>
110 static std::string
diff (
const T & a,
const T & b );
113template<
class SymbolType,
class StateType>
115 out <<
"AutomataComparer" << std::endl;
118 out <<
"FinalStates" << std::endl;
124 out <<
"Initial state" << std::endl;
127 out <<
"---" << std::endl;
132 out <<
"InputAlphabet" << std::endl;
138 out <<
"States" << std::endl;
144 out <<
"Transitions" << std::endl;
150template<
class SymbolType,
class StateType>
152 out <<
"AutomataComparer" << std::endl;
155 out <<
"FinalStates" << std::endl;
161 out <<
"InitialStates" << std::endl;
167 out <<
"InputAlphabet" << std::endl;
173 out <<
"States" << std::endl;
179 out <<
"Transitions" << std::endl;
185template<
class SymbolType,
class StateType>
187 out <<
"AutomataComparer" << std::endl;
190 out <<
"FinalStates" << std::endl;
196 out <<
"Initial state" << std::endl;
199 out <<
"---" << std::endl;
204 out <<
"InputAlphabet" << std::endl;
210 out <<
"States" << std::endl;
216 out <<
"Transitions" << std::endl;
222template<
class SymbolType,
class StateType>
224 out <<
"AutomataComparer" << std::endl;
227 out <<
"FinalStates" << std::endl;
233 out <<
"Initial state" << std::endl;
236 out <<
"---" << std::endl;
241 out <<
"InputAlphabet" << std::endl;
247 out <<
"States" << std::endl;
253 out <<
"Transitions" << std::endl;
259template<
class SymbolType,
class StateType>
261 out <<
"AutomataComparer" << std::endl;
264 out <<
"FinalStates" << std::endl;
270 out <<
"Initial state" << std::endl;
273 out <<
"---" << std::endl;
278 out <<
"InputAlphabet" << std::endl;
284 out <<
"States" << std::endl;
290 out <<
"Transitions" << std::endl;
296template<
class SymbolType,
class StateType>
298 out <<
"AutomataComparer" << std::endl;
301 out <<
"FinalStates" << std::endl;
307 out <<
"Initial state" << std::endl;
310 out <<
"---" << std::endl;
315 out <<
"InputAlphabet" << std::endl;
321 out <<
"States" << std::endl;
327 out <<
"Transitions" << std::endl;
333template<
class SymbolType,
class StateType>
335 out <<
"AutomataComparer" << std::endl;
338 out <<
"FinalStates" << std::endl;
344 out <<
"Initial state" << std::endl;
347 out <<
"---" << std::endl;
352 out <<
"InputAlphabet" << std::endl;
358 out <<
"States" << std::endl;
364 out <<
"Transitions" << std::endl;
370template<
class SymbolType,
class StateType>
372 out <<
"AutomataComparer" << std::endl;
375 out <<
"FinalStates" << std::endl;
381 out <<
"InputAlphabet" << std::endl;
387 out <<
"States" << std::endl;
393 out <<
"Transitions" << std::endl;
399template<
class SymbolType,
class StateType>
401 out <<
"AutomataComparer" << std::endl;
404 out <<
"FinalStates" << std::endl;
410 out <<
"InputAlphabet" << std::endl;
416 out <<
"States" << std::endl;
422 out <<
"Transitions" << std::endl;
428template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
430 out <<
"AutomataComparer" << std::endl;
433 out <<
"FinalStates" << std::endl;
439 out <<
"Initial state" << std::endl;
442 out <<
"---" << std::endl;
447 out <<
"InputAlphabet" << std::endl;
453 out <<
"StackAlphabet" << std::endl;
459 out <<
"InitialSymbol" << std::endl;
462 out <<
"---" << std::endl;
467 out <<
"States" << std::endl;
473 out <<
"Transitions" << std::endl;
479template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
481 out <<
"AutomataComparer" << std::endl;
484 out <<
"FinalStates" << std::endl;
490 out <<
"Initial state" << std::endl;
493 out <<
"---" << std::endl;
498 out <<
"InputAlphabet" << std::endl;
504 out <<
"StackAlphabet" << std::endl;
510 out <<
"InitialSymbol" << std::endl;
513 out <<
"---" << std::endl;
518 out <<
"States" << std::endl;
524 out <<
"Transitions" << std::endl;
530template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
532 out <<
"AutomataComparer" << std::endl;
535 out <<
"FinalStates" << std::endl;
541 out <<
"Initial state" << std::endl;
544 out <<
"---" << std::endl;
549 out <<
"InputAlphabet" << std::endl;
555 out <<
"StackAlphabet" << std::endl;
561 out <<
"InitialSymbol" << std::endl;
564 out <<
"---" << std::endl;
569 out <<
"States" << std::endl;
575 out <<
"PushdownStoreOperations" << std::endl;
581 out <<
"Transitions" << std::endl;
587template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
589 out <<
"AutomataComparer" << std::endl;
592 out <<
"FinalStates" << std::endl;
598 out <<
"Initial state" << std::endl;
601 out <<
"---" << std::endl;
606 out <<
"InputAlphabet" << std::endl;
612 out <<
"StackAlphabet" << std::endl;
618 out <<
"InitialSymbol" << std::endl;
621 out <<
"---" << std::endl;
626 out <<
"States" << std::endl;
632 out <<
"PushdownStoreOperations" << std::endl;
638 out <<
"Transitions" << std::endl;
644template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
646 out <<
"AutomataComparer" << std::endl;
649 out <<
"FinalStates" << std::endl;
655 out <<
"Initial state" << std::endl;
658 out <<
"---" << std::endl;
663 out <<
"CallInputAlphabet" << std::endl;
669 out <<
"ReturnInputAlphabet" << std::endl;
675 out <<
"LocalInputAlphabet" << std::endl;
681 out <<
"StackAlphabet" << std::endl;
687 out <<
"BottomOfTheStackSymbol" << std::endl;
690 out <<
"---" << std::endl;
695 out <<
"States" << std::endl;
701 out <<
"CallTransitions" << std::endl;
707 out <<
"ReturnTransitions" << std::endl;
713 out <<
"LocalTransitions" << std::endl;
719template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
721 out <<
"AutomataComparer" << std::endl;
724 out <<
"FinalStates" << std::endl;
730 out <<
"Initial states" << std::endl;
736 out <<
"CallInputAlphabet" << std::endl;
742 out <<
"ReturnInputAlphabet" << std::endl;
748 out <<
"LocalInputAlphabet" << std::endl;
754 out <<
"StackAlphabet" << std::endl;
760 out <<
"BottomOfTheStackSymbol" << std::endl;
763 out <<
"---" << std::endl;
768 out <<
"States" << std::endl;
774 out <<
"CallTransitions" << std::endl;
780 out <<
"ReturnTransitions" << std::endl;
786 out <<
"LocalTransitions" << std::endl;
792template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
794 out <<
"AutomataComparer" << std::endl;
797 out <<
"FinalStates" << std::endl;
803 out <<
"Initial state" << std::endl;
806 out <<
"---" << std::endl;
811 out <<
"InputAlphabet" << std::endl;
817 out <<
"StackAlphabet" << std::endl;
823 out <<
"BottomOfTheStackSymbol" << std::endl;
826 out <<
"---" << std::endl;
831 out <<
"States" << std::endl;
837 out <<
"CallTransitions" << std::endl;
843 out <<
"ReturnTransitions" << std::endl;
849 out <<
"LocalTransitions" << std::endl;
855template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
857 out <<
"AutomataComparer" << std::endl;
860 out <<
"FinalStates" << std::endl;
866 out <<
"Initial states" << std::endl;
872 out <<
"InputAlphabet" << std::endl;
878 out <<
"StackAlphabet" << std::endl;
884 out <<
"BottomOfTheStackSymbol" << std::endl;
887 out <<
"---" << std::endl;
892 out <<
"States" << std::endl;
898 out <<
"CallTransitions" << std::endl;
904 out <<
"ReturnTransitions" << std::endl;
910 out <<
"LocalTransitions" << std::endl;
916template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
918 out <<
"AutomataComparer" << std::endl;
921 out <<
"FinalStates" << std::endl;
927 out <<
"Initial state" << std::endl;
930 out <<
"---" << std::endl;
935 out <<
"InputAlphabet" << std::endl;
941 out <<
"StackAlphabet" << std::endl;
947 out <<
"InitialSymbol" << std::endl;
950 out <<
"---" << std::endl;
955 out <<
"States" << std::endl;
961 out <<
"Transitions" << std::endl;
967template<
class InputSymbolType,
class PushdownStoreSymbolType,
class StateType>
969 out <<
"AutomataComparer" << std::endl;
972 out <<
"FinalStates" << std::endl;
978 out <<
"Initial state" << std::endl;
981 out <<
"---" << std::endl;
986 out <<
"InputAlphabet" << std::endl;
992 out <<
"StackAlphabet" << std::endl;
998 out <<
"InitialSymbol" << std::endl;
1001 out <<
"---" << std::endl;
1006 out <<
"States" << std::endl;
1012 out <<
"Transitions" << std::endl;
1018template<
class SymbolType,
class StateType>
1020 out <<
"AutomataComparer" << std::endl;
1023 out <<
"Blank symbol" << std::endl;
1026 out <<
"---" << std::endl;
1031 out <<
"FinalStates" << std::endl;
1037 out <<
"Initial state" << std::endl;
1040 out <<
"---" << std::endl;
1045 out <<
"InputAlphabet" << std::endl;
1051 out <<
"States" << std::endl;
1057 out <<
"TapeAlphabet" << std::endl;
1063 out <<
"Transitions" << std::endl;
1072 AutomatonDiff::printDiff(a, b, out);
Compact deterministic finite automaton. Accepts regular languages. The automaton has a list of symbol...
Definition: CompactDFA.h:73
const ext::map< ext::pair< StateType, ext::vector< SymbolType > >, StateType > & getTransitions() const &
Definition: CompactDFA.h:483
const ext::set< StateType > & getFinalStates() const &
Definition: CompactDFA.h:192
const StateType & getInitialState() const &
Definition: CompactDFA.h:114
const ext::set< StateType > & getStates() const &
Definition: CompactDFA.h:143
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: CompactDFA.h:241
Compact nondeterministic finite automaton. Accepts regular languages. The automaton has a list of sym...
Definition: CompactNFA.h:78
const ext::set< StateType > & getFinalStates() const &
Definition: CompactNFA.h:232
const ext::multimap< ext::pair< StateType, ext::vector< SymbolType > >, StateType > & getTransitions() const &
Definition: CompactNFA.h:555
const ext::set< StateType > & getStates() const &
Definition: CompactNFA.h:183
const StateType & getInitialState() const &
Definition: CompactNFA.h:154
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: CompactNFA.h:281
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 StateType & getInitialState() const &
Definition: DFA.h:105
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: DFA.h:232
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< common::ranked_symbol< SymbolType > > & getInputAlphabet() const &
Definition: DFTA.h:203
const ext::set< StateType > & getFinalStates() const &
Definition: DFTA.h:154
const ext::set< StateType > & getStates() const &
Definition: DFTA.h:105
Deterministic pushdown automaton. Accepts subset of context free languages.
Definition: DPDA.h:78
const PushdownStoreSymbolType & getInitialSymbol() const &
Definition: DPDA.h:301
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: DPDA.h:243
const ext::set< InputSymbolType > & getInputAlphabet() const &
Definition: DPDA.h:330
const ext::set< StateType > & getStates() const &
Definition: DPDA.h:145
const ext::map< ext::tuple< StateType, common::symbol_or_epsilon< InputSymbolType >, ext::vector< PushdownStoreSymbolType > >, ext::pair< StateType, ext::vector< PushdownStoreSymbolType > > > & getTransitions() const &
Definition: DPDA.h:682
const ext::set< StateType > & getFinalStates() const &
Definition: DPDA.h:194
const StateType & getInitialState() const &
Definition: DPDA.h:116
Epsilon nondeterministic finite automaton. Accepts regular languages.
Definition: EpsilonNFA.h:74
const ext::set< StateType > & getStates() const &
Definition: EpsilonNFA.h:158
const ext::set< StateType > & getFinalStates() const &
Definition: EpsilonNFA.h:207
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: EpsilonNFA.h:256
const ext::multimap< ext::pair< StateType, common::symbol_or_epsilon< SymbolType > >, StateType > & getTransitions() const &
Definition: EpsilonNFA.h:666
const StateType & getInitialState() const &
Definition: EpsilonNFA.h:129
Extended nondeterministic finite automaton. Accepts regular languages. The automaton has a regular ex...
Definition: ExtendedNFA.h:80
const StateType & getInitialState() const &
Definition: ExtendedNFA.h:156
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: ExtendedNFA.h:283
const ext::multimap< ext::pair< StateType, regexp::UnboundedRegExpStructure< SymbolType > >, StateType > & getTransitions() const &
Definition: ExtendedNFA.h:581
const ext::set< StateType > & getStates() const &
Definition: ExtendedNFA.h:185
const ext::set< StateType > & getFinalStates() const &
Definition: ExtendedNFA.h:234
Nondeterministic finite automaton with multiple initial states. Accepts regular languages.
Definition: MultiInitialStateNFA.h:69
const ext::set< StateType > & getInitialStates() const &
Definition: MultiInitialStateNFA.h:117
const ext::set< StateType > & getStates() const &
Definition: MultiInitialStateNFA.h:166
const ext::multimap< ext::pair< StateType, SymbolType >, StateType > & getTransitions() const &
Definition: MultiInitialStateNFA.h:520
const ext::set< StateType > & getFinalStates() const &
Definition: MultiInitialStateNFA.h:215
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: MultiInitialStateNFA.h:264
Nondeterministic finite automaton. Accepts regular languages.
Definition: NFA.h:66
const ext::set< StateType > & getStates() const &
Definition: NFA.h:136
const StateType & getInitialState() const &
Definition: NFA.h:107
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: NFA.h:234
const ext::multimap< ext::pair< StateType, SymbolType >, StateType > & getTransitions() const &
Definition: NFA.h:484
const ext::set< StateType > & getFinalStates() const &
Definition: NFA.h:185
Nondeterministic finite tree automaton without epsilon transitions. Accepts regular tree languages.
Definition: NFTA.h:72
const ext::set< StateType > & getFinalStates() const &
Definition: NFTA.h:159
const ext::multimap< ext::pair< common::ranked_symbol< SymbolType >, ext::vector< StateType > >, StateType > & getTransitions() const &
Definition: NFTA.h:294
const ext::set< StateType > & getStates() const &
Definition: NFTA.h:110
const ext::set< common::ranked_symbol< SymbolType > > & getInputAlphabet() const &
Definition: NFTA.h:208
const PushdownStoreSymbolType & getInitialSymbol() const &
Definition: NPDA.h:304
const ext::set< StateType > & getFinalStates() const &
Definition: NPDA.h:197
const StateType & getInitialState() const &
Definition: NPDA.h:119
const ext::set< StateType > & getStates() const &
Definition: NPDA.h:148
const ext::multimap< ext::tuple< StateType, common::symbol_or_epsilon< InputSymbolType >, ext::vector< PushdownStoreSymbolType > >, ext::pair< StateType, ext::vector< PushdownStoreSymbolType > > > & getTransitions() const &
Definition: NPDA.h:644
const ext::set< InputSymbolType > & getInputAlphabet() const &
Definition: NPDA.h:333
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: NPDA.h:246
Deterministic single tape turing machine. Accepts recursive languages.
Definition: OneTapeDTM.h:71
const StateType & getInitialState() const &
Definition: OneTapeDTM.h:108
const ext::set< StateType > & getFinalStates() const &
Definition: OneTapeDTM.h:186
const ext::set< SymbolType > & getTapeAlphabet() const &
Definition: OneTapeDTM.h:293
const ext::map< ext::pair< StateType, SymbolType >, ext::tuple< StateType, SymbolType, Shift > > & getTransitions() const &
Definition: OneTapeDTM.h:526
const SymbolType & getBlankSymbol() const &
Definition: OneTapeDTM.h:351
const ext::set< SymbolType > & getInputAlphabet() const &
Definition: OneTapeDTM.h:235
const ext::set< StateType > & getStates() const &
Definition: OneTapeDTM.h:137
Deterministic real time height deterministic pushdown automaton. Accepts subset of context free langu...
Definition: RealTimeHeightDeterministicDPDA.h:89
const ext::set< InputSymbolType > & getInputAlphabet() const &
Definition: RealTimeHeightDeterministicDPDA.h:363
const StateType & getInitialState() const &
Definition: RealTimeHeightDeterministicDPDA.h:149
const ext::map< ext::pair< StateType, common::symbol_or_epsilon< InputSymbolType > >, ext::pair< StateType, PushdownStoreSymbolType > > & getCallTransitions() const &
Definition: RealTimeHeightDeterministicDPDA.h:1062
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: RealTimeHeightDeterministicDPDA.h:276
const ext::map< ext::pair< StateType, common::symbol_or_epsilon< InputSymbolType > >, StateType > & getLocalTransitions() const &
Definition: RealTimeHeightDeterministicDPDA.h:1082
const ext::map< ext::tuple< StateType, common::symbol_or_epsilon< InputSymbolType >, PushdownStoreSymbolType >, StateType > & getReturnTransitions() const &
Definition: RealTimeHeightDeterministicDPDA.h:1072
const ext::set< StateType > & getStates() const &
Definition: RealTimeHeightDeterministicDPDA.h:178
const ext::set< StateType > & getFinalStates() const &
Definition: RealTimeHeightDeterministicDPDA.h:227
const PushdownStoreSymbolType & getBottomOfTheStackSymbol() const &
Definition: RealTimeHeightDeterministicDPDA.h:334
Nondeterministic real time height deterministic pushdown automaton. Accepts subset of context free la...
Definition: RealTimeHeightDeterministicNPDA.h:76
const ext::set< StateType > & getInitialStates() const &
Definition: RealTimeHeightDeterministicNPDA.h:175
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: RealTimeHeightDeterministicNPDA.h:273
const PushdownStoreSymbolType & getBottomOfTheStackSymbol() const &
Definition: RealTimeHeightDeterministicNPDA.h:331
const ext::set< StateType > & getStates() const &
Definition: RealTimeHeightDeterministicNPDA.h:126
const ext::multimap< ext::pair< StateType, common::symbol_or_epsilon< InputSymbolType > >, StateType > & getLocalTransitions() const &
Definition: RealTimeHeightDeterministicNPDA.h:1004
const ext::multimap< ext::pair< StateType, common::symbol_or_epsilon< InputSymbolType > >, ext::pair< StateType, PushdownStoreSymbolType > > & getCallTransitions() const &
Definition: RealTimeHeightDeterministicNPDA.h:984
const ext::set< StateType > & getFinalStates() const &
Definition: RealTimeHeightDeterministicNPDA.h:224
const ext::multimap< ext::tuple< StateType, common::symbol_or_epsilon< InputSymbolType >, PushdownStoreSymbolType >, StateType > & getReturnTransitions() const &
Definition: RealTimeHeightDeterministicNPDA.h:994
const ext::set< InputSymbolType > & getInputAlphabet() const &
Definition: RealTimeHeightDeterministicNPDA.h:360
Deterministic pushdown automaton requiring a symbol pop from pushdown store on each transition use....
Definition: SinglePopDPDA.h:78
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: SinglePopDPDA.h:243
const StateType & getInitialState() const &
Definition: SinglePopDPDA.h:116
const ext::set< InputSymbolType > & getInputAlphabet() const &
Definition: SinglePopDPDA.h:330
const ext::set< StateType > & getFinalStates() const &
Definition: SinglePopDPDA.h:194
const ext::set< StateType > & getStates() const &
Definition: SinglePopDPDA.h:145
const PushdownStoreSymbolType & getInitialSymbol() const &
Definition: SinglePopDPDA.h:301
const ext::map< ext::tuple< StateType, common::symbol_or_epsilon< InputSymbolType >, PushdownStoreSymbolType >, ext::pair< StateType, ext::vector< PushdownStoreSymbolType > > > & getTransitions() const &
Definition: SinglePopDPDA.h:639
Definition: SinglePopNPDA.h:72
const StateType & getInitialState() const &
Definition: SinglePopNPDA.h:110
const ext::set< InputSymbolType > & getInputAlphabet() const &
Definition: SinglePopNPDA.h:324
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: SinglePopNPDA.h:237
const PushdownStoreSymbolType & getInitialSymbol() const &
Definition: SinglePopNPDA.h:295
const ext::multimap< ext::tuple< StateType, common::symbol_or_epsilon< InputSymbolType >, PushdownStoreSymbolType >, ext::pair< StateType, ext::vector< PushdownStoreSymbolType > > > & getTransitions() const &
Definition: SinglePopNPDA.h:617
const ext::set< StateType > & getStates() const &
Definition: SinglePopNPDA.h:139
const ext::set< StateType > & getFinalStates() const &
Definition: SinglePopNPDA.h:188
Deterministic visibly pushdown automaton. Accepts subset of context free languages.
Definition: VisiblyPushdownDPDA.h:86
const PushdownStoreSymbolType & getBottomOfTheStackSymbol() const &
Definition: VisiblyPushdownDPDA.h:331
const ext::set< InputSymbolType > & getCallInputAlphabet() const &
Definition: VisiblyPushdownDPDA.h:360
const ext::map< ext::tuple< StateType, InputSymbolType, PushdownStoreSymbolType >, StateType > & getReturnTransitions() const &
Definition: VisiblyPushdownDPDA.h:899
const ext::map< ext::pair< StateType, InputSymbolType >, StateType > & getLocalTransitions() const &
Definition: VisiblyPushdownDPDA.h:909
const ext::set< StateType > & getFinalStates() const &
Definition: VisiblyPushdownDPDA.h:224
const ext::set< InputSymbolType > & getLocalInputAlphabet() const &
Definition: VisiblyPushdownDPDA.h:476
const ext::map< ext::pair< StateType, InputSymbolType >, ext::pair< StateType, PushdownStoreSymbolType > > & getCallTransitions() const &
Definition: VisiblyPushdownDPDA.h:889
const ext::set< StateType > & getStates() const &
Definition: VisiblyPushdownDPDA.h:175
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: VisiblyPushdownDPDA.h:273
const ext::set< InputSymbolType > & getReturnInputAlphabet() const &
Definition: VisiblyPushdownDPDA.h:418
const StateType & getInitialState() const &
Definition: VisiblyPushdownDPDA.h:146
Nondeterministic visibly pushdown automaton. Accepts subset of context free languages.
Definition: VisiblyPushdownNPDA.h:81
const PushdownStoreSymbolType & getBottomOfTheStackSymbol() const &
Definition: VisiblyPushdownNPDA.h:336
const ext::set< StateType > & getInitialStates() const &
Definition: VisiblyPushdownNPDA.h:131
const ext::set< PushdownStoreSymbolType > & getPushdownStoreAlphabet() const &
Definition: VisiblyPushdownNPDA.h:278
const ext::set< StateType > & getStates() const &
Definition: VisiblyPushdownNPDA.h:180
const ext::multimap< ext::pair< StateType, InputSymbolType >, StateType > & getLocalTransitions() const &
Definition: VisiblyPushdownNPDA.h:884
const ext::set< InputSymbolType > & getCallInputAlphabet() const &
Definition: VisiblyPushdownNPDA.h:365
const ext::set< StateType > & getFinalStates() const &
Definition: VisiblyPushdownNPDA.h:229
const ext::set< InputSymbolType > & getReturnInputAlphabet() const &
Definition: VisiblyPushdownNPDA.h:423
const ext::multimap< ext::tuple< StateType, InputSymbolType, PushdownStoreSymbolType >, StateType > & getReturnTransitions() const &
Definition: VisiblyPushdownNPDA.h:874
const ext::multimap< ext::pair< StateType, InputSymbolType >, ext::pair< StateType, PushdownStoreSymbolType > > & getCallTransitions() const &
Definition: VisiblyPushdownNPDA.h:864
const ext::set< InputSymbolType > & getLocalInputAlphabet() const &
Definition: VisiblyPushdownNPDA.h:481
static bool compare(const automaton::DFA< SymbolType, StateType > &a, const automaton::DFA< SymbolType, StateType > &b)
Definition: AutomatonCompare.h:95
Definition: AutomatonDiff.h:44
static void diff(const T &a, const T &b, ext::ostream &out)
Definition: AutomatonDiff.h:1070
static void setDiff(ext::ostream &out, const ext::set< T > &a, const ext::set< T > &b)
Definition: DiffAux.h:33
static void mapDiff(ext::ostream &out, const ext::map< T, R > &a, const ext::map< T, R > &b)
Definition: DiffAux.h:84
std::string str() const &
Definition: sstream.cpp:29
Definition: AutomatonCompare.h:29