FLINT3.7.0-dev

_padic_radix_poly_mulmid_packed, _padic_radix_poly_mulmid, _padic_radix_poly_mullow

Synopsis#include <flint/padic_radix.h>
int _padic_radix_poly_mulmid_packed(padic_radix_struct * res, const padic_radix_struct * poly1, slong len1, const padic_radix_struct * poly2, slong len2, slong nlo, slong nhi, gr_ctx_t ctx)source
int _padic_radix_poly_mulmid(padic_radix_struct * res, const padic_radix_struct * poly1, slong len1, const padic_radix_struct * poly2, slong len2, slong nlo, slong nhi, gr_ctx_t ctx)source
int _padic_radix_poly_mullow(padic_radix_struct * res, const padic_radix_struct * poly1, slong len1, const padic_radix_struct * poly2, slong len2, slong n, gr_ctx_t ctx)source

Set res to the coefficients nlo,…,nhi−1n_{lo}, \ldots, n_{hi} - 1 (respectively 0,…,n−10, \ldots, n - 1) of the product of the polynomials. Coefficients that are a single product are computed with padic_radix_mul. The unpacked versions implement the generic methods. For both lengths at least 4, from an estimate SS of the output windows in limbs (the size of the units, plus one if the valuations are not multiples of ee, plus the spread of the limb frames): the mod version when S=1S = 1; for S=2S = 2 from a length of about 64, for S≤10S \le 10 from about 24, and the radix KS version for S>10S > 10 from about 32 (these crossovers raised when the frames are spread out); the packed version otherwise. Before choosing a Kronecker substitution route when the frames are spread out, the windows of 16 sampled outputs are estimated from the context precision, and the packed version is used if the base frames inflate at least three of them as above; if a route still gives up, the packed version is used without trying the other. Shorter products use the classical algorithm.

Cite this page

The FLINT team, “_padic_radix_poly_mulmid_packed, _padic_radix_poly_mulmid, _padic_radix_poly_mullow (padic_radix.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/padic_radix/_padic_radix_poly_mulmid_packed.html (generated 2026-11-02).