Vcsn  2.4
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
vcsn::dyn Namespace Reference

Namespaces

 detail
 

Classes

class  automaton
 A dyn automaton. More...
 
class  context
 Template-less root for contexts. More...
 
struct  jit_error
 An exception suited for our compilation errors. More...
 
class  value_impl
 A dyn Value/ValueSet. More...
 

Typedefs

using expansion = value_impl< detail::expansion_tag >
 
using expression = value_impl< detail::expression_tag >
 
using label = value_impl< detail::label_tag >
 
using polynomial = value_impl< detail::polynomial_tag >
 
using weight = value_impl< detail::weight_tag >
 
using word = label
 The type of a word. More...
 

Functions

automaton accessible (const automaton &aut)
 The accessible subautomaton of aut. More...
 
word ambiguous_word (const automaton &aut)
 An ambiguous word, or raise if there is none. More...
 
bool are_equivalent (const automaton &lhs, const automaton &rhs)
 Whether compute the same series. More...
 
bool are_equivalent (const expression &lhs, const expression &rhs)
 Whether denote the same series. More...
 
bool are_isomorphic (const automaton &lhs, const automaton &rhs)
 Whether there exists an isomorphism between the states of lhs and those of rhs. More...
 
automaton cerny (const context &ctx, unsigned num_states)
 Produce a Černý automaton of num_states states. More...
 
automaton coaccessible (const automaton &aut)
 The coaccessible subautomaton of aut. More...
 
automaton codeterminize (const automaton &aut, const std::string &algo="auto")
 The codeterminized automaton. More...
 
automaton cominimize (const automaton &aut, const std::string &algo="auto")
 The cominimized automaton. More...
 
automaton complement (const automaton &aut)
 The complement of aut. More...
 
expansion complement (const expansion &x)
 Complement this expansion. More...
 
automaton complete (const automaton &aut)
 A completed copy of aut. More...
 
automaton component (const automaton &aut, unsigned num)
 The automaton of a strongly connected component. More...
 
automaton compose (const automaton &lhs, const automaton &rhs, bool lazy=false)
 The composition of transducers lhs and rhs. More...
 
expansion compose (const expansion &lhs, const expansion &rhs)
 The composition of two expansions. More...
 
expression concatenate (const expression &lhs, const expression &rhs)
 Concatenate two expressions. More...
 
automaton condense (const automaton &aut)
 The condensation of aut such that each state is a strongly connected component. More...
 
automaton conjunction (const automaton &lhs, const automaton &rhs, bool lazy=false)
 The conjunction (aka synchronized product) of automata. More...
 
automaton conjunction (const std::vector< automaton > &as, bool lazy=false)
 The conjunction (aka synchronized product) of automata. More...
 
automaton conjunction (const automaton &aut, unsigned n)
 Repeated conjunction of aut with itself. More...
 
expansion conjunction (const expansion &lhs, const expansion &rhs)
 The Hadamard product of expansions lhs and rhs. More...
 
automaton conjugate (const automaton &aut)
 The conjugate of aut. More...
 
weight constant_term (const expression &e)
 The weight associated to the empty word in e. More...
 
context context_of (const automaton &a)
 The context of this automaton. More...
 
context context_of (const expansion &r)
 The context of this expansion. More...
 
automaton copy (const automaton &aut)
 A copy of aut. More...
 
automaton copy (const automaton &aut, const context &ctx)
 A copy of aut converted to context ctx. More...
 
expression copy (const expression &exp, const context &ctx, identities ids)
 Copy of exp, but built with ctx. More...
 
automaton costandard (const automaton &a)
 A co-standardized a. More...
 
automaton cotrie (const polynomial &p)
 A reversed trie-like automaton (multiple initial states, single final state) automaton to accept p. More...
 
automaton cotrie (const context &ctx, std::istream &is, const std::string &format="default")
 A reversed trie-like automaton (multiple initial states, single final state) automaton to accept the series contained in is. More...
 
automaton de_bruijn (const context &ctx, unsigned n)
 A simple NFA for (a+b)*a(a+b)^n. More...
 
automaton delay_automaton (const automaton &a)
 The automaton with the delay of each state. More...
 
polynomial derivation (const expression &exp, const label &lbl, bool breaking=false)
 Derive exp with respect to s. More...
 
automaton derived_term (const expression &exp, const std::string &algo="auto")
 The derived-term automaton of exp. More...
 
automaton determinize (const automaton &aut, const std::string &algo="auto")
 The determinized automaton. More...
 
automaton difference (const automaton &lhs, const automaton &rhs)
 An automaton whose behavior is that of lhs on words not accepted by rhs. More...
 
expression difference (const expression &lhs, const expression &rhs)
 Words accepted by lhs, but not by rhs. More...
 
automaton divkbaseb (const context &ctx, unsigned divisor, unsigned base)
 An automaton which accepts a word n representing a number in base b iff k|n. More...
 
automaton double_ring (const context &ctx, unsigned n, const std::vector< unsigned > &f)
 The double_ring automaton with n states and f the list of finals. More...
 
automaton eliminate_state (const automaton &aut, int s=-1)
 The LAO automaton aut with state s removed. More...
 
weight evaluate (const automaton &aut, const word &l)
 Evaluate l on aut. More...
 
expression expand (const expression &e)
 Distribute product over addition recursively under the starred subexpressions and group the equal monomials. More...
 
expression expression_one (const context &c, identities ids)
 The expression for \\e. More...
 
expression expression_zero (const context &c, identities ids)
 The expression for \\z. More...
 
automaton factor (const automaton &aut)
 Create a factor automaton from aut. More...
 
automaton filter (const automaton &aut, const std::vector< unsigned > &ss)
 The subautomaton based on aut, with only states in ss visible. More...
 
automaton focus (const automaton &aut, unsigned tape)
 Focus on a specific tape of a tupleset automaton. More...
 
bool has_twins_property (const automaton &aut)
 Whether the automaton has the twins property. More...
 
bool has_lightening_cycle (const automaton &aut)
 Whether the automaton has a cycle with lightening weight. More...
 
bool has_bounded_lag (const automaton &aut)
 Whether the transducer has bounded lag. More...
 
identities identities_of (const expression &exp)
 The identities of expression exp. More...
 
automaton inductive (const expression &e, const std::string &algo="auto")
 The inductive translation of e in an automaton. More...
 
automaton infiltrate (const automaton &lhs, const automaton &rhs)
 The infiltration of automata lhs and rhs. More...
 
automaton infiltrate (const std::vector< automaton > &as)
 The infiltration product of automata. More...
 
expression infiltrate (const expression &lhs, const expression &rhs)
 The infiltration product of expressions lhs and rhs. More...
 
std::ostream & info (const automaton &aut, std::ostream &out=std::cout, unsigned details=2)
 Output various facts about an automaton. More...
 
std::ostream & info (const expression &exp, std::ostream &out=std::cout)
 Output various facts about exp. More...
 
automaton insplit (const automaton &aut, bool lazy=false)
 Split automaton on the incoming transition. More...
 
bool is_accessible (const automaton &aut)
 Whether aut is accessible. More...
 
bool is_ambiguous (const automaton &aut)
 Whether aut is ambiguous. More...
 
bool is_coaccessible (const automaton &aut)
 Whether aut is coaccessible. More...
 
bool is_codeterministic (const automaton &aut)
 Whether aut is codeterministic. More...
 
bool is_complete (const automaton &aut)
 Whether aut is complete. More...
 
bool is_costandard (const automaton &aut)
 Whether is costandard (unique final state, with weight one, no outcoming transition). More...
 
bool is_cycle_ambiguous (const automaton &aut)
 Whether the automaton is cycle-ambiguous. More...
 
bool is_deterministic (const automaton &aut)
 Whether aut is deterministic. More...
 
bool is_empty (const automaton &aut)
 Whether has no state. More...
 
bool is_eps_acyclic (const automaton &aut)
 Whether has no cycle of spontaneous transitions. More...
 
bool is_functional (const automaton &aut)
 Whether aut is functional. More...
 
bool is_letterized (const automaton &aut)
 Whether aut is letterized. More...
 
bool is_partial_identity (const automaton &aut)
 Whether aut realizes a partial identity. More...
 
bool is_normalized (const automaton &aut)
 Whether is normalized (in the Thompson sense), i.e., standard and co-standard. More...
 
bool is_out_sorted (const automaton &aut)
 Whether the outgoing transitions of each state have increasing labels. More...
 
bool is_proper (const automaton &aut)
 Whether has no spontaneous transition. More...
 
bool is_realtime (const automaton &aut)
 Whether has no spontaneous transition, and is letterized. More...
 
bool is_standard (const automaton &aut)
 Whether is standard (unique initial state, with weight one, no incoming transition). More...
 
bool is_synchronized (const automaton &aut)
 Whether is synchronized. More...
 
bool is_synchronized_by (const automaton &aut, const word &word)
 Whether the word synchronizes aut. More...
 
bool is_synchronizing (const automaton &aut)
 Whether is synchronizing. More...
 
bool is_trim (const automaton &aut)
 Whether has no useless state. More...
 
bool is_useless (const automaton &aut)
 Whether has no useful state. More...
 
bool is_valid (const automaton &e)
 Whether automaton is valid (epsilon-cycles converge). More...
 
bool is_valid (const expression &e)
 Whether rational expression is valid (all the starred sub-expressions are starrable). More...
 
context join (const context &lhs, const context &rhs)
 The join between two contexts, i.e., their lowest common supertype. More...
 
automaton ladybird (const context &ctx, unsigned n)
 The ladybird automaton with n states. More...
 
automaton ldivide (const automaton &lhs, const automaton &rhs)
 Left-division of two automata (lhs \ rhs). More...
 
expansion ldivide (const expansion &lhs, const expansion &rhs)
 Left-division of two expansions (lhs \ rhs). More...
 
polynomial lgcd (const polynomial &lhs, const polynomial &rhs)
 Left greatest common divisor of two polynomials (lhs \ rhs). More...
 
automaton lweight (const weight &w, const automaton &aut, const std::string &algo="auto")
 The left-multiplication of an automaton with w as weight. More...
 
expansion lweight (const weight &w, const expansion &exp)
 The left-multiplication of an expansion with w as weight. More...
 
bool less_than (const expression &lhs, const expression &rhs)
 Ordering between expressions. More...
 
automaton letterize (const automaton &aut)
 The automaton with letter transitions instead of words. More...
 
automaton levenshtein (const context &ls)
 The transducer representing the Levenshtein distance. More...
 
automaton lift (const automaton &aut, const std::vector< unsigned > &tapes={}, identities ids={})
 Lift some tapes of the transducer, or turn an automaton into a spontaneous automaton. More...
 
expression lift (const expression &e)
 The lifted LAO rational expression from e. More...
 
polynomial lightest (const automaton &aut, unsigned num=1, const std::string &algo="auto")
 The approximated behavior of an automaton with smallest weights. More...
 
automaton lightest_automaton (const automaton &aut, unsigned num=1, const std::string &algo="auto")
 The shortest path automaton using the given algorithm. More...
 
context make_context (const std::string &name)
 Build a context from its name. More...
 
automaton_editormake_automaton_editor (const context &ctx)
 Build an automatonset from its context. More...
 
context make_word_context (const context &ctx)
 The context for words. More...
 
automaton multiply (const automaton &lhs, const automaton &rhs, const std::string &algo="auto")
 Multiply (concatenate) two automata. More...
 
automaton multiply (const automaton &aut, int min, int max=-2, const std::string &algo="auto")
 Repeated multiplication (concatenation) of an automaton with itself. More...
 
expression multiply (const expression &lhs, const expression &rhs)
 Multiply (concatenate) two expressions. More...
 
expression multiply (const expression &e, int min, int max=-2)
 Repeated multiplication (concatenation) of an expression with itself. More...
 
label multiply (const label &l, int num)
 Repeated multiplication of a label with itself. More...
 
automaton minimize (const automaton &aut, const std::string &algo="auto")
 The minimized automaton. More...
 
automaton normalize (const automaton &aut)
 Normalize automaton aut. More...
 
std::size_t num_components (const automaton &aut)
 The number of strongly connected components. More...
 
std::size_t num_tapes (const context &ctx)
 The number of input tapes. More...
 
automaton pair (const automaton &aut, bool keep_initials=false)
 Build the pair automaton of the given automaton. More...
 
automaton partial_identity (const automaton &aut)
 Create a partial identity transducer from aut. More...
 
expression partial_identity (const expression &e)
 Create a partial-identity two-tape expression from e. More...
 
automaton prefix (const automaton &aut)
 Create a prefix automaton from aut. More...
 
std::ostream & print (const automaton &aut, std::ostream &out=std::cout, const std::string &format="default")
 Print automaton a on out using format format. More...
 
std::ostream & print (const context &c, std::ostream &out=std::cout, const std::string &format="default")
 Print context c on out using format format. More...
 
std::ostream & print (const expansion &e, std::ostream &out=std::cout, const std::string &format="default")
 Print expansion e on out using format format. More...
 
automaton quotkbaseb (const context &ctx, unsigned divisor, unsigned base)
 A transducer that computes the quotient of the division of a word n by k in base b iff k|n. More...
 
void set_format (std::ostream &out, const std::string &format)
 Specify the output format for out. More...
 
std::string get_format (std::ostream &out)
 Get the output format for out. More...
 
automaton project (const automaton &aut, unsigned tape)
 Keep a single tape from a multiple-tape automaton. More...
 
context project (const context &ctx, unsigned tape)
 Keep a single tape from a multiple-tape context. More...
 
expansion project (const expansion &xpn, unsigned tape)
 Keep a single tape from a multiple-tape expansion. More...
 
automaton proper (const automaton &aut, direction dir=direction::backward, bool prune=true, const std::string &algo="auto")
 An equivalent automaton without spontaneous transitions. More...
 
automaton push_weights (const automaton &aut)
 The weight pushing automaton of aut. More...
 
automaton random_automaton (const context &ctx, unsigned num_states, float density=0.1, unsigned num_initial=1, unsigned num_final=1, boost::optional< unsigned > max_labels={}, float loop_chance=0.0, const std::string &weights="")
 A random automaton. More...
 
automaton random_automaton_deterministic (const context &ctx, unsigned num_states)
 A random deterministic automaton. More...
 
expression random_expression (const context &ctx, const std::string &param="+, ., *=.2, w., .w, length=10", identities ids={})
 A random expression. More...
 
weight random_weight (const context &ctx, const std::string &param)
 A random weight. More...
 
automaton rdivide (const automaton &lhs, const automaton &rhs)
 Right-division of two automata (lhs / rhs). More...
 
expression rdivide (const expression &lhs, const expression &rhs)
 Right-division of two expressions (lhs / rhs). More...
 
automaton read_automaton (std::istream &is, const std::string &format="default", bool strip=true)
 Read an automaton from a stream. More...
 
expression read_expression (const context &ctx, identities ids, std::istream &is, const std::string &format="default")
 Read an expression from a stream. More...
 
label read_label (const context &ctx, std::istream &is, const std::string &format="default")
 Read a label from a stream. More...
 
polynomial read_polynomial (const context &ctx, std::istream &is)
 Read a polynomial from a stream. More...
 
weight read_weight (const context &ctx, std::istream &is)
 Read a weight from a stream. More...
 
automaton realtime (const automaton &aut)
 Create the realtime automaton (letterized and proper). More...
 
automaton reduce (const automaton &aut)
 Reduce aut. More...
 
automaton rweight (const automaton &aut, const weight &w, const std::string &algo="auto")
 The right-mult automaton with w as weight. More...
 
expansion rweight (const expansion &aut, const weight &w)
 The right-multiplication of an expansion with w as weight. More...
 
automaton scc (const automaton &aut, const std::string &algo="auto")
 Build the SCC automaton whose states are labeled with number of the strongly-connected component they belong to. More...
 
polynomial shortest (const automaton &aut, boost::optional< unsigned > num={}, boost::optional< unsigned > len={})
 The approximated behavior of an automaton. More...
 
automaton shuffle (const automaton &lhs, const automaton &rhs)
 The shuffle product of automata lhs and rhs. More...
 
automaton shuffle (const std::vector< automaton > &as)
 The shuffle product of automata. More...
 
expression shuffle (const expression &lhs, const expression &rhs)
 The shuffle product of expressions lhs and rhs. More...
 
automaton sort (const automaton &a)
 A copy of a with normalized state numbers. More...
 
polynomial split (const expression &exp)
 Break exp. More...
 
automaton standard (const automaton &a)
 A standardized a. More...
 
automaton standard (const expression &e)
 The standard automaton of e. More...
 
automaton star (const automaton &aut, const std::string &algo="auto")
 Star of an automaton. More...
 
unsigned star_height (const expression &rs)
 Star height of an expression. More...
 
expression star_normal_form (const expression &e)
 A normalized form where star is applied only to proper expressions. More...
 
automaton strip (const automaton &a)
 The automaton in a with its metadata layers removed. More...
 
automaton suffix (const automaton &aut)
 Create a suffix automaton from aut. More...
 
automaton subword (const automaton &aut)
 Create a subword automaton from aut. More...
 
automaton add (const automaton &lhs, const automaton &rhs, const std::string &algo="auto")
 Sum of two automata. More...
 
expression add (const expression &lhs, const expression &rhs)
 Sum of two expressions. More...
 
automaton synchronize (const automaton &aut)
 Create a synchronized transducer from aut. More...
 
word synchronizing_word (const automaton &aut, const std::string &algo="greedy")
 A synchronizing word, or raise if there is none. More...
 
automaton thompson (const expression &e)
 The Thompson automaton of e. More...
 
automaton to_automaton (const expression &exp, const std::string &algo="auto")
 An automaton denoting the language of exp. More...
 
expansion to_expansion (const expression &exp)
 First order development of a exp. More...
 
expression to_expression (const automaton &aut, identities ids={}, const std::string &algo="auto")
 An expression denoting the language of aut. More...
 
expression to_expression (const context &ctx, identities ids, const label &l)
 An expression denoting the label of l. More...
 
expression to_expression (const context &ctx, identities ids, const letter_class_t &letters, bool accept=true)
 An expression matching one letter in a letter class. More...
 
automaton transpose (automaton &aut)
 Transpose aut. More...
 
expression transpose (const expression &e)
 Transpose e. More...
 
expression transposition (const expression &r)
 Add the transposition operator to r. More...
 
automaton trie (const polynomial &p)
 A trie-like automaton (single initial state, multiple final states) to accept p. More...
 
automaton trie (const context &ctx, std::istream &is, const std::string &format="default")
 A trie-like automaton (single initial state, multiple final states) to accept the series contained in is. More...
 
automaton trim (const automaton &aut)
 The trim subautomaton of aut. More...
 
automaton tuple (const automaton &lhs, const automaton &rhs)
 Build a two-tape automaton from two automata. More...
 
automaton tuple (const std::vector< automaton > &as)
 Build a k-tape automaton from k automata. More...
 
context tuple (const context &lhs, const context &rhs)
 Tuple two contexts. More...
 
context tuple (const std::vector< context > &ctxs)
 A k-tape context from k contexts. More...
 
expansion tuple (const std::vector< expansion > &rs)
 Build a k-tape expansion from k expansions. More...
 
expression tuple (const expression &lhs, const expression &rhs)
 Build a two-tape expression from two expressions. More...
 
std::string type (const automaton &a)
 The implementation type of a. More...
 
automaton u (const context &ctx, unsigned n)
 The Brzozowski universal witness. More...
 
automaton universal (const automaton &aut)
 The universal automaton of aut. More...
 
weight weight_one (const context &c)
 The weight one. More...
 
weight weight_series (const automaton &aut)
 Compute weight of the series. More...
 
weight weight_zero (const context &c)
 The weight zero. More...
 
automaton zpc (const expression &exp, const std::string &algo="auto")
 The ZPC automaton of exp. More...
 
std::ostream & operator<< (std::ostream &o, const automaton &a)
 Output automaton a on o. More...
 
std::ostream & operator<< (std::ostream &o, const context &c)
 Output context c on o. More...
 
std::ostream & operator<< (std::ostream &o, const expansion &e)
 Output expansion e on o. More...
 
template<typename ValueSetLhs , typename ValueSetRhs , typename Tag >
auto join (const value_impl< Tag > &lhs, const value_impl< Tag > &rhs)
 Return the join of the valuesets of two dyn values and their values in this new valueset. More...
 
automaton read_daut (std::istream &is)
 
automaton read_efsm (std::istream &is)
 
automaton read_fado (std::istream &is)
 
static integral_constant to_integral_constant (unsigned tape)
 
automaton lift (const automaton &aut, const std::vector< unsigned > &tapes, vcsn::rat::identities ids)
 
expression read_expression (const context &ctx, rat::identities ids, std::istream &is, const std::string &f)
 
void compile (const std::string &ctx)
 Compile, and load, a DSO with instantiations for ctx. More...
 
void compile (const std::string &algo, const signature &sig)
 Compile, and load, a DSO which instantiates algo for sig. More...
 

Variables

xalloc< const std::string * > format_flag
 

Typedef Documentation

Definition at line 24 of file fwd.hh.

Definition at line 25 of file fwd.hh.

Definition at line 26 of file fwd.hh.

Definition at line 27 of file fwd.hh.

Definition at line 28 of file fwd.hh.

using vcsn::dyn::word = typedef label

The type of a word.

This is used by Tools to infer

Definition at line 20 of file types.hh.

Function Documentation

automaton vcsn::dyn::accessible ( const automaton &  aut)

The accessible subautomaton of aut.

Definition at line 15 of file algos.cc.

References vcsn::dyn::detail::accessible_registry().

Here is the call graph for this function:

automaton vcsn::dyn::add ( const automaton &  lhs,
const automaton &  rhs,
const std::string &  algo = "auto" 
)

Sum of two automata.

Parameters
lhsan automaton.
rhsanother one.
algohow to compute the result
  • "standard" both lhs and rhs are standard, build a standard automaton.
  • "general" no requirement on lhs and and rhs.
  • "auto" "standard" if both automata are standard, "general" otherwise.

Definition at line 24 of file algos.cc.

References vcsn::dyn::detail::add_registry().

Referenced by vcsn::dyn::detail::add_polynomial(), and vcsn::dyn::detail::add_weight().

Here is the call graph for this function:

expression vcsn::dyn::add ( const expression &  lhs,
const expression &  rhs 
)

Sum of two expressions.

Sum of two weights.

Sum of two polynomials.

Sum of two expansions.

Definition at line 33 of file algos.cc.

References vcsn::dyn::detail::add_expansion_registry().

Here is the call graph for this function:

label vcsn::dyn::ambiguous_word ( const automaton &  aut)

An ambiguous word, or raise if there is none.

Definition at line 69 of file algos.cc.

References vcsn::dyn::detail::ambiguous_word_registry().

Here is the call graph for this function:

bool vcsn::dyn::are_equivalent ( const automaton &  lhs,
const automaton &  rhs 
)

Whether compute the same series.

Precondition
The labelsets of lhs and rhs are free.
lhs and rhs are Boolean, or on Z, or on a field.

Definition at line 78 of file algos.cc.

References vcsn::dyn::detail::are_equivalent_registry().

Here is the call graph for this function:

bool vcsn::dyn::are_equivalent ( const expression &  lhs,
const expression &  rhs 
)

Whether denote the same series.

Precondition
The labelsets of lhs and rhs are free.
lhs and rhs are Boolean, or on Z, or on a field.

Definition at line 87 of file algos.cc.

References vcsn::dyn::detail::are_equivalent_expression_registry().

Here is the call graph for this function:

bool vcsn::dyn::are_isomorphic ( const automaton &  lhs,
const automaton &  rhs 
)

Whether there exists an isomorphism between the states of lhs and those of rhs.

Definition at line 96 of file algos.cc.

References vcsn::dyn::detail::are_isomorphic_registry().

Here is the call graph for this function:

automaton vcsn::dyn::cerny ( const context &  ctx,
unsigned  num_states 
)

Produce a Černý automaton of num_states states.

Definition at line 105 of file algos.cc.

References vcsn::dyn::detail::cerny_registry().

Here is the call graph for this function:

automaton vcsn::dyn::coaccessible ( const automaton &  aut)

The coaccessible subautomaton of aut.

Definition at line 114 of file algos.cc.

References vcsn::dyn::detail::coaccessible_registry().

Here is the call graph for this function:

automaton vcsn::dyn::codeterminize ( const automaton &  aut,
const std::string &  algo = "auto" 
)

The codeterminized automaton.

Parameters
autthe automaton to codeterminize
algo
  • "boolean" use efficient bitsets
  • "weighted" accept non Boolean automata (might not terminate)
  • "auto" "boolean" if the automaton is Boolean, "weighted" otherwise.
Precondition
the labelset of aut must be free.

Definition at line 123 of file algos.cc.

References vcsn::dyn::detail::codeterminize_registry().

Here is the call graph for this function:

automaton vcsn::dyn::cominimize ( const automaton &  aut,
const std::string &  algo = "auto" 
)

The cominimized automaton.

Parameters
autthe automaton to cominimize
algothe specific algorithm to use
Precondition
aut must be LAL.
aut must be deterministic.

Definition at line 132 of file algos.cc.

References vcsn::dyn::detail::cominimize_registry().

Here is the call graph for this function:

void vcsn::dyn::compile ( const std::string &  ctx)

Compile, and load, a DSO with instantiations for ctx.

Definition at line 380 of file translate.cc.

Referenced by vcsn::dyn::detail::Registry< Fun >::get(), and make_context().

void vcsn::dyn::compile ( const std::string &  algo,
const signature &  sig 
)

Compile, and load, a DSO which instantiates algo for sig.

Definition at line 386 of file translate.cc.

automaton vcsn::dyn::complement ( const automaton &  aut)

The complement of aut.

Precondition
aut is lal
aut is Boolean
aut is deterministic
aut is complete

Definition at line 141 of file algos.cc.

References vcsn::dyn::detail::complement_registry().

Here is the call graph for this function:

expansion vcsn::dyn::complement ( const expansion &  x)

Complement this expansion.

Add the complement operator to r.

Definition at line 150 of file algos.cc.

References vcsn::dyn::detail::complement_expansion_registry().

Here is the call graph for this function:

automaton vcsn::dyn::complete ( const automaton &  aut)

A completed copy of aut.

Precondition
aut is lal

Definition at line 168 of file algos.cc.

References vcsn::dyn::detail::complete_registry().

Here is the call graph for this function:

automaton vcsn::dyn::component ( const automaton &  aut,
unsigned  num 
)

The automaton of a strongly connected component.

Parameters
autthe input automaton.
numthe component number.

Definition at line 177 of file algos.cc.

References vcsn::dyn::detail::component_registry().

Here is the call graph for this function:

automaton vcsn::dyn::compose ( const automaton &  lhs,
const automaton &  rhs,
bool  lazy = false 
)

The composition of transducers lhs and rhs.

Parameters
lhsthe left transducer
rhsthe right transducer
lazywhether to perform the computations on demand.

Definition at line 186 of file algos.cc.

References vcsn::dyn::detail::compose_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::compose ( const expansion &  lhs,
const expansion &  rhs 
)

The composition of two expansions.

The composition of two polynomials.

The composition of two expressions.

Definition at line 195 of file algos.cc.

References vcsn::dyn::detail::compose_expansion_registry().

Here is the call graph for this function:

expression vcsn::dyn::concatenate ( const expression &  lhs,
const expression &  rhs 
)

Concatenate two expressions.

Do not use this routine, see multiply instead.

Definition at line 222 of file algos.cc.

References vcsn::dyn::detail::concatenate_expression_registry().

Referenced by vcsn::rat::parser::parse().

Here is the call graph for this function:

automaton vcsn::dyn::condense ( const automaton &  aut)

The condensation of aut such that each state is a strongly connected component.

Definition at line 231 of file algos.cc.

References vcsn::dyn::detail::condense_registry().

Here is the call graph for this function:

automaton vcsn::dyn::conjugate ( const automaton &  aut)

The conjugate of aut.

Definition at line 240 of file algos.cc.

References vcsn::dyn::detail::conjugate_registry().

Here is the call graph for this function:

automaton vcsn::dyn::conjunction ( const automaton &  lhs,
const automaton &  rhs,
bool  lazy = false 
)

The conjunction (aka synchronized product) of automata.

Performs the meet of the contexts.

Parameters
lhsthe left automaton
rhsthe right automaton
lazywhether to perform the computations on demand.

Definition at line 24 of file others.cc.

Referenced by vcsn::is_cycle_ambiguous_scc().

automaton vcsn::dyn::conjunction ( const std::vector< automaton > &  as,
bool  lazy = false 
)

The conjunction (aka synchronized product) of automata.

Performs the meet of the contexts.

Parameters
asthe automata
lazywhether to perform the computations on demand.

Definition at line 249 of file algos.cc.

References vcsn::dyn::detail::conjunction_registry().

Here is the call graph for this function:

automaton vcsn::dyn::conjunction ( const automaton &  aut,
unsigned  n 
)

Repeated conjunction of aut with itself.

Definition at line 285 of file algos.cc.

References vcsn::dyn::detail::conjunction_repeated_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::conjunction ( const expansion &  lhs,
const expansion &  rhs 
)

The Hadamard product of expansions lhs and rhs.

The Hadamard product of polynomials lhs and rhs.

The Hadamard product of expressions lhs and rhs.

Definition at line 258 of file algos.cc.

References vcsn::dyn::detail::conjunction_expansion_registry().

Here is the call graph for this function:

weight vcsn::dyn::constant_term ( const expression &  e)

The weight associated to the empty word in e.

Definition at line 294 of file algos.cc.

References vcsn::dyn::detail::constant_term_registry().

Here is the call graph for this function:

context vcsn::dyn::context_of ( const automaton &  a)

The context of this automaton.

Definition at line 303 of file algos.cc.

References vcsn::dyn::detail::context_of_registry().

Referenced by vcsn::rat::parser::parse().

Here is the call graph for this function:

context vcsn::dyn::context_of ( const expansion &  r)

The context of this expansion.

The context of this polynomial.

The context of this expression.

Definition at line 312 of file algos.cc.

References vcsn::dyn::detail::context_of_expansion_registry().

Here is the call graph for this function:

automaton vcsn::dyn::copy ( const automaton &  aut)

A copy of aut.

Definition at line 339 of file algos.cc.

References vcsn::dyn::detail::copy_registry().

Here is the call graph for this function:

automaton vcsn::dyn::copy ( const automaton &  aut,
const context &  ctx 
)

A copy of aut converted to context ctx.

Definition at line 348 of file algos.cc.

References vcsn::dyn::detail::copy_convert_registry().

Here is the call graph for this function:

expression vcsn::dyn::copy ( const expression &  exp,
const context &  ctx,
identities  ids 
)

Copy of exp, but built with ctx.

Definition at line 357 of file algos.cc.

References vcsn::dyn::detail::copy_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::costandard ( const automaton &  a)

A co-standardized a.

Definition at line 366 of file algos.cc.

References vcsn::dyn::detail::costandard_registry().

Here is the call graph for this function:

automaton vcsn::dyn::cotrie ( const polynomial &  p)

A reversed trie-like automaton (multiple initial states, single final state) automaton to accept p.

Parameters
pthe polynomial that describes the (finite) series

Definition at line 375 of file algos.cc.

References vcsn::dyn::detail::cotrie_registry().

Here is the call graph for this function:

automaton vcsn::dyn::cotrie ( const context &  ctx,
std::istream &  is,
const std::string &  format = "default" 
)

A reversed trie-like automaton (multiple initial states, single final state) automaton to accept the series contained in is.

Parameters
ctxthe (word-based) context used to read the words.
isthe input stream.
formatthe format of the file: "words" or "monomials".

Definition at line 384 of file algos.cc.

References vcsn::dyn::detail::cotrie_stream_registry().

Here is the call graph for this function:

automaton vcsn::dyn::de_bruijn ( const context &  ctx,
unsigned  n 
)

A simple NFA for (a+b)*a(a+b)^n.

Definition at line 393 of file algos.cc.

References vcsn::dyn::detail::de_bruijn_registry().

Here is the call graph for this function:

automaton vcsn::dyn::delay_automaton ( const automaton &  a)

The automaton with the delay of each state.

Definition at line 402 of file algos.cc.

References vcsn::dyn::detail::delay_automaton_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::derivation ( const expression &  exp,
const label &  lbl,
bool  breaking = false 
)

Derive exp with respect to s.

Parameters
expthe input expression
lblthe label used for derivation
breakingwhether to split the result
Precondition
exp must be LAL.

Definition at line 411 of file algos.cc.

References vcsn::dyn::detail::derivation_registry().

Here is the call graph for this function:

automaton vcsn::dyn::derived_term ( const expression &  exp,
const std::string &  algo = "auto" 
)

The derived-term automaton of exp.

Parameters
expthe input expression
algohow the derived terms are computed:
  • "auto" alias for "expansion"
  • "derivation" compute by derivation
  • "breaking_derivation" compute by breaking derivation
  • "expansion" compute by expansion
  • "breaking_expansion" compute by breaking expansion

Definition at line 420 of file algos.cc.

References vcsn::dyn::detail::derived_term_registry().

Referenced by to_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::determinize ( const automaton &  aut,
const std::string &  algo = "auto" 
)

The determinized automaton.

Parameters
autthe automaton to determinize
algo
  • "boolean" use efficient bitsets
  • "weighted" accept non Boolean automata (might not terminate)
  • "auto" "boolean" if the automaton is Boolean, "weighted" otherwise.
Precondition
the labelset of aut must be free.

Definition at line 429 of file algos.cc.

References vcsn::dyn::detail::determinize_registry().

Here is the call graph for this function:

automaton vcsn::dyn::difference ( const automaton &  lhs,
const automaton &  rhs 
)

An automaton whose behavior is that of lhs on words not accepted by rhs.

Parameters
lhsa LAL automaton
rhsa LAL Boolean automaton
Precondition
rhs is Boolean.

Definition at line 438 of file algos.cc.

References vcsn::dyn::detail::difference_registry().

Here is the call graph for this function:

expression vcsn::dyn::difference ( const expression &  lhs,
const expression &  rhs 
)

Words accepted by lhs, but not by rhs.

Definition at line 447 of file algos.cc.

References vcsn::dyn::detail::difference_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::divkbaseb ( const context &  ctx,
unsigned  divisor,
unsigned  base 
)

An automaton which accepts a word n representing a number in base b iff k|n.

Definition at line 456 of file algos.cc.

References vcsn::dyn::detail::divkbaseb_registry().

Here is the call graph for this function:

automaton vcsn::dyn::double_ring ( const context &  ctx,
unsigned  n,
const std::vector< unsigned > &  f 
)

The double_ring automaton with n states and f the list of finals.

Definition at line 465 of file algos.cc.

References vcsn::dyn::detail::double_ring_registry().

Here is the call graph for this function:

automaton vcsn::dyn::eliminate_state ( const automaton &  aut,
int  s = -1 
)

The LAO automaton aut with state s removed.

Definition at line 474 of file algos.cc.

References vcsn::dyn::detail::eliminate_state_registry().

Here is the call graph for this function:

weight vcsn::dyn::evaluate ( const automaton &  aut,
const word &  l 
)

Evaluate l on aut.

Evaluate p on aut.

Definition at line 483 of file algos.cc.

References vcsn::dyn::detail::eval_polynomial_registry().

Here is the call graph for this function:

expression vcsn::dyn::expand ( const expression &  e)

Distribute product over addition recursively under the starred subexpressions and group the equal monomials.

Definition at line 501 of file algos.cc.

References vcsn::dyn::detail::expand_registry().

Here is the call graph for this function:

expression vcsn::dyn::expression_one ( const context &  c,
identities  ids 
)

The expression for \\e.

Definition at line 510 of file algos.cc.

References vcsn::dyn::detail::expression_one_registry().

Referenced by vcsn::rat::parser::parse().

Here is the call graph for this function:

expression vcsn::dyn::expression_zero ( const context &  c,
identities  ids 
)

The expression for \\z.

Definition at line 519 of file algos.cc.

References vcsn::dyn::detail::expression_zero_registry().

Referenced by vcsn::rat::parser::parse().

Here is the call graph for this function:

automaton vcsn::dyn::factor ( const automaton &  aut)

Create a factor automaton from aut.

Definition at line 528 of file algos.cc.

References vcsn::dyn::detail::factor_registry().

Here is the call graph for this function:

automaton vcsn::dyn::filter ( const automaton &  aut,
const std::vector< unsigned > &  ss 
)

The subautomaton based on aut, with only states in ss visible.

Definition at line 537 of file algos.cc.

References vcsn::dyn::detail::filter_registry().

Here is the call graph for this function:

automaton vcsn::dyn::focus ( const automaton &  aut,
unsigned  tape 
)

Focus on a specific tape of a tupleset automaton.

Definition at line 44 of file others.cc.

References to_integral_constant().

Here is the call graph for this function:

std::string vcsn::dyn::get_format ( std::ostream &  out)

Get the output format for out.

Definition at line 171 of file print.cc.

References format_flag.

Referenced by operator<<().

bool vcsn::dyn::has_bounded_lag ( const automaton &  aut)

Whether the transducer has bounded lag.

Definition at line 546 of file algos.cc.

References vcsn::dyn::detail::has_bounded_lag_registry().

Here is the call graph for this function:

bool vcsn::dyn::has_lightening_cycle ( const automaton &  aut)

Whether the automaton has a cycle with lightening weight.

Definition at line 555 of file algos.cc.

References vcsn::dyn::detail::has_lightening_cycle_registry().

Here is the call graph for this function:

bool vcsn::dyn::has_twins_property ( const automaton &  aut)

Whether the automaton has the twins property.

Definition at line 564 of file algos.cc.

References vcsn::dyn::detail::has_twins_property_registry().

Here is the call graph for this function:

identities vcsn::dyn::identities_of ( const expression &  exp)

The identities of expression exp.

Definition at line 573 of file algos.cc.

References vcsn::dyn::detail::identities_of_registry().

Here is the call graph for this function:

automaton vcsn::dyn::inductive ( const expression &  e,
const std::string &  algo = "auto" 
)

The inductive translation of e in an automaton.

Parameters
ethe expressions
algohow to compute the result
  • "standard" build a standard automaton.
  • "general" no requirement on the result
  • "auto" same as "standard"

Definition at line 582 of file algos.cc.

References vcsn::dyn::detail::inductive_registry().

Referenced by to_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::infiltrate ( const automaton &  lhs,
const automaton &  rhs 
)

The infiltration of automata lhs and rhs.

Performs the join of their types.

Definition at line 56 of file others.cc.

automaton vcsn::dyn::infiltrate ( const std::vector< automaton > &  as)

The infiltration product of automata.

Performs the join of their types.

Definition at line 591 of file algos.cc.

References vcsn::dyn::detail::infiltrate_registry().

Here is the call graph for this function:

expression vcsn::dyn::infiltrate ( const expression &  lhs,
const expression &  rhs 
)

The infiltration product of expressions lhs and rhs.

Performs the join of their type.

Definition at line 600 of file algos.cc.

References vcsn::dyn::detail::infiltrate_expression_registry().

Here is the call graph for this function:

std::ostream & vcsn::dyn::info ( const automaton &  aut,
std::ostream &  out = std::cout,
unsigned  details = 2 
)

Output various facts about an automaton.

Parameters
autthe automaton under study
outthe output stream where to print the info
detailslevels of details from 1 (fewer), to 3 (more).

Definition at line 609 of file algos.cc.

References vcsn::dyn::detail::info_registry().

Here is the call graph for this function:

std::ostream & vcsn::dyn::info ( const expression &  exp,
std::ostream &  out = std::cout 
)

Output various facts about exp.

Definition at line 618 of file algos.cc.

References vcsn::dyn::detail::info_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::insplit ( const automaton &  aut,
bool  lazy = false 
)

Split automaton on the incoming transition.

In an insplit automaton, each state has either only spontaneous incoming transitions or only proper incoming transitions.

Parameters
autautomaton to insplit
lazywhether to perform the computations on demand.
Precondition
aut is lal or lan.

Definition at line 627 of file algos.cc.

References vcsn::dyn::detail::insplit_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_accessible ( const automaton &  aut)

Whether aut is accessible.

Definition at line 636 of file algos.cc.

References vcsn::dyn::detail::is_accessible_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_ambiguous ( const automaton &  aut)

Whether aut is ambiguous.

Precondition
aut is LAL.

Definition at line 645 of file algos.cc.

References vcsn::dyn::detail::is_ambiguous_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_coaccessible ( const automaton &  aut)

Whether aut is coaccessible.

Definition at line 654 of file algos.cc.

References vcsn::dyn::detail::is_coaccessible_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_codeterministic ( const automaton &  aut)

Whether aut is codeterministic.

Precondition
aut is LAL.

Definition at line 663 of file algos.cc.

References vcsn::dyn::detail::is_codeterministic_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_complete ( const automaton &  aut)

Whether aut is complete.

Precondition
aut is LAL.

Definition at line 672 of file algos.cc.

References vcsn::dyn::detail::is_complete_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_costandard ( const automaton &  aut)

Whether is costandard (unique final state, with weight one, no outcoming transition).

Definition at line 681 of file algos.cc.

References vcsn::dyn::detail::is_costandard_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_cycle_ambiguous ( const automaton &  aut)

Whether the automaton is cycle-ambiguous.

Definition at line 690 of file algos.cc.

References vcsn::dyn::detail::is_cycle_ambiguous_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_deterministic ( const automaton &  aut)

Whether aut is deterministic.

Precondition
aut is LAL.

Definition at line 699 of file algos.cc.

References vcsn::dyn::detail::is_deterministic_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_empty ( const automaton &  aut)

Whether has no state.

Definition at line 708 of file algos.cc.

References vcsn::dyn::detail::is_empty_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_eps_acyclic ( const automaton &  aut)

Whether has no cycle of spontaneous transitions.

Definition at line 717 of file algos.cc.

References vcsn::dyn::detail::is_eps_acyclic_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_functional ( const automaton &  aut)

Whether aut is functional.

Precondition
aut is a transducer.

Definition at line 726 of file algos.cc.

References vcsn::dyn::detail::is_functional_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_letterized ( const automaton &  aut)

Whether aut is letterized.

Definition at line 735 of file algos.cc.

References vcsn::dyn::detail::is_letterized_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_normalized ( const automaton &  aut)

Whether is normalized (in the Thompson sense), i.e., standard and co-standard.

Definition at line 744 of file algos.cc.

References vcsn::dyn::detail::is_normalized_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_out_sorted ( const automaton &  aut)

Whether the outgoing transitions of each state have increasing labels.

Definition at line 753 of file algos.cc.

References vcsn::dyn::detail::is_out_sorted_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_partial_identity ( const automaton &  aut)

Whether aut realizes a partial identity.

Precondition
aut is a transducer.

Definition at line 762 of file algos.cc.

References vcsn::dyn::detail::is_partial_identity_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_proper ( const automaton &  aut)

Whether has no spontaneous transition.

Definition at line 771 of file algos.cc.

References vcsn::dyn::detail::is_proper_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_realtime ( const automaton &  aut)

Whether has no spontaneous transition, and is letterized.

Definition at line 780 of file algos.cc.

References vcsn::dyn::detail::is_realtime_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_standard ( const automaton &  aut)

Whether is standard (unique initial state, with weight one, no incoming transition).

Definition at line 789 of file algos.cc.

References vcsn::dyn::detail::is_standard_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_synchronized ( const automaton &  aut)

Whether is synchronized.

Definition at line 798 of file algos.cc.

References vcsn::dyn::detail::is_synchronized_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_synchronized_by ( const automaton &  aut,
const word &  word 
)

Whether the word synchronizes aut.

Definition at line 807 of file algos.cc.

References vcsn::dyn::detail::is_synchronized_by_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_synchronizing ( const automaton &  aut)

Whether is synchronizing.

Definition at line 816 of file algos.cc.

References vcsn::dyn::detail::is_synchronizing_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_trim ( const automaton &  aut)

Whether has no useless state.

Definition at line 825 of file algos.cc.

References vcsn::dyn::detail::is_trim_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_useless ( const automaton &  aut)

Whether has no useful state.

Definition at line 834 of file algos.cc.

References vcsn::dyn::detail::is_useless_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_valid ( const automaton &  e)

Whether automaton is valid (epsilon-cycles converge).

Definition at line 843 of file algos.cc.

References vcsn::dyn::detail::is_valid_registry().

Here is the call graph for this function:

bool vcsn::dyn::is_valid ( const expression &  e)

Whether rational expression is valid (all the starred sub-expressions are starrable).

Definition at line 852 of file algos.cc.

References vcsn::dyn::detail::is_valid_expression_registry().

Here is the call graph for this function:

template<typename ValueSetLhs , typename ValueSetRhs , typename Tag >
auto vcsn::dyn::join ( const value_impl< Tag > &  lhs,
const value_impl< Tag > &  rhs 
)

Return the join of the valuesets of two dyn values and their values in this new valueset.

Definition at line 141 of file value.hh.

References join(), and vcsn::detail::rs.

Here is the call graph for this function:

context vcsn::dyn::join ( const context &  lhs,
const context &  rhs 
)

The join between two contexts, i.e., their lowest common supertype.

Definition at line 861 of file algos.cc.

References vcsn::dyn::detail::join_registry().

Referenced by join(), vcsn::dyn::detail::multiply_label(), and vcsn::dyn::detail::multiply_weight().

Here is the call graph for this function:

automaton vcsn::dyn::ladybird ( const context &  ctx,
unsigned  n 
)

The ladybird automaton with n states.

Definition at line 870 of file algos.cc.

References vcsn::dyn::detail::ladybird_registry().

Here is the call graph for this function:

automaton vcsn::dyn::ldivide ( const automaton &  lhs,
const automaton &  rhs 
)

Left-division of two automata (lhs \ rhs).

Definition at line 879 of file algos.cc.

References vcsn::dyn::detail::ldivide_registry().

Here is the call graph for this function:

weight vcsn::dyn::ldivide ( const expansion &  lhs,
const expansion &  rhs 
)

Left-division of two expansions (lhs \ rhs).

Left-division of two weights (lhs \ rhs).

Left-division of two polynomials (lhs \ rhs).

Left-division of two labels (lhs \ rhs).

Left-division of two expressions (lhs \ rhs).

Definition at line 888 of file algos.cc.

References vcsn::dyn::detail::ldivide_expansion_registry().

Here is the call graph for this function:

bool vcsn::dyn::less_than ( const expression &  lhs,
const expression &  rhs 
)

Ordering between expressions.

Definition at line 933 of file algos.cc.

References vcsn::dyn::detail::less_than_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::letterize ( const automaton &  aut)

The automaton with letter transitions instead of words.

Definition at line 942 of file algos.cc.

References vcsn::dyn::detail::letterize_registry().

Here is the call graph for this function:

automaton vcsn::dyn::levenshtein ( const context &  ls)

The transducer representing the Levenshtein distance.

Definition at line 951 of file algos.cc.

References vcsn::dyn::detail::levenshtein_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::lgcd ( const polynomial &  lhs,
const polynomial &  rhs 
)

Left greatest common divisor of two polynomials (lhs \ rhs).

Definition at line 960 of file algos.cc.

References vcsn::dyn::detail::lgcd_polynomial_registry().

Referenced by vcsn::dyn::detail::lgcd_polynomial().

Here is the call graph for this function:

automaton vcsn::dyn::lift ( const automaton &  aut,
const std::vector< unsigned > &  tapes,
vcsn::rat::identities  ids 
)

Definition at line 69 of file others.cc.

References vcsn::signature::sig, vcsn::rat::to_string(), and vcsn::vname().

Here is the call graph for this function:

automaton vcsn::dyn::lift ( const automaton &  aut,
const std::vector< unsigned > &  tapes = {},
identities  ids = {} 
)

Lift some tapes of the transducer, or turn an automaton into a spontaneous automaton.

Each <k>l transition is mapped to a <<k>l>\\e transition.

Parameters
autthe input automaton
tapesthe tapes to lift to weights
idsthe identities of the expression
expression vcsn::dyn::lift ( const expression &  e)

The lifted LAO rational expression from e.

Definition at line 969 of file algos.cc.

References vcsn::dyn::detail::lift_expression_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::lightest ( const automaton &  aut,
unsigned  num = 1,
const std::string &  algo = "auto" 
)

The approximated behavior of an automaton with smallest weights.

Parameters
autthe automaton whose behavior to approximate
numnumber of words looked for.
algothe specific algorithm to use

Definition at line 978 of file algos.cc.

References vcsn::dyn::detail::lightest_registry().

Here is the call graph for this function:

automaton vcsn::dyn::lightest_automaton ( const automaton &  aut,
unsigned  num = 1,
const std::string &  algo = "auto" 
)

The shortest path automaton using the given algorithm.

Definition at line 987 of file algos.cc.

References vcsn::dyn::detail::lightest_automaton_registry().

Here is the call graph for this function:

automaton vcsn::dyn::lweight ( const weight &  w,
const automaton &  aut,
const std::string &  algo = "auto" 
)

The left-multiplication of an automaton with w as weight.

Parameters
wthe weight to left-multiply
autthe input automaton.
algohow to compute the result.
  • "standard" aut is standard, build a standard automaton.
  • "general" no requirement on aut, but add spontaneous transitions.
  • "auto" "standard" if aut is standard, "general" otherwise.

Definition at line 996 of file algos.cc.

References vcsn::dyn::detail::lweight_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::lweight ( const weight &  w,
const expansion &  exp 
)

The left-multiplication of an expansion with w as weight.

The left-multiplication of a polynomial with w as weight.

The left-multiplication of an expression with w as weight.

Definition at line 1005 of file algos.cc.

References vcsn::dyn::detail::lweight_expansion_registry().

Here is the call graph for this function:

automaton_editor * vcsn::dyn::make_automaton_editor ( const context &  ctx)

Build an automatonset from its context.

Definition at line 1032 of file algos.cc.

References vcsn::dyn::detail::make_automaton_editor_registry().

Referenced by vcsn::lazy_automaton_editor::result(), and vcsn::detail::dot::driver::setup_().

Here is the call graph for this function:

context vcsn::dyn::make_context ( const std::string &  name)

Build a context from its name.

Definition at line 97 of file others.cc.

References compile(), vcsn::ast::normalize_context(), and vcsn::sname().

Referenced by vcsn::rat::driver::context(), vcsn::lazy_automaton_editor::result(), and vcsn::detail::dot::driver::setup_().

Here is the call graph for this function:

context vcsn::dyn::make_word_context ( const context &  ctx)

The context for words.

Definition at line 1041 of file algos.cc.

References vcsn::dyn::detail::make_word_context_registry().

Here is the call graph for this function:

automaton vcsn::dyn::minimize ( const automaton &  aut,
const std::string &  algo = "auto" 
)

The minimized automaton.

Parameters
autthe automaton to minimize
algothe specific algorithm to use
Precondition
aut must be LAL.
aut must be deterministic.

Definition at line 1050 of file algos.cc.

References vcsn::dyn::detail::minimize_registry().

Here is the call graph for this function:

automaton vcsn::dyn::multiply ( const automaton &  lhs,
const automaton &  rhs,
const std::string &  algo = "auto" 
)

Multiply (concatenate) two automata.

Parameters
lhsan automaton.
rhsanother one.
algohow to compute the result
  • "standard" both lhs and rhs are standard, build a standard automaton.
  • "general" no requirement on lhs and and rhs, but add spontaneous transitions.
  • "auto" "standard" if both automata are standard, "general" otherwise.

Definition at line 1059 of file algos.cc.

References vcsn::dyn::detail::multiply_registry().

Referenced by vcsn::dyn::detail::multiply_label(), vcsn::dyn::detail::multiply_polynomial(), and vcsn::rat::parser::parse().

Here is the call graph for this function:

automaton vcsn::dyn::multiply ( const automaton &  aut,
int  min,
int  max = -2,
const std::string &  algo = "auto" 
)

Repeated multiplication (concatenation) of an automaton with itself.

Parameters
autthe automaton.
minthe minimum number. If -1, denotes 0.
maxthe maximum number. If -1, denotes infinity, using star. If -2, denotes the same value as min.
algohow to compute the result
  • "standard" aut is standard, build a standard automaton.
  • "general" no requirement on aut, but add spontaneous transitions.
  • "auto" "standard" if aut is standard, "general" otherwise.

Definition at line 1113 of file algos.cc.

References vcsn::dyn::detail::multiply_repeated_registry().

Here is the call graph for this function:

expression vcsn::dyn::multiply ( const expression &  lhs,
const expression &  rhs 
)

Multiply (concatenate) two expressions.

Multiply two weights.

Multiply two polynomials.

Multiply (concatenate) two labels.

Definition at line 1068 of file algos.cc.

References vcsn::dyn::detail::multiply_expression_registry().

Here is the call graph for this function:

expression vcsn::dyn::multiply ( const expression &  e,
int  min,
int  max = -2 
)

Repeated multiplication (concatenation) of an expression with itself.

Repeated multiplication of a weight with itself.

Parameters
ethe expression.
minthe minimum number. If -1, denotes 0.
maxthe maximum number. If -1, denotes infinity, using star. If -2, denotes the same value as min.
ethe weight.
minthe minimum number. If -1, denotes 0.
maxthe maximum number. If -1, denotes infinity, using star. If -2, denotes the same value as min.

Definition at line 1077 of file algos.cc.

References vcsn::dyn::detail::multiply_expression_repeated_registry().

Here is the call graph for this function:

label vcsn::dyn::multiply ( const label &  l,
int  num 
)

Repeated multiplication of a label with itself.

Parameters
lthe label.
numthe exponent.

Definition at line 1095 of file algos.cc.

References vcsn::dyn::detail::multiply_label_repeated_registry().

Here is the call graph for this function:

automaton vcsn::dyn::normalize ( const automaton &  aut)

Normalize automaton aut.

Definition at line 1140 of file algos.cc.

References vcsn::dyn::detail::normalize_registry().

Here is the call graph for this function:

std::size_t vcsn::dyn::num_components ( const automaton &  aut)

The number of strongly connected components.

Definition at line 1149 of file algos.cc.

References vcsn::dyn::detail::num_components_registry().

Here is the call graph for this function:

size_t vcsn::dyn::num_tapes ( const context &  ctx)

The number of input tapes.

Returns
0 if the context is not tupleset.

Definition at line 1158 of file algos.cc.

References vcsn::dyn::detail::num_tapes_registry().

Referenced by vcsn::rat::driver::context(), and vcsn::rat::parser::parse().

Here is the call graph for this function:

std::ostream & vcsn::dyn::operator<< ( std::ostream &  o,
const automaton &  a 
)

Output automaton a on o.

Definition at line 178 of file print.cc.

References get_format(), and print().

Here is the call graph for this function:

std::ostream & vcsn::dyn::operator<< ( std::ostream &  o,
const context &  c 
)

Output context c on o.

Definition at line 184 of file print.cc.

References get_format(), and print().

Here is the call graph for this function:

std::ostream & vcsn::dyn::operator<< ( std::ostream &  o,
const expansion &  e 
)

Output expansion e on o.

Output weight w on o.

Output polynomial p on o.

Output label l on o.

Output expression r on o.

Definition at line 190 of file print.cc.

References get_format(), and print().

Here is the call graph for this function:

automaton vcsn::dyn::pair ( const automaton &  aut,
bool  keep_initials = false 
)

Build the pair automaton of the given automaton.

Definition at line 1167 of file algos.cc.

References vcsn::dyn::detail::pair_registry().

Here is the call graph for this function:

automaton vcsn::dyn::partial_identity ( const automaton &  aut)

Create a partial identity transducer from aut.

Definition at line 1176 of file algos.cc.

References vcsn::dyn::detail::partial_identity_registry().

Here is the call graph for this function:

expression vcsn::dyn::partial_identity ( const expression &  e)

Create a partial-identity two-tape expression from e.

Definition at line 1185 of file algos.cc.

References vcsn::dyn::detail::partial_identity_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::prefix ( const automaton &  aut)

Create a prefix automaton from aut.

Definition at line 1194 of file algos.cc.

References vcsn::dyn::detail::prefix_registry().

Here is the call graph for this function:

std::ostream & vcsn::dyn::print ( const automaton &  aut,
std::ostream &  out = std::cout,
const std::string &  format = "default" 
)

Print automaton a on out using format format.

Parameters
autthe automaton to format
outthe output stream where to print the dot file
formatthe output format.
  • "default" Same as "dot".
  • "dot" GraphViz' Dot format.
  • "dot,utf8" Likewise, but benefit from UTF-8
  • "dot,latex" Likewise, but generate LaTeX escapes for use with dot2tex.
  • "efsm" Extended FSM.
  • "fado" FAdo format.
  • "grail" Grail format.
  • "tikz" LaTeX's TikZ format.

Definition at line 1203 of file algos.cc.

References vcsn::dyn::detail::print_registry().

Referenced by operator<<().

Here is the call graph for this function:

std::ostream & vcsn::dyn::print ( const context &  c,
std::ostream &  out = std::cout,
const std::string &  format = "default" 
)

Print context c on out using format format.

Definition at line 1212 of file algos.cc.

References vcsn::dyn::detail::print_context_registry().

Here is the call graph for this function:

std::ostream & vcsn::dyn::print ( const expansion &  e,
std::ostream &  out = std::cout,
const std::string &  format = "default" 
)

Print expansion e on out using format format.

Print weight w on out using format format.

Print polynomial p on out using format format.

Print label l on out using format format.

Print expression e on out using format format.

Definition at line 23 of file print.cc.

References vcsn::detail::out(), and vcsn::str_escape().

Here is the call graph for this function:

automaton vcsn::dyn::project ( const automaton &  aut,
unsigned  tape 
)

Keep a single tape from a multiple-tape automaton.

Definition at line 113 of file others.cc.

References to_integral_constant().

Referenced by vcsn::rat::driver::context().

Here is the call graph for this function:

context vcsn::dyn::project ( const context &  ctx,
unsigned  tape 
)

Keep a single tape from a multiple-tape context.

Definition at line 121 of file others.cc.

References to_integral_constant().

Here is the call graph for this function:

label vcsn::dyn::project ( const expansion &  xpn,
unsigned  tape 
)

Keep a single tape from a multiple-tape expansion.

Keep a single tape from a multiple-tape label.

Keep a single tape from a multiple-tape polynomial.

Keep a single tape from a multiple-tape expression.

Definition at line 129 of file others.cc.

References to_integral_constant().

Here is the call graph for this function:

automaton vcsn::dyn::proper ( const automaton &  aut,
direction  dir = direction::backward,
bool  prune = true,
const std::string &  algo = "auto" 
)

An equivalent automaton without spontaneous transitions.

Parameters
autthe automaton in which to remove them
dirthe direction of the closure
prunewhether to delete states that become inaccessible
algohow elimination is performed
  • "auto" same as "inplace"
  • "default" same as "inplace"
  • "inplace" eliminate in place
  • "separate" first separate the automaton into spontaneous and proper parts
  • "distance" compute all-pairs distances

Definition at line 1221 of file algos.cc.

References vcsn::dyn::detail::proper_registry().

Here is the call graph for this function:

automaton vcsn::dyn::push_weights ( const automaton &  aut)

The weight pushing automaton of aut.

Definition at line 1230 of file algos.cc.

References vcsn::dyn::detail::push_weights_registry().

Here is the call graph for this function:

automaton vcsn::dyn::quotkbaseb ( const context &  ctx,
unsigned  divisor,
unsigned  base 
)

A transducer that computes the quotient of the division of a word n by k in base b iff k|n.

Definition at line 1239 of file algos.cc.

References vcsn::dyn::detail::quotkbaseb_registry().

Here is the call graph for this function:

automaton vcsn::dyn::random_automaton ( const context &  ctx,
unsigned  num_states,
float  density = 0.1,
unsigned  num_initial = 1,
unsigned  num_final = 1,
boost::optional< unsigned >  max_labels = {},
float  loop_chance = 0.0,
const std::string &  weights = "" 
)

A random automaton.

Parameters
ctxThe context of the result.
num_statesThe number of states wanted in the automata (>0). All states will be connected, and there will be no dead state. However, some might not be coaccessible.
densityThe density of the automata. This is the probability (between 0.0 and 1.0), to add a transition between two states. All states have at least one outgoing transition, so d is considered only when adding the remaining transition. A density of 1 means all states will be connected to each other.
num_initialThe number of initial states wanted (0 <= num_initial <= num_states)
num_finalThe number of final states wanted (0 <= num_final <= num_states)
max_labelsThe maximum number of labels per transition. Defaults to the number of generators.
loop_chanceThe probability (between 0.0 and 1.0) for each state to have a loop.
weightsThe specification string (following the format of random_weight) used to generate weights on each transitions.

Definition at line 1248 of file algos.cc.

References vcsn::dyn::detail::random_automaton_registry().

Here is the call graph for this function:

automaton vcsn::dyn::random_automaton_deterministic ( const context &  ctx,
unsigned  num_states 
)

A random deterministic automaton.

Parameters
ctxThe context of the result.
num_statesThe number of states wanted in the automata (>0).

Definition at line 1257 of file algos.cc.

References vcsn::dyn::detail::random_automaton_deterministic_registry().

Here is the call graph for this function:

expression vcsn::dyn::random_expression ( const context &  ctx,
const std::string &  param = "+, ., *=.2, w., .w, length=10",
identities  ids = {} 
)

A random expression.

Parameters
ctxThe context of the result.
paramA specification of the wanted operators and their relative probability. May also contain the maximum number of symbols of the expression with key length. For instance: "+=1,.=2,{T}=0.5,length=6".
idsThe identities to use for the expression.

Definition at line 1266 of file algos.cc.

References vcsn::dyn::detail::random_expression_registry().

Here is the call graph for this function:

weight vcsn::dyn::random_weight ( const context &  ctx,
const std::string &  param 
)

A random weight.

Parameters
ctxThe context of the result.
paramA string containing paramaters for the generation such as the min and max, or an element you want with specific probability. For instance: "1=0.2, 10=0.3, min=0, max=20".

Definition at line 1275 of file algos.cc.

References vcsn::dyn::detail::random_weight_registry().

Here is the call graph for this function:

automaton vcsn::dyn::rdivide ( const automaton &  lhs,
const automaton &  rhs 
)

Right-division of two automata (lhs / rhs).

Definition at line 1284 of file algos.cc.

References vcsn::dyn::detail::rdivide_registry().

Referenced by vcsn::rat::parser::parse().

Here is the call graph for this function:

expression vcsn::dyn::rdivide ( const expression &  lhs,
const expression &  rhs 
)

Right-division of two expressions (lhs / rhs).

Right-division of two weights (lhs / rhs).

Right-division of two labels (lhs / rhs).

Definition at line 1293 of file algos.cc.

References vcsn::dyn::detail::rdivide_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::read_automaton ( std::istream &  is,
const std::string &  format = "default",
bool  strip = true 
)

Read an automaton from a stream.

Parameters
isthe input stream.
formatits format.
stripwhether to return a stripped automaton, or a named automaton.

Definition at line 34 of file read.cc.

References read_daut(), read_efsm(), read_fado(), vcsn::res, and strip().

Here is the call graph for this function:

automaton vcsn::dyn::read_daut ( std::istream &  is)

Definition at line 125 of file daut.cc.

References vcsn::require().

Referenced by read_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::read_efsm ( std::istream &  is)

Definition at line 103 of file efsm.cc.

References vcsn::detail::ctx, vcsn::lazy_automaton_editor::open(), and vcsn::require().

Referenced by read_automaton().

Here is the call graph for this function:

expression vcsn::dyn::read_expression ( const context &  ctx,
rat::identities  ids,
std::istream &  is,
const std::string &  f 
)

Definition at line 60 of file read.cc.

References vcsn::detail::ctx, vcsn::rat::ids(), and vcsn::rat::read().

Here is the call graph for this function:

expression vcsn::dyn::read_expression ( const context &  ctx,
identities  ids,
std::istream &  is,
const std::string &  format = "default" 
)

Read an expression from a stream.

Parameters
ctxthe context.
idsthe identities to apply.
isthe input stream.
formatthe expression's format.

Referenced by vcsn::rat::expressionset_impl< Context >::conv().

automaton vcsn::dyn::read_fado ( std::istream &  is)

Definition at line 42 of file fado.cc.

References vcsn::lazy_automaton_editor::open(), and vcsn::require().

Referenced by read_automaton().

Here is the call graph for this function:

label vcsn::dyn::read_label ( const context &  ctx,
std::istream &  is,
const std::string &  format = "default" 
)

Read a label from a stream.

Parameters
ctxthe context.
isthe input stream.
formatthe label's format.

Definition at line 85 of file read.cc.

Referenced by vcsn::rat::driver::make_label().

polynomial vcsn::dyn::read_polynomial ( const context &  ctx,
std::istream &  is 
)

Read a polynomial from a stream.

Parameters
ctxits context, from which is built its polynomialset.
isthe stream to parse.

Definition at line 1320 of file algos.cc.

References vcsn::dyn::detail::read_polynomial_registry().

Here is the call graph for this function:

weight vcsn::dyn::read_weight ( const context &  ctx,
std::istream &  is 
)

Read a weight from a stream.

Parameters
ctxthe context.
isthe input stream.

Definition at line 1329 of file algos.cc.

References vcsn::dyn::detail::read_weight_registry().

Referenced by vcsn::rat::driver::make_weight().

Here is the call graph for this function:

automaton vcsn::dyn::realtime ( const automaton &  aut)

Create the realtime automaton (letterized and proper).

Definition at line 1338 of file algos.cc.

References vcsn::dyn::detail::realtime_registry().

Here is the call graph for this function:

automaton vcsn::dyn::reduce ( const automaton &  aut)

Reduce aut.

Definition at line 1347 of file algos.cc.

References vcsn::dyn::detail::reduce_registry().

Here is the call graph for this function:

automaton vcsn::dyn::rweight ( const automaton &  aut,
const weight &  w,
const std::string &  algo = "auto" 
)

The right-mult automaton with w as weight.

Parameters
autthe input automaton.
wthe weight to right-multiply
algohow to compute the result. In most cases, "standard" and "general" have equal results. The only difference in when when w is null, in which case "general" produces an empty automaton, while "standard" produces an automaton with a single state, which is initial (and, of course, no final states).
  • "standard" aut is standard, build a standard automaton.
  • "general" no requirement on aut, but add spontaneous transitions.
  • "auto" "standard" if aut is standard, "general" otherwise.

Definition at line 1356 of file algos.cc.

References vcsn::dyn::detail::rweight_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::rweight ( const expansion &  aut,
const weight &  w 
)

The right-multiplication of an expansion with w as weight.

The right-multiplication of a polynomial with w as weight.

The right-multiplication of an expression with w as weight.

Definition at line 1365 of file algos.cc.

References vcsn::dyn::detail::rweight_expansion_registry().

Here is the call graph for this function:

automaton vcsn::dyn::scc ( const automaton &  aut,
const std::string &  algo = "auto" 
)

Build the SCC automaton whose states are labeled with number of the strongly-connected component they belong to.

Parameters
autthe input automaton.
algothe specific algorithm to use.

Definition at line 1392 of file algos.cc.

References vcsn::dyn::detail::scc_registry().

Here is the call graph for this function:

void vcsn::dyn::set_format ( std::ostream &  out,
const std::string &  format 
)

Specify the output format for out.

Definition at line 164 of file print.cc.

References format_flag.

polynomial vcsn::dyn::shortest ( const automaton &  aut,
boost::optional< unsigned >  num = {},
boost::optional< unsigned >  len = {} 
)

The approximated behavior of an automaton.

Parameters
autthe automaton whose behavior to approximate
numnumber of words looked for.
lenmaximum length of words looked for.

Definition at line 1401 of file algos.cc.

References vcsn::dyn::detail::shortest_registry().

Here is the call graph for this function:

automaton vcsn::dyn::shuffle ( const automaton &  lhs,
const automaton &  rhs 
)

The shuffle product of automata lhs and rhs.

Performs the join of their type.

Definition at line 164 of file others.cc.

automaton vcsn::dyn::shuffle ( const std::vector< automaton > &  as)

The shuffle product of automata.

Performs the join of their types.

Definition at line 1410 of file algos.cc.

References vcsn::dyn::detail::shuffle_registry().

Here is the call graph for this function:

expression vcsn::dyn::shuffle ( const expression &  lhs,
const expression &  rhs 
)

The shuffle product of expressions lhs and rhs.

Performs the join of their type.

Definition at line 1419 of file algos.cc.

References vcsn::dyn::detail::shuffle_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::sort ( const automaton &  a)

A copy of a with normalized state numbers.

Definition at line 1428 of file algos.cc.

References vcsn::dyn::detail::sort_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::split ( const expression &  exp)

Break exp.

Break all the expressions in p.

Definition at line 1437 of file algos.cc.

References vcsn::dyn::detail::split_registry().

Referenced by vcsn::split_polynomial().

Here is the call graph for this function:

automaton vcsn::dyn::standard ( const automaton &  a)

A standardized a.

Definition at line 1455 of file algos.cc.

References vcsn::dyn::detail::standard_registry().

Referenced by to_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::standard ( const expression &  e)

The standard automaton of e.

Definition at line 1464 of file algos.cc.

References vcsn::dyn::detail::standard_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::star ( const automaton &  aut,
const std::string &  algo = "auto" 
)

Star of an automaton.

Parameters
autthe input automaton.
algohow to compute the result.
  • "standard" aut is standard, build a standard automaton.
  • "general" no requirement on aut, but add spontaneous transitions.
  • "auto" "standard" if aut is standard, "general" otherwise.

Definition at line 1473 of file algos.cc.

References vcsn::dyn::detail::star_registry().

Here is the call graph for this function:

unsigned vcsn::dyn::star_height ( const expression &  rs)

Star height of an expression.

Definition at line 1482 of file algos.cc.

References vcsn::dyn::detail::star_height_registry().

Here is the call graph for this function:

expression vcsn::dyn::star_normal_form ( const expression &  e)

A normalized form where star is applied only to proper expressions.

Precondition
e is Boolean.

Definition at line 1491 of file algos.cc.

References vcsn::dyn::detail::star_normal_form_registry().

Here is the call graph for this function:

automaton vcsn::dyn::strip ( const automaton &  a)

The automaton in a with its metadata layers removed.

Definition at line 1500 of file algos.cc.

References vcsn::dyn::detail::strip_registry().

Referenced by read_automaton(), and to_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::subword ( const automaton &  aut)

Create a subword automaton from aut.

For each non-spontaneous transition, add a spontaneous transition with same source, destination, and weight.

Definition at line 1509 of file algos.cc.

References vcsn::dyn::detail::subword_registry().

Here is the call graph for this function:

automaton vcsn::dyn::suffix ( const automaton &  aut)

Create a suffix automaton from aut.

Definition at line 1518 of file algos.cc.

References vcsn::dyn::detail::suffix_registry().

Here is the call graph for this function:

automaton vcsn::dyn::synchronize ( const automaton &  aut)

Create a synchronized transducer from aut.

Definition at line 1527 of file algos.cc.

References vcsn::dyn::detail::synchronize_registry().

Here is the call graph for this function:

label vcsn::dyn::synchronizing_word ( const automaton &  aut,
const std::string &  algo = "greedy" 
)

A synchronizing word, or raise if there is none.

Definition at line 1536 of file algos.cc.

References vcsn::dyn::detail::synchronizing_word_registry().

Here is the call graph for this function:

automaton vcsn::dyn::thompson ( const expression &  e)

The Thompson automaton of e.

Definition at line 1545 of file algos.cc.

References vcsn::dyn::detail::thompson_registry().

Referenced by to_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::to_automaton ( const expression &  exp,
const std::string &  algo = "auto" 
)

An automaton denoting the language of exp.

Parameters
expthe expression defining the series.
algothe conversion algorithm.
  • "auto": currently equivalent to "expansion", eventually should mix "standard" for basic expressions (faster) and "expansion" otherwise (more general).
  • "derivation": use derivation-based expression.derived_term, stripped.
  • "derived_term": same as "expansion"
  • "expansion": use expansion-based expression.derived_term, stripped.
  • "inductive": use expression.inductive
  • "standard": use expression.standard.
  • "thompson": use expression.thompson.
  • "zpc": use expression.zpc.
  • "zpc,compact": use expression.zpc, "compact" version.

Definition at line 176 of file others.cc.

References derived_term(), inductive(), standard(), strip(), thompson(), trim(), and zpc().

Here is the call graph for this function:

expansion vcsn::dyn::to_expansion ( const expression &  exp)

First order development of a exp.

Parameters
expthe input expression

Definition at line 1554 of file algos.cc.

References vcsn::dyn::detail::to_expansion_registry().

Here is the call graph for this function:

expression vcsn::dyn::to_expression ( const automaton &  aut,
identities  ids = {},
const std::string &  algo = "auto" 
)

An expression denoting the language of aut.

Parameters
autthe input automaton
idsthe identities to use for the expression
algothe state selection strategy

Definition at line 1563 of file algos.cc.

References vcsn::dyn::detail::to_expression_registry().

Referenced by vcsn::rat::driver::make_atom(), vcsn::rat::driver::make_expression(), and vcsn::dyn::detail::to_expression_class().

Here is the call graph for this function:

expression vcsn::dyn::to_expression ( const context &  ctx,
identities  ids,
const label &  l 
)

An expression denoting the label of l.

Definition at line 1581 of file algos.cc.

References vcsn::dyn::detail::to_expression_label_registry().

Here is the call graph for this function:

expression vcsn::dyn::to_expression ( const context &  ctx,
identities  ids,
const letter_class_t &  letters,
bool  accept = true 
)

An expression matching one letter in a letter class.

Parameters
ctxThe context to use.
idsThe identities to use for the expression
lettersThe letter class as a set of ranges.
acceptWhether to accept these characters ([abc]) as opposed to refusing them ([^abc]).

Definition at line 1572 of file algos.cc.

References vcsn::dyn::detail::to_expression_class_registry().

Here is the call graph for this function:

static integral_constant vcsn::dyn::to_integral_constant ( unsigned  tape)
static

Definition at line 36 of file others.cc.

References vcsn::rat::to_string().

Referenced by focus(), and project().

Here is the call graph for this function:

automaton vcsn::dyn::transpose ( automaton &  aut)

Transpose aut.

Definition at line 1590 of file algos.cc.

References vcsn::dyn::detail::transpose_registry().

Referenced by vcsn::rat::parser::parse().

Here is the call graph for this function:

expression vcsn::dyn::transpose ( const expression &  e)

Transpose e.

Definition at line 1599 of file algos.cc.

References vcsn::dyn::detail::transpose_expression_registry().

Here is the call graph for this function:

expression vcsn::dyn::transposition ( const expression &  r)

Add the transposition operator to r.

Definition at line 1608 of file algos.cc.

References vcsn::dyn::detail::transposition_expression_registry().

Here is the call graph for this function:

automaton vcsn::dyn::trie ( const polynomial &  p)

A trie-like automaton (single initial state, multiple final states) to accept p.

Parameters
pthe polynomial that describes the (finite) series

Definition at line 1617 of file algos.cc.

References vcsn::dyn::detail::trie_registry().

Here is the call graph for this function:

automaton vcsn::dyn::trie ( const context &  ctx,
std::istream &  is,
const std::string &  format = "default" 
)

A trie-like automaton (single initial state, multiple final states) to accept the series contained in is.

Parameters
ctxthe (word-based) context used to read the words.
isthe input stream.
formatthe format of the file: "words" or "monomials".

Definition at line 1626 of file algos.cc.

References vcsn::dyn::detail::trie_stream_registry().

Here is the call graph for this function:

automaton vcsn::dyn::trim ( const automaton &  aut)

The trim subautomaton of aut.

Definition at line 1635 of file algos.cc.

References vcsn::dyn::detail::trim_registry().

Referenced by to_automaton().

Here is the call graph for this function:

automaton vcsn::dyn::tuple ( const automaton &  lhs,
const automaton &  rhs 
)

Build a two-tape automaton from two automata.

Parameters
lhsthe left automaton
rhsthe right automaton

Definition at line 219 of file others.cc.

Referenced by vcsn::rat::parser::parse(), and tuple().

automaton vcsn::dyn::tuple ( const std::vector< automaton > &  as)

Build a k-tape automaton from k automata.

Parameters
asthe automata

Definition at line 1644 of file algos.cc.

References vcsn::dyn::detail::tuple_registry().

Here is the call graph for this function:

context vcsn::dyn::tuple ( const context &  lhs,
const context &  rhs 
)

Tuple two contexts.

Definition at line 226 of file others.cc.

References tuple().

Here is the call graph for this function:

context vcsn::dyn::tuple ( const std::vector< context > &  ctxs)

A k-tape context from k contexts.

Parameters
ctxsthe contexts

Definition at line 1653 of file algos.cc.

References vcsn::dyn::detail::tuple_context_registry().

Here is the call graph for this function:

polynomial vcsn::dyn::tuple ( const std::vector< expansion > &  rs)

Build a k-tape expansion from k expansions.

Build a k-tape polynomial from k polynomials.

Build a k-tape expression from k expressions.

Definition at line 1662 of file algos.cc.

References vcsn::dyn::detail::tuple_expansion_registry().

Here is the call graph for this function:

expression vcsn::dyn::tuple ( const expression &  lhs,
const expression &  rhs 
)

Build a two-tape expression from two expressions.

Definition at line 233 of file others.cc.

References tuple().

Here is the call graph for this function:

automaton vcsn::dyn::u ( const context &  ctx,
unsigned  n 
)

The Brzozowski universal witness.

Definition at line 1689 of file algos.cc.

References vcsn::dyn::detail::u_registry().

Here is the call graph for this function:

automaton vcsn::dyn::universal ( const automaton &  aut)

The universal automaton of aut.

Definition at line 1698 of file algos.cc.

References vcsn::dyn::detail::universal_registry().

Here is the call graph for this function:

weight vcsn::dyn::weight_one ( const context &  c)

The weight one.

Definition at line 1707 of file algos.cc.

References vcsn::dyn::detail::weight_one_registry().

Here is the call graph for this function:

weight vcsn::dyn::weight_series ( const automaton &  aut)

Compute weight of the series.

Definition at line 1716 of file algos.cc.

References vcsn::dyn::detail::weight_series_registry().

Here is the call graph for this function:

weight vcsn::dyn::weight_zero ( const context &  c)

The weight zero.

Definition at line 1725 of file algos.cc.

References vcsn::dyn::detail::weight_zero_registry().

Here is the call graph for this function:

automaton vcsn::dyn::zpc ( const expression &  exp,
const std::string &  algo = "auto" 
)

The ZPC automaton of exp.

Parameters
expthe expression to build the automaton from.
algothe specific algorithm to use. It can be "regular"/"auto" or the variant "compact".

Definition at line 1734 of file algos.cc.

References vcsn::dyn::detail::zpc_registry().

Referenced by to_automaton().

Here is the call graph for this function:

Variable Documentation

xalloc<const std::string*> vcsn::dyn::format_flag

Definition at line 161 of file print.cc.

Referenced by get_format(), and set_format().