FLINT3.7.0-dev

_gr_poly_preinv_divrem, _gr_poly_preinv_rem, gr_poly_preinv_divrem, gr_poly_preinv_rem

Synopsis#include <flint/gr_poly.h>
int _gr_poly_preinv_divrem(gr_ptr Q, gr_ptr R, gr_srcptr A, slong lenA, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int _gr_poly_preinv_rem(gr_ptr R, gr_srcptr A, slong lenA, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int gr_poly_preinv_divrem(gr_poly_t Q, gr_poly_t R, const gr_poly_t A, const gr_poly_preinv_t P, gr_ctx_t ctx)source
int gr_poly_preinv_rem(gr_poly_t R, const gr_poly_t A, const gr_poly_preinv_t P, gr_ctx_t ctx)source

Division with remainder by the precomputed modulus. Dividends of any length are supported; Newton division is applied blockwise to long dividends. The underscore divrem requires \operatorname{len}(A) \ge \operatorname{len}(f) and writes \operatorname{len}(A) - \operatorname{len}(f) + 1 quotient and \operatorname{len}(f) - 1 remainder coefficients (not normalised); Q may be NULL when only the remainder is wanted.

Cite this page

The FLINT team, “_gr_poly_preinv_divrem, _gr_poly_preinv_rem, gr_poly_preinv_divrem, gr_poly_preinv_rem (gr_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/gr_poly/_gr_poly_preinv_divrem.html (generated 2026-10-20).