_flint_mpn_mullow_n, flint_mpn_mullow_basecase, _flint_mpn_mullow_n_mulders, _flint_mpn_mullow_n_mul, _flint_mpn_mullow_n_mulders_recursive
#include <flint/mpn_extras.h>mp_limb_t _flint_mpn_mullow_n(mp_ptr res, mp_srcptr u, mp_srcptr v, mp_size_t n)sourcemp_limb_t flint_mpn_mullow_basecase(mp_ptr res, mp_srcptr u, mp_srcptr v, mp_size_t n)sourcemp_limb_t _flint_mpn_mullow_n_mulders(mp_ptr res, mp_srcptr u, mp_srcptr v, mp_size_t n)sourcemp_limb_t _flint_mpn_mullow_n_mul(mp_ptr res, mp_srcptr u, mp_srcptr v, mp_size_t n)sourcevoid _flint_mpn_mullow_n_mulders_recursive(mp_ptr rp, mp_srcptr np, mp_srcptr mp, mp_size_t n)sourceThe algorithms behind flint_mpn_mullow_n: dispatcher, quadratic basecase (up to FLINT_MPN_MULLOW_MULDERS_CUTOFF, 50 limbs; an assembly routine on x86-64 with ADX), Mulders' recursive short product (up to FLINT_MPN_MULHIGH_FFT_SMALL_CUTOFF or FLINT_MPN_MULHIGH_MUL_CUTOFF), and a full product (or an fft_small middle product). The low product is exact in every case, and so is the returned limb n. _flint_mpn_mullow_n_mulders_recursive writes the n low limbs only and uses rp beyond them as scratch space (it needs room for 2n limbs).
The FLINT team, “_flint_mpn_mullow_n, flint_mpn_mullow_basecase, _flint_mpn_mullow_n_mulders, _flint_mpn_mullow_n_mul, _flint_mpn_mullow_n_mulders_recursive (mpn_extras.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/mpn_extras/_flint_mpn_mullow_n.html (generated 2026-10-20).
@misc{flint-doc-mpn-extras-flint-mpn-mullow-n,
author = {{The FLINT team}},
title = {{\_flint\_mpn\_mullow\_n, flint\_mpn\_mullow\_basecase, \_flint\_mpn\_mullow\_n\_mulders, \_flint\_mpn\_mullow\_n\_mul, \_flint\_mpn\_mullow\_n\_mulders\_recursive (mpn\_extras.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/mpn_extras/_flint_mpn_mullow_n.html},
note = {Generated 2026-10-20}
}