14 #ifndef FREE_ABELIAN_H 15 #define FREE_ABELIAN_H 21 namespace free_abelian {
34 template<
typename T,
typename C,
typename Compare>
35 struct Free_Abelian :
public std::map<T,C,Compare>
38 typedef std::map<T,coef_t,Compare>
base;
60 template<
typename InputIterator>
61 Free_Abelian(InputIterator first, InputIterator last, Compare c=Compare())
62 : base(first,last,c) {}
81 typename base::const_iterator p=base::find(t);
90 template<
typename T,
typename C=
long int,
typename Compare=std::less<T> >
105 template<
typename InputIterator>
106 Monoid_Ring(InputIterator first, InputIterator last, Compare c=Compare())
107 : base(first,last,c) {}
Monoid_Ring()
Definition: free_abelian.h:98
Free_Abelian & operator+=(const T &p)
Definition: free_abelian.h:65
Monoid_Ring(InputIterator first, InputIterator last, Compare c=Compare())
Definition: free_abelian.h:106
uA p
Definition: lists.cpp:26
base::iterator iterator
Definition: free_abelian.h:39
base::const_iterator const_iterator
Definition: free_abelian.h:40
Free_Abelian(const T &p, C m, Compare c=Compare())
Definition: free_abelian.h:52
Free_Abelian & operator+=(const Free_Abelian &p)
Definition: free_abelian.h:70
Monoid_Ring(T p, C m, Compare c=Compare())
Definition: free_abelian.h:103
base::const_iterator const_iterator
Definition: free_abelian.h:96
base::iterator iterator
Definition: free_abelian.h:95
C operator[](const T &t) const
Definition: free_abelian.h:79
Monoid_Ring(const typename base::base &m)
Definition: free_abelian.h:101
RationalVector< C2 > operator*(const matrix::Matrix< C1 > &M, const RationalVector< C2 > &v)
Definition: ratvec.cpp:158
std::map< T, coef_t, Compare > base
Definition: free_abelian.h:38
Free_Abelian & operator-=(const T &p)
Definition: free_abelian.h:66
Free_Abelian & add_term(const T &p, C m)
Definition: free_abelian_def.h:22
Free_Abelian< T, C, Compare > base
Definition: free_abelian.h:94
C coef_t
Definition: free_abelian.h:93
Free_Abelian()
Definition: free_abelian.h:42
Monoid_Ring(Compare c)
Definition: free_abelian.h:99
simple_list< T, Alloc >::const_iterator end(const simple_list< T, Alloc > &l)
Definition: sl_list.h:650
Monoid_Ring(T p, Compare c=Compare())
Definition: free_abelian.h:102
C coef_t
Definition: free_abelian.h:37
Free_Abelian & add_multiple(const Free_Abelian &p, C m)
Definition: free_abelian_def.h:39
Free_Abelian(const base &m)
Definition: free_abelian.h:46
Free_Abelian(Compare c)
Definition: free_abelian.h:44
Free_Abelian & operator-=(const Free_Abelian &p)
Definition: free_abelian.h:76
Free_Abelian(InputIterator first, InputIterator last, Compare c=Compare())
Definition: free_abelian.h:61
Definition: free_abelian.h:91
Free_Abelian(const T &p, Compare c=Compare())
Definition: free_abelian.h:48
const bool empty
Definition: axis.cpp:43