FLINT3.7.0-dev

_fmpz_poly_divrem_divconquer, fmpz_poly_divrem_divconquer, _fmpz_poly_div_divconquer, fmpz_poly_div_divconquer

Synopsis#include <flint/fmpz_poly.h>
int _fmpz_poly_divrem_divconquer(fmpz * Q, fmpz * R, const fmpz * A, slong lenA, const fmpz * B, slong lenB, int exact)source
void fmpz_poly_divrem_divconquer(fmpz_poly_t Q, fmpz_poly_t R, const fmpz_poly_t A, const fmpz_poly_t B)source
int _fmpz_poly_div_divconquer(fmpz * Q, const fmpz * A, slong lenA, const fmpz * B, slong lenB, int exact)source
void fmpz_poly_div_divconquer(fmpz_poly_t Q, const fmpz_poly_t A, const fmpz_poly_t B)source

Division with remainder, respectively quotient only, by recursive division of the top halves, so that the cost is O(M(n) \log n) coefficient operations for a product cost M(n), with the semantics of fmpz_poly_divrem and fmpz_poly_div. The underscore versions require \mathit{lenA} \ge \mathit{lenB} > 0, allow zero padding of A and do not allow aliasing.

Cite this page

The FLINT team, “_fmpz_poly_divrem_divconquer, fmpz_poly_divrem_divconquer, _fmpz_poly_div_divconquer, fmpz_poly_div_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_divrem_divconquer.html (generated 2026-10-20).