Public Types | |
typedef Element< S, T > | exp_t |
Type of the argument to provide to the constructor. | |
typedef linearize_element< S, T >::element_t | linear_exp_t |
Types from linearize_element. | |
typedef linearize_element< S, T >::alphabet_t | linear_alphabet_t |
Types from linearize_element. | |
typedef linearize_element< S, T >::letter_t | etiq_t |
Types from linearize_element. | |
Public Member Functions | |
BerrySethiAlgo (const series_t &series, const exp_t &exp) | |
Default constructor. | |
std::set< etiq_t > | delta (const etiq_t &e, const letter_t &l) |
This is the delta function for the constructed automaton. | |
bool | is_initial (const etiq_t &e) const |
Those functions indicates whether a state is final or initial. | |
bool | is_final (const etiq_t &e) const |
Those functions indicates whether a state is final or initial. |
This class should be used only in berry_sethi() and should not be instanciated from elsewhere.
It is derived from MathAutomataConstructor because we want to use the mathematical definition of the Berry-Sethi automaton.
It defines the constructor to give a correct set to MathAutomataConstructor constructor. It also defines is_initial and is_final for a labeled state, and delta function.
FIXME: Check efficiency.
FIXME: Check results of derivation.
|
Default constructor. This is the default constructor for BerrySethiAlgo, it calls the MathAutomataConstructor constructor with the linearized alphabet enriched with an extra letter as the set of states for the resulting automaton.
|