Classes | |
struct | AlphabetSetBase |
Base class for structural elements of alphabets. More... | |
struct | alphabet_traits |
Trait for virtual types of structural elements for alphabets. More... | |
struct | FreeMonoidBase |
Structural element for free monoid. More... | |
struct | FreeMonoidProduct |
Implementation of a monoid which is a product of two free monoids. More... | |
struct | FreeMonoidProductBase |
Structural element for free monoid product. More... | |
struct | MonoidBase |
The base class of all structures that are monoids. More... | |
struct | NumericalSemiring |
The set of semirings implemented with usual operations (+, *). More... | |
struct | mul_kind |
Empty class used as static information to denote the kind of internal operation of a semigroup. More... | |
struct | add_kind |
Empty class used as static information to denote the kind of internal operation of a semigroup. More... | |
struct | SemigroupBase |
Base class of all structures that are semigroups. More... | |
struct | SemiringBase |
Base class for all structures that are semirings. More... | |
struct | SeriesBase |
Structural element of series K<A*> from a free monoid A* to a semiring K. More... | |
struct | series_traits |
Meta information about series. More... | |
struct | TropicalMin |
Static information about the kind of tropical we are confronted with. More... | |
struct | TropicalMax |
Static information about the kind of tropical we are confronted with. More... | |
struct | TropicalSemiring |
Structural element that denotes tropical semiring. More... | |
struct | vcsn::algebra::alphabet_traits< AlphabetSet< L >, std::set< L > > |
Meta information about the mixing of AlphabetSet with std::set. More... | |
struct | AlphabetSet |
Static implementation of alphabet structural element. More... | |
class | AlphabetDecorator |
Decorate a given alphabet implementation with meta-symbols. More... | |
struct | vcsn::algebra::alphabet_traits< AlphabetSet< L >, AlphabetDecorator< L, T > > |
Meta information about the mixing of AlphabetSet with AlphabetDecorator. More... | |
struct | FreeMonoid |
Implementation of a free monoid which aggregates its alphabet. More... | |
class | RationalNumber |
Rational numbers class. More... | |
class | KRatExpToken |
Schrödinger's token for rational expression lexing. More... | |
struct | Lexer |
Lexer class for the rational expression parser. More... | |
struct | Parser |
Parser class used in the parse() function. More... | |
struct | BinaryOp |
BinaryOp is a generic class which symbolised binary operator. More... | |
struct | UnaryOp |
UnaryOp is a generic class which symbolised binary operator. More... | |
struct | Value |
Value is a generic class which symbolised leaf of AST. More... | |
struct | GenericMatcher |
GenericMatcher manages the dispatch of pattern matching. More... | |
struct | vcsn::algebra::DispatchFunction< rat::exp< M, W > > |
Classical dispatch function for rat::exp. More... | |
struct | Series |
This is the final class for series. More... | |
Namespaces | |
namespace | krat_exp_lexing |
Misc. declarations used for rational expression lexing. | |
Functions | |
template<typename S, typename St, typename T> | |
St & | op_rout (const algebra::AlphabetSetBase< S > &s, St &st, const T &a) |
Implementation of generic stream output operator for alphabets. | |
template<typename S, typename T, typename L> | |
bool | op_letter_equality (const algebra::AlphabetSetBase< S > &s, const T &a, L lhs, L rhs) |
Implementation of generic letter equality modulo meta-characters. | |
template<typename S, typename T> | |
bool | op_can_choose_non_starable (const algebra::SemiringBase< S > &set, SELECTOR(T)) |
Whether a non-starable Element can be chosen from a Semiring. | |
template<typename S, typename T> | |
Element< S, T > | op_choose_starable (const algebra::SemiringBase< S > &set, SELECTOR(T)) |
A random starable element in the set. | |
template<typename S, typename T> | |
Element< S, T > | op_choose_non_starable (const algebra::SemiringBase< S > &set, SELECTOR(T)) |
A random non-starable element in the set. | |
template<typename W, typename M, typename Tm, typename Tw> | |
bool | op_contains (const algebra::Series< W, M > &, const rat::exp< Tm, Tw > &) |
template<typename W, typename M, typename Tm, typename Tw> | |
void | op_in_mul (const algebra::Series< W, M > &s, rat::exp< Tm, Tw > &dst, const rat::exp< Tm, Tw > &arg) |
template<typename W, typename M, typename Tm, typename Tw, typename oTw> | |
void | op_in_mul (const algebra::Series< W, M > &s, const W &semiring, rat::exp< Tm, Tw > &ret, const oTw &w) |
template<typename W, typename M, typename oTw, typename Tm, typename Tw> | |
rat::exp< Tm, Tw > | op_mul (const W &semiring, const algebra::Series< W, M > &s, const oTw &w, const rat::exp< Tm, Tw > &b) |
template<class S, class T> | |
std::pair< bool, std::string > | parse (const std::string &from, Element< S, T > &exp, bool lex_trace=false, bool parse_trace=false) |
Parse a rational expression. |
The algebra namespace in Vaucanson contains all the compounds which are needed to manipulate algebraic structures. Both structural elements (e.g. Alphabets, Monoids, etc.) and implementations of those elements (polynoms, rational expressions, etc.) are presents in this namespace.
bool op_contains | ( | const algebra::Series< W, M > & | , | |
const rat::exp< Tm, Tw > & | ||||
) | [inline] |
void op_in_mul | ( | const algebra::Series< W, M > & | s, | |
rat::exp< Tm, Tw > & | dst, | |||
const rat::exp< Tm, Tw > & | arg | |||
) | [inline] |
Definition at line 171 of file krat.hxx.
References exp::base(), and Series::semiring().
void op_in_mul | ( | const algebra::Series< W, M > & | s, | |
const W & | semiring, | |||
rat::exp< Tm, Tw > & | ret, | |||
const oTw & | w | |||
) | [inline] |
Definition at line 471 of file krat.hxx.
References exp::base(), SELECT, and Series::semiring().
rat::exp< Tm, Tw > op_mul | ( | const W & | semiring, | |
const algebra::Series< W, M > & | s, | |||
const oTw & | w, | |||
const rat::exp< Tm, Tw > & | b | |||
) | [inline] |
Definition at line 562 of file krat.hxx.
References exp::base(), SELECT, and Series::semiring().