_fmpz_poly_pseudo_divrem_basecase, fmpz_poly_pseudo_divrem_basecase, _fmpz_poly_pseudo_divrem_divconquer, fmpz_poly_pseudo_divrem_divconquer
#include <flint/fmpz_poly.h>void _fmpz_poly_pseudo_divrem_basecase(fmpz * Q, fmpz * R, ulong * d, const fmpz * A, slong lenA, const fmpz * B, slong lenB, const fmpz_preinvn_t inv)sourcevoid fmpz_poly_pseudo_divrem_basecase(fmpz_poly_t Q, fmpz_poly_t R, ulong * d, const fmpz_poly_t A, const fmpz_poly_t B)sourcevoid _fmpz_poly_pseudo_divrem_divconquer(fmpz * Q, fmpz * R, ulong * d, const fmpz * A, slong lenA, const fmpz * B, slong lenB, const fmpz_preinvn_t inv)sourcevoid fmpz_poly_pseudo_divrem_divconquer(fmpz_poly_t Q, fmpz_poly_t R, ulong * d, const fmpz_poly_t A, const fmpz_poly_t B)sourcePseudo-division with the semantics of fmpz_poly_pseudo_divrem, by the schoolbook algorithm, which multiplies the partial remainder by \ell only when a quotient coefficient would be inexact, respectively by divide and conquer. The underscore basecase version allows R to be equal to A; the divide-and-conquer version only sets the low \mathit{lenB} - 1 coefficients of (R, lenA) correctly and allows no aliasing. inv is as for _fmpz_poly_pseudo_divrem.
The FLINT team, “_fmpz_poly_pseudo_divrem_basecase, fmpz_poly_pseudo_divrem_basecase, _fmpz_poly_pseudo_divrem_divconquer, fmpz_poly_pseudo_divrem_divconquer (fmpz_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_poly/_fmpz_poly_pseudo_divrem_basecase.html (generated 2026-10-20).
@misc{flint-doc-fmpz-poly-fmpz-poly-pseudo-divrem-basecase,
author = {{The FLINT team}},
title = {{\_fmpz\_poly\_pseudo\_divrem\_basecase, fmpz\_poly\_pseudo\_divrem\_basecase, \_fmpz\_poly\_pseudo\_divrem\_divconquer, fmpz\_poly\_pseudo\_divrem\_divconquer (fmpz\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fmpz_poly/_fmpz_poly_pseudo_divrem_basecase.html},
note = {Generated 2026-10-20}
}