Definition at line 2504 of file poly.cpp.
2508{
2509 if (v == nullptr)
2510 {
2512 return nullptr;
2513 }
2516 gbvectorHeap H(GR, F);
2517 gbvector head;
2518 gbvector *inresult;
2519 mpz_t a;
2520 mpz_init(a);
2521 for (vec w = v; w != nullptr; w = w->next)
2522 {
2523 inresult = &head;
2524 int comp = w->
comp + 1;
2525 for (Nterm& t : w->coeff)
2526 {
2527
2529 mpz_mul(a, result_denominator.
get_mpz(), mpq_numref(b));
2530 mpz_divexact(a, a, mpq_denref(b));
2534 inresult = inresult->
next;
2535 }
2537 }
2538 mpz_clear(a);
2539 return H.value();
2540}
gbvector * gbvector_term(const FreeModule *F, ring_elem coeff, int comp)
ring_elem vec_get_denominator_QQ(vec f) const
virtual GBRing * get_gb_ring() const
mpz_srcptr get_mpz() const
References gbvectorHeap::add(), Nterm::coeff, gbvector::comp, FreeModule, GBRing::gbvector_term(), PolynomialRing::get_gb_ring(), ring_elem::get_mpz(), globalZZ, Nterm::monom, MPQ_VAL, gbvector::next, gbvectorHeap::value(), and vec_get_denominator_QQ().
Referenced by translate_gbvector_from_vec().