15#include <string/LinearString.h>
25 template <
class SymbolType >
33 template <
class SymbolType >
38template <
class SymbolType >
49 oracleAddLetter ( oracleAutomaton, symbol, supplyFunction );
54template <
class SymbolType >
56 unsigned lastState = oracle.
getStates ( ).size ( ) - 1;
57 unsigned newState = lastState + 1;
63 unsigned kState = supplyFunction.at ( lastState );
67 kState = supplyFunction.at ( kState );
70 unsigned supplyState = 0;
72 if ( kState != infinity )
75 supplyFunction.push_back ( supplyState );
Deterministic finite automaton. Accepts regular languages.
Definition: DFA.h:71
const ext::map< ext::pair< StateType, SymbolType >, StateType > & getTransitions() const &
Definition: DFA.h:473
bool addFinalState(StateType state)
Definition: DFA.h:203
const StateType & getInitialState() const &
Definition: DFA.h:105
const ext::set< StateType > & getStates() const &
Definition: DFA.h:134
bool addTransition(StateType from, SymbolType input, StateType to)
Add a transition to the automaton.
Definition: DFA.h:432
bool addState(StateType state)
Definition: DFA.h:154
void setInputAlphabet(ext::set< SymbolType > symbols)
Definition: DFA.h:270
Class extending the vector class from the standard library. Original reason is to allow printing of t...
Definition: vector.hpp:45
Factor oracle automaton string index. Stores a deterministic finite automaton. The automaton is of ex...
Definition: FactorOracleAutomaton.h:49
Linear string.
Definition: LinearString.h:57
const ext::set< SymbolType > & getAlphabet() const &
Definition: LinearString.h:103
const ext::vector< SymbolType > & getContent() const &
Definition: LinearString.h:238
Definition: ExactFactorOracleAutomaton.h:21
static indexes::stringology::FactorOracleAutomaton< SymbolType > construct(const string::LinearString< SymbolType > &pattern)
Definition: ExactFactorOracleAutomaton.h:39
p second
Definition: ToRegExpAlgebraic.h:126
typename T::SymbolType SymbolType
Definition: ReachableStates.h:176
constexpr const T & max(const T &a)
Root case of maximum computation. The maximum from one value is the value itself.
Definition: algorithm.hpp:278
Definition: ArithmeticCompression.h:18