Macaulay2 Engine
Loading...
Searching...
No Matches

◆ CollectNonMultiProlongations()

template<typename MonomType>
void BIBasis::TSet< MonomType >::CollectNonMultiProlongations ( Iterator & iterator,
std::list< Triple< MonomType > * > & set )

Definition at line 161 of file tset.hpp.

162 {
163 if (iterator == TripleList.end() || !(*iterator))
164 {
165 return;
166 }
167
168 typename MonomType::Integer firstMultiVar = (**iterator).GetPolynomLm().FirstMultiVar();
169 for (typename MonomType::Integer var = 0; var < firstMultiVar; ++var)
170 {
171 if (!(**iterator).TestNmp(var))
172 {
173 Polynom<MonomType>* tmpPolynom = new Polynom<MonomType>(*(**iterator).GetPolynom());
174 (*tmpPolynom) *= var;
175
176 (**iterator).SetNmp(var);
177
178 if (!tmpPolynom->IsZero())
179 {
180 set.push_back(new Triple<MonomType>(tmpPolynom
181 , (**iterator).GetAncestor()
182 , (**iterator).GetNmp()
183 , (*iterator)
184 , var)
185 );
186 }
187 delete tmpPolynom;
188 }
189 }
190 }
std::list< Triple< MonomType > * > TripleList
Definition tset.hpp:51

References BIBasis::Polynom< MonomType >::IsZero(), and TripleList.