1 #ifndef ALREADY_basisutil
2 #define ALREADY_basisutil
4 template<
typename Base,
typename typdump,
typename monomial_server>
7 typedef typename typdump::value_type::pol_t
pol;
13 current.push_back(
mon(1));
14 stockmon.push_back(
mon(1));
17 typename typdump::const_iterator iter;
18 for(iter=dump.begin();
19 iter!=dump.end();iter++);
26 for(
int i=-2;
i!=maxdeg;
i=maxdeg,maxdeg=stockmon.size())
29 list<mon> tmpcurrent=current;
31 current.erase(current.begin(),current.end());
34 for(
typename list<mon>::iterator iter=tmpcurrent.begin();
35 iter!=tmpcurrent.end();iter++)
36 current.push_back((*iter)*mon(
i,1));
39 for(
typename list<mon>::iterator iter=current.begin();iter!=current.end();iter++)
44 stockmon.push_back(*iter);
48 current.erase(iter--);
51 return stockmon.size();
54 template<
typename Base,
typename typdump,
typename typMk>
57 typedef typename typdump::value_type::pol_t
pol;
62 current.push_back(
mon(1));
63 res.push_back(
mon(1));
65 typename typdump::const_iterator iter;
66 for(iter=dump.begin();
67 iter!=dump.end();iter++);
73 for(
int i=0;
i<maxdeg;
i++)
75 list<mon> tmpcurrent=current;
77 current.erase(current.begin(),current.end());
80 for(
typename list<mon>::iterator iter=tmpcurrent.begin();
81 iter!=tmpcurrent.end();iter++)
82 current.push_back((*iter)*mon(
i,1));
85 for(
typename list<mon>::iterator iter=current.begin();iter!=current.end();iter++)
92 current.erase(iter--);
100 template<
typename Base,
typename typdump>
103 typedef typename typdump::value_type::pol_t
pol;
108 cout<<
"countmon "<<endl;
109 current.push_back(
mon(1));
110 stockmon.push_back(
mon(1));
113 typename typdump::const_iterator iter;
114 for(iter=dump.begin();
115 iter!=dump.end();iter++);
122 for(
int i=-2;
i!=maxdeg;
i=maxdeg,maxdeg=stockmon.size())
125 list<mon> tmpcurrent=current;
127 current.erase(current.begin(),current.end());
130 for(
typename list<mon>::iterator iter=tmpcurrent.begin();
131 iter!=tmpcurrent.end();iter++)
132 current.push_back((*iter)*mon(
i,1));
135 for(
typename list<mon>::iterator iter=current.begin();iter!=current.end();iter++)
140 stockmon.push_back(*iter);
144 current.erase(iter--);
147 return stockmon.size();
152 #endif //ALREADY_basisutil
int mon2int(const mon &mm)
Definition: placemon3.hpp:679
int countpoint(const Base &b, const typdump &dump, monomial_server &serv)
Definition: basisutil.hpp:5
int member(const typMk &tmpMk, const typename typMk::value_type mon)
Definition: corealgo.hpp:1391
int nbvar()
Definition: types.hpp:37
int mon2int(const mon &mm)
Definition: placemon.hpp:294
MSKint32t k
Definition: mosek.h:2713
Definition: placemon3.hpp:14
int IsinB(const mon &m, const Base &b)
Definition: IsinB3.hpp:68
Mon mon
Definition: solver_bb_floating.cpp:136
MSKint32t MSKint32t MSKint32t i
Definition: mosek.h:2278
#define pol
Definition: pol2ter.hpp:3
Multivariate monomials.
Definition: Monom.hpp:21
void MonomialBase(const Base &b, const typdump &dump, typMk &res)
Definition: basisutil.hpp:55