26 namespace VCSN_GRAPH_IMPL
28 VCSN_CONTEXT_NAMESPACE
30 template <
class T1,
class T2>
31 automaton_t make_automaton(
const T1& first_alphabet,
32 const T2& second_alphabet);
34 template <
class T1,
class T2>
35 automaton_t make_automaton(
const T1& first_alphabet,
36 const T2& second_alphabet,
37 const monoid_rep_t& mrep,
38 const first_monoid_rep_t& mrep1,
39 const second_monoid_rep_t& mrep2,
40 const series_rep_t& srep);
42 template <
class FirstInputIterator,
class SecondInputIterator>
43 automaton_t make_automaton(
const FirstInputIterator first_begin,
44 const FirstInputIterator first_end,
45 const SecondInputIterator second_begin,
46 const SecondInputIterator second_end);
48 template <
class FirstInputIterator,
class SecondInputIterator>
49 automaton_t make_automaton(
const FirstInputIterator first_begin,
50 const FirstInputIterator first_end,
51 const SecondInputIterator second_begin,
52 const SecondInputIterator second_end,
53 const monoid_rep_t& mrep,
54 const first_monoid_rep_t& mrep1,
55 const second_monoid_rep_t& mrep2,
56 const series_rep_t& srep);
58 template <
class T1,
class T2>
59 monoid_elt_t make_couple(
const T1& first_alphabet,
60 const T2& second_alphabet,
61 const first_monoid_elt_value_t& first_exp,
62 const second_monoid_elt_value_t& second_exp);
64 template <
class FirstIterator,
class SecondIterator>
65 monoid_elt_t make_couple(
const FirstIterator first_begin,
66 const FirstIterator first_end,
67 const SecondIterator second_begin,
68 const SecondIterator second_end,
69 const first_monoid_elt_value_t& first_exp,
70 const second_monoid_elt_value_t& second_exp);
72 template <
typename TransStruct,
76 AUTOMATON_CONTEXT::rat_exp_t
77 evaluation(
const Element<TransStruct, TransImpl>& t,
78 const Element<ArgStruct, ArgImpl>& input);
83 template <
class Chooser>
85 aut_to_exp(
const automaton_t& a,
const Chooser& c);
90 # include <vaucanson/contexts/fmp_transducer_maker.thxx>