709{
713 {
714 ring_elem coeff = f.cbegin().coeff();
717 }
718 else
719 {
721 if (mpz_sgn(n) > 0 and n1.first)
723 else
724 {
725 ERROR(
"exponent too large");
727 }
728 }
729}
const Ring * coefficientRing() const
void power(Poly &result, const Poly &f, int n) const
bool is_unit(const Poly &f) const
void from_long(Poly &result, long n) const
void from_coefficient(Poly &result, const ring_elem a) const
bool is_zero(const Poly &f) const
virtual ring_elem power(const ring_elem f, mpz_srcptr n) const
Exponentiation. This is the default function, if a class doesn't define this.
static std::pair< bool, int > get_si(mpz_srcptr n)
VALGRIND_MAKE_MEM_DEFINED & result(result)