00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef VCSN_ALGORITHMS_KRAT_EXP_DERIVATION_HH
00018 # define VCSN_ALGORITHMS_KRAT_EXP_DERIVATION_HH
00019
00030 # include <vaucanson/design_pattern/design_pattern.hh>
00031
00032 # include <utility>
00033
00034 namespace vcsn {
00035
00038
00039 template <class Series, class T, class Letter>
00040 std::pair<Element<Series, T>, bool>
00041 derivate(const Element<Series, T>& exp,
00042 Letter a);
00043
00045 template <class Series, class T, class Word>
00046 std::pair<Element<Series, T>, bool>
00047 word_derivate(const Element<Series, T>& exp,
00048 Word a);
00049
00052 }
00053
00054 # if !defined VCSN_USE_INTERFACE_ONLY && !defined VCSN_USE_LIB
00055 # include <vaucanson/algorithms/krat_exp_derivation.hxx>
00056 # endif // VCSN_USE_INTERFACE_ONLY
00057
00058 #endif // ! VCSN_ALGORITHMS_KRAT_EXP_DERIVATION_HH