Algorithms Library Toolkit
A toolkit for algorithms, especially for algorithms on formal languages
Static Public Member Functions
automaton::generate::RandomizeAutomaton Class Reference

#include <RandomizeAutomaton.h>

Static Public Member Functions

template<class SymbolType , class StateType >
static automaton::EpsilonNFA< SymbolType, StateType > randomize (const automaton::EpsilonNFA< SymbolType, StateType > &fsm)
 
template<class SymbolType , class StateType >
static automaton::MultiInitialStateNFA< SymbolType, StateType > randomize (const automaton::MultiInitialStateNFA< SymbolType, StateType > &fsm)
 
template<class SymbolType , class StateType >
static automaton::NFA< SymbolType, StateType > randomize (const automaton::NFA< SymbolType, StateType > &fsm)
 
template<class SymbolType , class StateType >
static automaton::DFA< SymbolType, StateType > randomize (const automaton::DFA< SymbolType, StateType > &fsm)
 

Detailed Description

Algorithm for random shuffling of the finite automata states. Effectively just renames the states of the FSM using the original state names.

Member Function Documentation

◆ randomize() [1/4]

template<class SymbolType , class StateType >
automaton::DFA< SymbolType, StateType > automaton::generate::RandomizeAutomaton::randomize ( const automaton::DFA< SymbolType, StateType > &  fsm)
static

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Here is the call graph for this function:

◆ randomize() [2/4]

template<class SymbolType , class StateType >
automaton::EpsilonNFA< SymbolType, StateType > automaton::generate::RandomizeAutomaton::randomize ( const automaton::EpsilonNFA< SymbolType, StateType > &  fsm)
static

Shuffle the set of states of the automaton.

Template Parameters
SymbolTypeType of input symbols.
StateTypeType of states.
Parameters
resautomaton to shuffle
Here is the call graph for this function:
Here is the caller graph for this function:

◆ randomize() [3/4]

template<class SymbolType , class StateType >
automaton::MultiInitialStateNFA< SymbolType, StateType > automaton::generate::RandomizeAutomaton::randomize ( const automaton::MultiInitialStateNFA< SymbolType, StateType > &  fsm)
static

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Here is the call graph for this function:

◆ randomize() [4/4]

template<class SymbolType , class StateType >
automaton::NFA< SymbolType, StateType > automaton::generate::RandomizeAutomaton::randomize ( const automaton::NFA< SymbolType, StateType > &  fsm)
static

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Here is the call graph for this function:

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