12 template <
typename ExpansionSet>
13 typename ExpansionSet::expression_t
15 const typename ExpansionSet::value_t& x)
17 const auto& es = xs.expressionset();
18 const auto& ps = xs.polynomialset();
19 auto res = es.lweight(x.constant, es.one());
20 for (
const auto& p: x.polynomials)
22 es.mul(es.atom(p.first), ps.to_label(p.second)));
31 template <
typename ExpansionSet>
35 const auto& x = exp->
as<ExpansionSet>();
36 return {x.valueset(),
to_expression(x.valueset(), x.value())};
auto & as()
Extract wrapped typed value.
expression to_expression_expansion(const expansion &exp)
Bridge (to_expression).
ExpSet::value_t to_expression(Aut &a, Profiler &profiler)
value_impl< detail::expression_tag > expression
expression to_expression(const automaton &aut, identities ids, const std::string &algo)
Bridge.