NN_DOTREV_S3_1X1, NN_DOTREV_S3_1X1_HIGH, NN_DOTREV_S3_A3_1X1, NN_ADDMUL_S2_A2_1X1
Synopsis
#include <flint/mpn_extras.h>NN_DOTREV_S3_1X1(s2, s1, s0, u, v, n)sourceNN_DOTREV_S3_1X1_HIGH(s2, s1, u, v, n)sourceNN_DOTREV_S3_A3_1X1(r2, r1, r0, s2, s1, s0, u, v, n)sourceNN_ADDMUL_S2_A2_1X1(r1, r0, s1, s0, x, y)sourceReversed dot products of limbs into a three-limb accumulator: (s_2, s_1, s_0) = \sum_{i<n} u_i v_{n-1-i} (for n \ge 2); the same summing only the high limbs of the products; the sum added to a given three-limb value (for n \ge 1, the result fitting in three limbs); and a two-limb (r_1, r_0) = (s_1, s_0) + xy without carry out. They are the building blocks of the generic basecases.
Cite this page
The FLINT team, “NN_DOTREV_S3_1X1, NN_DOTREV_S3_1X1_HIGH, NN_DOTREV_S3_A3_1X1, NN_ADDMUL_S2_A2_1X1 (mpn_extras.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/mpn_extras/NN_DOTREV_S3_1X1.html (generated 2026-10-20).
@misc{flint-doc-mpn-extras-NN-DOTREV-S3-1X1,
author = {{The FLINT team}},
title = {{NN\_DOTREV\_S3\_1X1, NN\_DOTREV\_S3\_1X1\_HIGH, NN\_DOTREV\_S3\_A3\_1X1, NN\_ADDMUL\_S2\_A2\_1X1 (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/NN_DOTREV_S3_1X1.html},
note = {Generated 2026-10-20}
}