![]() |
Vcsn
2.4
Be Rational
|
#include <automatonset.hh>
Public Types | |
| using | context_t = Context |
| using | tag_t = Tag |
| using | value_t = mutable_automaton< context_t > |
| using | labelset_t = labelset_t_of< context_t > |
| using | weightset_t = weightset_t_of< context_t > |
| using | kind_t = typename context_t::kind_t |
| using | state_t = unsigned |
| Lightweight state handle (or index). More... | |
| using | transition_t = unsigned |
| Lightweight transition handle (or index). More... | |
| using | label_t = typename labelset_t::value_t |
| Transition label. More... | |
| using | weight_t = typename weightset_t::value_t |
| Transition weight. More... | |
Public Member Functions | |
| automatonset (const context_t &c) | |
| auto | print_set (std::ostream &o, format fmt={}) const -> std::ostream & |
| Format the description of this automatonset. More... | |
| auto | zero () const -> value_t |
| auto | one () const -> value_t |
| auto | atom (const label_t &l) const -> value_t |
| template<typename Ctx = context_t> | |
| auto | compose (const value_t &l, const value_t &r) const -> std::enable_if_t< are_composable< Ctx, Ctx > |
Build a composition: l @ r. More... | |
| auto | conjunction (const value_t &l, const value_t &r) const -> value_t |
Build an conjunction product: l & r. More... | |
| auto | infiltrate (const value_t &l, const value_t &r) const -> value_t |
Build an infiltration product: l &: r. More... | |
| auto | shuffle (const value_t &l, const value_t &r) const -> value_t |
Build a shuffle product: l : r. More... | |
| template<typename... Value> | |
| auto | tuple (Value &&...v) const -> value_t |
Build a tuple: e | f | .... More... | |
| auto | power (const value_t &e, unsigned n) const -> value_t |
Add a power operator: e{n}. More... | |
| auto | ldivide (const value_t &l, const value_t &r) const -> value_t |
| r`. More... | |
| auto | rdivide (const value_t &l, const value_t &r) const -> value_t |
Build a right division: l {/} r. More... | |
| auto | star (const value_t &e) const -> value_t |
Add a star operator: e*. More... | |
| auto | complement (const value_t &e, std::true_type) const -> value_t |
Add a complement operator: e{c}. More... | |
| auto | complement (const value_t &, std::false_type) const -> value_t |
Add a complement operator: e{c}. More... | |
| auto | complement (const value_t &e) const -> value_t |
Add a complement operator: e{c}. More... | |
| auto | transposition (const value_t &e) const -> value_t |
| Add a transposition operator. More... | |
| auto | rweight (const value_t &e, const weight_t &w) const -> value_t |
| Right-multiplication by a weight. More... | |
| auto | lweight (const weight_t &w, const value_t &e) const -> value_t |
| Left-multiplication by a weight. More... | |
Static Public Member Functions | |
| static symbol | sname () |
| static auto | add (const value_t &l, const value_t &r) -> value_t |
| static auto | mul (const value_t &l, const value_t &r) -> value_t |
Public Attributes | |
| value_t | |
Protected Attributes | |
| context_t | ctx_ |
Definition at line 19 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::context_t = Context |
Definition at line 22 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::kind_t = typename context_t::kind_t |
Definition at line 27 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::label_t = typename labelset_t::value_t |
Transition label.
Definition at line 34 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::labelset_t = labelset_t_of<context_t> |
Definition at line 25 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::state_t = unsigned |
Lightweight state handle (or index).
Definition at line 30 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::tag_t = Tag |
Definition at line 23 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::transition_t = unsigned |
Lightweight transition handle (or index).
Definition at line 32 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::value_t = mutable_automaton<context_t> |
Definition at line 24 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::weight_t = typename weightset_t::value_t |
Transition weight.
Definition at line 36 of file automatonset.hh.
| using vcsn::automatonset< Context, Tag >::weightset_t = weightset_t_of<context_t> |
Definition at line 26 of file automatonset.hh.
|
inline |
Definition at line 45 of file automatonset.hh.
|
inlinestatic |
Definition at line 106 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Definition at line 95 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Add a complement operator: e{c}.
Definition at line 197 of file automatonset.hh.
Referenced by vcsn::automatonset< context_t_of< automaton_t >, tag_t >::complement(), and vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Add a complement operator: e{c}.
Definition at line 217 of file automatonset.hh.
|
inline |
Add a complement operator: e{c}.
Definition at line 223 of file automatonset.hh.
|
inline |
Build a composition: l @ r.
Definition at line 118 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Build an conjunction product: l & r.
Definition at line 125 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Build an infiltration product: l &: r.
Definition at line 134 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
r`.
Definition at line 159 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Left-multiplication by a weight.
Definition at line 241 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inlinestatic |
Definition at line 111 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Definition at line 86 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Add a power operator: e{n}.
Definition at line 153 of file automatonset.hh.
|
inline |
Format the description of this automatonset.
Definition at line 50 of file automatonset.hh.
|
inline |
Build a right division: l {/} r.
Definition at line 175 of file automatonset.hh.
|
inline |
Right-multiplication by a weight.
Definition at line 235 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Build a shuffle product: l : r.
Definition at line 140 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inlinestatic |
Definition at line 38 of file automatonset.hh.
|
inline |
Add a star operator: e*.
Definition at line 191 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Add a transposition operator.
Definition at line 229 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
inline |
Build a tuple: e | f | ....
Definition at line 147 of file automatonset.hh.
Referenced by vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::visit_tuple< bool, Dummy >::tape_().
|
inline |
Definition at line 78 of file automatonset.hh.
Referenced by vcsn::automatonset< context_t_of< automaton_t >, tag_t >::complement(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::conjunction(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::ldivide(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::rdivide(), and vcsn::rat::inductive_visitor< Aut, ExpSet, Tag >::VCSN_RAT_VISIT().
|
protected |
Definition at line 247 of file automatonset.hh.
Referenced by vcsn::automatonset< context_t_of< automaton_t >, tag_t >::atom(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::complement(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::ldivide(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::one(), vcsn::automatonset< context_t_of< automaton_t >, tag_t >::rdivide(), and vcsn::automatonset< context_t_of< automaton_t >, tag_t >::zero().
| vcsn::automatonset< Context, Tag >::value_t |
Definition at line 120 of file automatonset.hh.