_gr_poly_mulmid_classical, gr_poly_mulmid_classical, _gr_poly_mullow_classical, gr_poly_mullow_classical
Synopsis
#include <flint/gr_poly.h>int _gr_poly_mulmid_classical(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, slong len2, slong nlo, slong nhi, gr_ctx_t ctx)sourceint gr_poly_mulmid_classical(gr_poly_t res, const gr_poly_t poly1, const gr_poly_t poly2, slong nlo, slong nhi, gr_ctx_t ctx)sourceint _gr_poly_mullow_classical(gr_ptr res, gr_srcptr poly1, slong len1, gr_srcptr poly2, slong len2, slong n, gr_ctx_t ctx)sourceint gr_poly_mullow_classical(gr_poly_t res, const gr_poly_t poly1, const gr_poly_t poly2, slong n, gr_ctx_t ctx)sourceMultiply with the classical algorithm, computing each output coefficient as one dot product (_gr_vec_dot_rev), so that rings with fast dot products (delayed reduction, exact accumulation) benefit. Squaring uses the symmetry of the product to halve the number of multiplications.
Cite this page
The FLINT team, “_gr_poly_mulmid_classical, gr_poly_mulmid_classical, _gr_poly_mullow_classical, gr_poly_mullow_classical (gr_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/gr_poly/_gr_poly_mulmid_classical.html (generated 2026-10-20).
@misc{flint-doc-gr-poly-gr-poly-mulmid-classical,
author = {{The FLINT team}},
title = {{\_gr\_poly\_mulmid\_classical, gr\_poly\_mulmid\_classical, \_gr\_poly\_mullow\_classical, gr\_poly\_mullow\_classical (gr\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/gr_poly/_gr_poly_mulmid_classical.html},
note = {Generated 2026-10-20}
}