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

◆ createOverlapPoly() [2/2]

auto NCGroebner::createOverlapPoly ( Overlap o) const->Poly *

Definition at line 371 of file NCGroebner.cpp.

372{
373 if (std::get<1>(overlap) == -1)
374 {
375 // if we are here, then 'overlap' represents a generator
376 const Poly* f = mInput[std::get<0>(overlap)];
377 Poly * result = new Poly;
378 freeAlgebra().copy(*result, *f);
379 return result;
380 }
381 else return createOverlapPoly(freeAlgebra(),
382 mGroebner,
383 std::get<0>(overlap),
384 std::get<1>(overlap),
385 std::get<2>(overlap));
386}
Polynomial< CoefficientRingType > Poly
void copy(Poly &result, Poly::const_iterator fBegin, Poly::const_iterator fEnd) const
static auto createOverlapPoly(const FreeAlgebra &A, const PolyList &polyList, int polyIndex1, int polyIndex2, int overlapIndex) -> Poly *
PolyList mGroebner
const FreeAlgebra & freeAlgebra() const
const ConstPolyList mInput
VALGRIND_MAKE_MEM_DEFINED & result(result)

References createOverlapPoly(), freeAlgebra(), mGroebner, mInput, and result().