FLINT3.7.0-dev

_fmpz_poly_mul_classical, fmpz_poly_mul_classical, _fmpz_poly_mullow_classical, fmpz_poly_mullow_classical, _fmpz_poly_mulmid_classical, fmpz_poly_mulmid_classical, _fmpz_poly_sqr_classical, fmpz_poly_sqr_classical, _fmpz_poly_sqrlow_classical, fmpz_poly_sqrlow_classical

Synopsis#include <flint/fmpz_poly.h>
void _fmpz_poly_mul_classical(fmpz * res, const fmpz * poly1, slong len1, const fmpz * poly2, slong len2)source
void fmpz_poly_mul_classical(fmpz_poly_t res, const fmpz_poly_t poly1, const fmpz_poly_t poly2)source
void _fmpz_poly_mullow_classical(fmpz * res, const fmpz * poly1, slong len1, const fmpz * poly2, slong len2, slong n)source
void fmpz_poly_mullow_classical(fmpz_poly_t res, const fmpz_poly_t poly1, const fmpz_poly_t poly2, slong n)source
void _fmpz_poly_mulmid_classical(fmpz * res, const fmpz * poly1, slong len1, const fmpz * poly2, slong len2, slong nlo, slong nhi)source
void fmpz_poly_mulmid_classical(fmpz_poly_t res, const fmpz_poly_t poly1, const fmpz_poly_t poly2, slong nlo, slong nhi)source
void _fmpz_poly_sqr_classical(fmpz * rop, const fmpz * op, slong len)source
void fmpz_poly_sqr_classical(fmpz_poly_t rop, const fmpz_poly_t op)source
void _fmpz_poly_sqrlow_classical(fmpz * res, const fmpz * poly, slong len, slong n)source
void fmpz_poly_sqrlow_classical(fmpz_poly_t res, const fmpz_poly_t poly, slong n)source

Classical (schoolbook) multiplication: each output coefficient is computed as one dot product of fmpz values (_fmpz_vec_dot_general), and squares use the symmetry of the products. The cost is proportional to the number of coefficient products in the requested range. The underscore versions require positive lengths and do not allow res to overlap the inputs.

Cite this page

The FLINT team, “_fmpz_poly_mul_classical, fmpz_poly_mul_classical, _fmpz_poly_mullow_classical, fmpz_poly_mullow_classical, _fmpz_poly_mulmid_classical, fmpz_poly_mulmid_classical, _fmpz_poly_sqr_classical, fmpz_poly_sqr_classical, _fmpz_poly_sqrlow_classical, fmpz_poly_sqrlow_classical (fmpz_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fmpz_poly/_fmpz_poly_mul_classical.html (generated 2026-10-20).