Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Data Structures | Static Public Member Functions
automaton::run::Run Class Reference

Implementation of automaton run over its input. More...

#include <Run.h>

Static Public Member Functions

template<class SymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned > > calculateState (const automaton::DFA< SymbolType, StateType > &automaton, const string::LinearString< SymbolType > &string)
 
template<class SymbolType , class StateType >
static ext::tuple< bool, ext::set< StateType >, ext::set< unsigned > > calculateStates (const automaton::NFA< SymbolType, StateType > &automaton, const string::LinearString< SymbolType > &string)
 
template<class SymbolType , class StateType >
static ext::tuple< bool, ext::set< StateType >, ext::set< unsigned > > calculateStates (const automaton::EpsilonNFA< SymbolType, StateType > &automaton, const string::LinearString< SymbolType > &string)
 
template<class SymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned > > calculateState (const automaton::DFTA< SymbolType, StateType > &automaton, const tree::RankedTree< SymbolType > &tree)
 
template<class SymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned > > calculateState (const automaton::UnorderedDFTA< SymbolType, StateType > &automaton, const tree::UnorderedRankedTree< SymbolType > &tree)
 
template<class SymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned > > calculateState (const automaton::ArcFactoredDeterministicZAutomaton< SymbolType, StateType > &automaton, const tree::UnrankedTree< SymbolType > &tree)
 
template<class SymbolType , class StateType >
static ext::tuple< bool, ext::set< StateType >, ext::set< unsigned > > calculateStates (const automaton::NFTA< SymbolType, StateType > &automaton, const tree::RankedTree< SymbolType > &tree)
 
template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > calculateState (const automaton::InputDrivenDPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &automaton, const string::LinearString< InputSymbolType > &string)
 
template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > calculateState (const automaton::VisiblyPushdownDPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &automaton, const string::LinearString< InputSymbolType > &string)
 
template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > calculateState (const automaton::RealTimeHeightDeterministicDPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &automaton, const string::LinearString< InputSymbolType > &string)
 
template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
static ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > calculateState (const automaton::DPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &automaton, const string::LinearString< InputSymbolType > &string)
 
template<class InputSymbolType , class OutputSymbolType , class PushdownStoreSymbolType , class StateType >
static ext::set< ext::tuple< StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType >, ext::deque< OutputSymbolType > > > calculateStates (const automaton::NPDTA< InputSymbolType, OutputSymbolType, PushdownStoreSymbolType, StateType > &automaton, const string::LinearString< InputSymbolType > &string)
 
template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
static ext::set< ext::tuple< StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > > calculateStates (const automaton::NPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &automaton, const string::LinearString< InputSymbolType > &string)
 

Detailed Description

Implementation of automaton run over its input.

Member Function Documentation

◆ calculateState() [1/8]

template<class SymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned > > automaton::run::Run::calculateState ( const automaton::ArcFactoredDeterministicZAutomaton< SymbolType, StateType > &  automaton,
const tree::UnrankedTree< SymbolType > &  tree 
)
static
Here is the call graph for this function:

◆ calculateState() [2/8]

template<class SymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned > > automaton::run::Run::calculateState ( const automaton::DFA< SymbolType, StateType > &  automaton,
const string::LinearString< SymbolType > &  string 
)
static

General automaton run implementation.

Template Parameters
SymbolTypetype of symbols of the string and terminal symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the string where the automaton passed a final state
Here is the call graph for this function:

◆ calculateState() [3/8]

template<class SymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned > > automaton::run::Run::calculateState ( const automaton::DFTA< SymbolType, StateType > &  automaton,
const tree::RankedTree< SymbolType > &  tree 
)
static

\override

Template Parameters
SymbolTypetype of symbols of tree nodes and terminal symbols of the runned automaton
RankTypetype of ranks of tree nodes and terminal symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the tree where the automaton passed a final state (as in the postorder traversal)
Here is the call graph for this function:

◆ calculateState() [4/8]

template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > automaton::run::Run::calculateState ( const automaton::DPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &  automaton,
const string::LinearString< InputSymbolType > &  string 
)
static

\override

Template Parameters
InputSymbolTypetype of symbols of the string and terminal symbols of the runned automaton
PushdownStoreSymbolTypetype of pushdown store symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the tree where the automaton passed a final state deque representing the final content of the pushdown store
Here is the call graph for this function:

◆ calculateState() [5/8]

template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > automaton::run::Run::calculateState ( const automaton::InputDrivenDPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &  automaton,
const string::LinearString< InputSymbolType > &  string 
)
static

\override

Template Parameters
InputSymbolTypetype of symbols of the string and terminal symbols of the runned automaton
PushdownStoreSymbolTypetype of pushdown store symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the tree where the automaton passed a final state deque representing the final content of the pushdown store
Here is the call graph for this function:

◆ calculateState() [6/8]

template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > automaton::run::Run::calculateState ( const automaton::RealTimeHeightDeterministicDPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &  automaton,
const string::LinearString< InputSymbolType > &  string 
)
static

\override

Template Parameters
InputSymbolTypetype of symbols of the string and terminal symbols of the runned automaton
PushdownStoreSymbolTypetype of pushdown store symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the tree where the automaton passed a final state deque representing the final content of the pushdown store
Here is the call graph for this function:

◆ calculateState() [7/8]

template<class SymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned > > automaton::run::Run::calculateState ( const automaton::UnorderedDFTA< SymbolType, StateType > &  automaton,
const tree::UnorderedRankedTree< SymbolType > &  tree 
)
static

\override

Template Parameters
SymbolTypetype of symbols of tree nodes and terminal symbols of the runned automaton
RankTypetype of ranks of tree nodes and terminal symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the tree where the automaton passed a final state (as in the postorder traversal)
Here is the call graph for this function:

◆ calculateState() [8/8]

template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
ext::tuple< bool, StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > automaton::run::Run::calculateState ( const automaton::VisiblyPushdownDPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &  automaton,
const string::LinearString< InputSymbolType > &  string 
)
static

\override

Template Parameters
InputSymbolTypetype of symbols of the string and terminal symbols of the runned automaton
PushdownStoreSymbolTypetype of pushdown store symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise state where the run stopped set of indexes to the tree where the automaton passed a final deque representing the final content of the pushdown store
Here is the call graph for this function:

◆ calculateStates() [1/5]

template<class SymbolType , class StateType >
ext::tuple< bool, ext::set< StateType >, ext::set< unsigned > > automaton::run::Run::calculateStates ( const automaton::EpsilonNFA< SymbolType, StateType > &  automaton,
const string::LinearString< SymbolType > &  string 
)
static

\override

Template Parameters
SymbolTypetype of symbols of the string and terminal symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise set of states where the run stopped set of indexes to the string where the automaton passed a final state
Here is the call graph for this function:

◆ calculateStates() [2/5]

template<class SymbolType , class StateType >
ext::tuple< bool, ext::set< StateType >, ext::set< unsigned > > automaton::run::Run::calculateStates ( const automaton::NFA< SymbolType, StateType > &  automaton,
const string::LinearString< SymbolType > &  string 
)
static

\override

Template Parameters
SymbolTypetype of symbols of the string and terminal symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise set of states where the run stopped set of indexes to the string where the automaton passed a final state
Here is the call graph for this function:

◆ calculateStates() [3/5]

template<class SymbolType , class StateType >
ext::tuple< bool, ext::set< StateType >, ext::set< unsigned > > automaton::run::Run::calculateStates ( const automaton::NFTA< SymbolType, StateType > &  automaton,
const tree::RankedTree< SymbolType > &  tree 
)
static

\override

Template Parameters
SymbolTypetype of symbols of tree nodes and terminal symbols of the runned automaton
RankTypetype of ranks of tree nodes and terminal symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise set of states where the run stopped set of indexes to the tree where the automaton passed a final state (as in the postorder traversal)
Here is the call graph for this function:

◆ calculateStates() [4/5]

template<class InputSymbolType , class PushdownStoreSymbolType , class StateType >
ext::set< ext::tuple< StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType > > > automaton::run::Run::calculateStates ( const automaton::NPDA< InputSymbolType, PushdownStoreSymbolType, StateType > &  automaton,
const string::LinearString< InputSymbolType > &  string 
)
static

\override

Template Parameters
InputSymbolTypetype of input symbols of the string and terminal symbols of the runned automaton
PushdownStoreSymbolTypetype of pushdown store symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise set of states where the run stopped set of symbol vectors representing the translations
Here is the call graph for this function:

◆ calculateStates() [5/5]

template<class InputSymbolType , class OutputSymbolType , class PushdownStoreSymbolType , class StateType >
ext::set< ext::tuple< StateType, ext::set< unsigned >, ext::deque< PushdownStoreSymbolType >, ext::deque< OutputSymbolType > > > automaton::run::Run::calculateStates ( const automaton::NPDTA< InputSymbolType, OutputSymbolType, PushdownStoreSymbolType, StateType > &  automaton,
const string::LinearString< InputSymbolType > &  string 
)
static

\override

Template Parameters
InputSymbolTypetype of input symbols of the string and terminal symbols of the runned automaton
OutputSymbolTypetype of output symbols of the runned automaton
PushdownStoreSymbolTypetype of pushdown store symbols of the runned automaton
StateTypetype of states of the runned automaton
Parameters
automatonthe runned automaton
stringthe input of the automaton
Returns
tuple of true if the automaton does not fail to find transitions, false otherwise set of states where the run stopped set of symbol vectors representing the translations
Here is the call graph for this function:

The documentation for this class was generated from the following file: