FLINT3.7.0-dev

fft_mfa_truncate_sqrt2, ifft_mfa_truncate_sqrt2

Synopsis#include <flint/fft.h>
void fft_mfa_truncate_sqrt2(mp_limb_t ** ii, mp_size_t n, flint_bitcnt_t w, mp_limb_t ** t1, mp_limb_t ** t2, mp_limb_t ** temp, mp_size_t n1, mp_size_t trunc)source
void ifft_mfa_truncate_sqrt2(mp_limb_t ** ii, mp_size_t n, flint_bitcnt_t w, mp_limb_t ** t1, mp_limb_t ** t2, mp_limb_t ** temp, mp_size_t n1, mp_size_t trunc)source

As fft_truncate_sqrt2 and ifft_truncate_sqrt2 (the inverse returns 4n \cdot a_j), computed with the matrix Fourier algorithm on each half of length 2n. Requires 2n < \mathit{trunc} \le 4n with trunc a multiple of 2 n_1. The transformed values are stored in a different order than by fft_truncate_sqrt2, the order that ifft_mfa_truncate_sqrt2 expects. Single-threaded.

Cite this page

The FLINT team, “fft_mfa_truncate_sqrt2, ifft_mfa_truncate_sqrt2 (fft.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fft/fft_mfa_truncate_sqrt2.html (generated 2026-10-20).