Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
|
#include <ext/algorithm>
#include <alib/set>
#include <automaton/FSM/DFA.h>
#include <automaton/FSM/NFA.h>
#include <automaton/FSM/MultiInitialStateNFA.h>
#include <automaton/FSM/MultiInitialStateEpsilonNFA.h>
#include <automaton/FSM/ExtendedNFA.h>
#include <automaton/FSM/EpsilonNFA.h>
#include <automaton/FSM/CompactNFA.h>
#include <label/InitialStateLabel.h>
#include <common/createUnique.hpp>
Go to the source code of this file.
Data Structures | |
class | automaton::simplify::SingleInitialState |
Namespaces | |
namespace | automaton |
namespace | automaton::simplify |
Functions | |
SingleInitialState::ConvertedAutomaton< T > | automaton::simplify::res (q0) |
result | automaton::simplify::setInputAlphabet (fsm.getInputAlphabet()) |
automaton::simplify::for (const StateType &q :fsm.getStates()) res.addState(q) | |
res | automaton::simplify::setFinalStates (fsm.getFinalStates()) |
automaton::simplify::if (! ext::excludes(fsm.getFinalStates().begin(), fsm.getFinalStates().end(), fsm.getInitialStates().begin(), fsm.getInitialStates().end())) res.addFinalState(q0) | |
Variables | |
template<class T > | |
StateType | automaton::simplify::q0 = common::createUnique ( label::InitialStateLabel::instance < StateType > ( ), fsm.getStates ( ) ) |
for(const auto &q :fsm.getInitialStates()) for(const auto &kv | automaton::simplify::for (const auto &t :fsm.getTransitions()) res.addTransition(t.first.first |