FLINT3.7.0-dev

_fq_zech_poly_div_newton_n_preinv, fq_zech_poly_div_newton_n_preinv

Synopsis#include <flint/fq_zech_poly.h>
void _fq_zech_poly_div_newton_n_preinv(fq_zech_struct * Q, const fq_zech_struct * A, slong lenA, const fq_zech_struct * B, slong lenB, const fq_zech_struct * Binv, slong lenBinv, const fq_zech_ctx_t ctx)
void fq_zech_poly_div_newton_n_preinv(fq_zech_poly_t Q, const fq_zech_poly_t A, const fq_zech_poly_t B, const fq_zech_poly_t Binv, const fq_zech_ctx_t ctx)

Compute the quotient Q of A by B with two multiplications, given the inverse Binv of the reversal of B modulo x^{\mathit{lenB}}: the reversed quotient is the product of the reversal of A and Binv modulo x^{\mathit{lenA} - \mathit{lenB} + 1}. Requires \mathit{lenA} \le 2\,\mathit{lenB} - 1; the underscore version writes lenA - lenB + 1 coefficients and does not read B. The non-underscore version throws FLINT_DIVZERO for B = 0.

Generated from the same template as _fq_poly_div_newton_n_preinv, whose documentation has the details.

Cite this page

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