00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 namespace vcsn
00025 {
00026 namespace VCSN_GRAPH_IMPL
00027 {
00028 VCSN_CONTEXT_NAMESPACE
00029 {
00030 template <class T1, class T2>
00031 automaton_t make_automaton(const T1& first_alphabet,
00032 const T2& second_alphabet,
00033 const monoid_rep_t& mrep =
00034 *(vcsn::algebra::monoid_rep_default<monoid_t>::get_instance()),
00035 const first_monoid_rep_t& mrep1 =
00036 *(vcsn::algebra::monoid_rep_default<first_monoid_t>::get_instance()),
00037 const second_monoid_rep_t& mrep2 =
00038 *(vcsn::algebra::monoid_rep_default<second_monoid_t>::get_instance()),
00039 const series_rep_t& srep =
00040 *(vcsn::algebra::series_rep_default<semiring_t, monoid_t>::get_instance()),
00041 const first_series_rep_t& srep1 =
00042 *(vcsn::algebra::series_rep_default<semiring_t, first_monoid_t>::get_instance()),
00043 const second_series_rep_t& srep2 =
00044 *(vcsn::algebra::series_rep_default<semiring_t, second_monoid_t>::get_instance()));
00045
00046 template <class FirstInputIterator, class SecondInputIterator>
00047 automaton_t make_automaton(const FirstInputIterator first_begin,
00048 const FirstInputIterator first_end,
00049 const SecondInputIterator second_begin,
00050 const SecondInputIterator second_end,
00051 const monoid_rep_t& mrep =
00052 *(vcsn::algebra::monoid_rep_default<monoid_t>::get_instance()),
00053 const first_monoid_rep_t& mrep1 =
00054 *(vcsn::algebra::monoid_rep_default<first_monoid_t>::get_instance()),
00055 const second_monoid_rep_t& mrep2 =
00056 *(vcsn::algebra::monoid_rep_default<second_monoid_t>::get_instance()),
00057 const series_rep_t& srep =
00058 *(vcsn::algebra::series_rep_default<semiring_t, monoid_t>::get_instance()),
00059 const first_series_rep_t& srep1 =
00060 *(vcsn::algebra::series_rep_default<semiring_t, first_monoid_t>::get_instance()),
00061 const second_series_rep_t& srep2 =
00062 *(vcsn::algebra::series_rep_default<semiring_t, second_monoid_t>::get_instance()));
00063
00064 template <class T1, class T2>
00065 monoid_elt_t make_couple(const T1& first_alphabet,
00066 const T2& second_alphabet,
00067 const std::string& first_exp = "",
00068 const std::string& second_exp = "");
00069
00070 template <class FirstIterator, class SecondIterator>
00071 monoid_elt_t make_couple(const FirstIterator first_begin,
00072 const FirstIterator first_end,
00073 const SecondIterator second_begin,
00074 const SecondIterator second_end,
00075 const std::string& first_exp,
00076 const std::string& second_exp);
00077
00078 template <typename TransStruct,
00079 typename TransImpl,
00080 typename ArgStruct,
00081 typename ArgImpl>
00082 AUTOMATON_CONTEXT::rat_exp_t
00083 evaluation(const Element<TransStruct, TransImpl>& t,
00084 const Element<ArgStruct, ArgImpl>& input);
00085
00086 }
00087 }
00088 }
00089
00090 # include <vaucanson/contexts/fmp_transducer_maker.thxx>
00091