142 return std::max(i1, i2);
Associative plus commutativity, and "idempotence" for add.
Linear plus distribution. Used for series identities.
bool operator==(self_t that) const
Strictly obey to the syntax.
bool is_trivial() const
Whether trivial identities are on.
bool is_agressive() const
Whether agressive optimizations are on.
bool is_distributive() const
Whether distributive identities are on.
bool operator<(self_t that) const
An expressionset can implement several different sets of identities on expressions.
identities meet(identities i1, identities i2)
More restricted of these identities (min).
Trivial, plus associativity of add and product.
bool is_associative() const
Whether associative identities are on.
std::ostringstream os
The output stream: the corresponding C++ snippet to compile.
A structure that implements the computation of join(V1, V2).
bool is_linear() const
Whether linear identities are on.
Distributive plus optimizations.
std::string to_string(identities i)
Wrapper around operator<<.
bool operator!=(self_t that) const
static type join(rat::identities i1, rat::identities i2)
::vcsn::rat::identities identities
Sets of identities on expressions.
std::ostream & operator<<(std::ostream &o, type_t t)
Print a expression type.
std::istream & operator>>(std::istream &is, identities &i)
Read from string form.
identities(ids_t id=deflt)