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

◆ lower_content()

void RingZZ::lower_content ( ring_elem & c,
ring_elem g ) const
virtual

Reimplemented from Ring.

Definition at line 225 of file ZZ.cpp.

227{
228 if (is_zero(c))
229 {
230 c = g;
231 return;
232 }
233 mpz_ptr result = RingZZ::new_elem();
234 mpz_srcptr a = c.get_mpz();
235 mpz_srcptr b = g.get_mpz();
236 mpz_gcd(result, a, b);
237 if(mpz_sgn(a) == -1)
238 mpz_neg(result, result);
240 c = ring_elem(result);
241}
virtual bool is_zero(const ring_elem f) const
Definition ZZ.cpp:155
mpz_ptr new_elem() const
Definition ZZ.cpp:34
void mpz_reallocate_limbs(mpz_ptr _z)
Definition gmp-util.h:46
VALGRIND_MAKE_MEM_DEFINED & result(result)
mpz_srcptr get_mpz() const
Definition ringelem.hpp:127

References is_zero(), mpz_reallocate_limbs(), new_elem(), and result().