FLINT3.7.0-dev

_nmod_poly_divrem_basecase, nmod_poly_divrem_basecase

Synopsis#include <flint/nmod_poly.h>
void _nmod_poly_divrem_basecase(nn_ptr Q, nn_ptr R, nn_srcptr A, slong lenA, nn_srcptr B, slong lenB, nmod_t mod)source
void nmod_poly_divrem_basecase(nmod_poly_t Q, nmod_poly_t R, const nmod_poly_t A, const nmod_poly_t B)source

Division with remainder by the schoolbook algorithm, with the same conventions as _nmod_poly_divrem and nmod_poly_divrem.

The partial remainders are kept unreduced in one, two or three words per coefficient, depending on the number of bits of (n - 1)^2 (\mathit{lenA} - \mathit{lenB} + 1), and each coefficient is reduced only when it becomes the leading one. Quotients of length 1 and 2 are handled by special routines.

Cite this page

The FLINT team, “_nmod_poly_divrem_basecase, nmod_poly_divrem_basecase (nmod_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/nmod_poly/_nmod_poly_divrem_basecase.html (generated 2026-10-20).