fft_small_plan_init_mpn_window, fft_small_plan_mpn_nslots, fft_small_plan_is_cyclic
#include <flint/fft_small.h>int fft_small_plan_init_mpn_window(fft_small_plan_t P, mpn_ctx_t R, ulong an_max, ulong bn_max, ulong len_bound, int is_signed, ulong lo, ulong hi)sourceulong fft_small_plan_mpn_nslots(const fft_small_plan_t P, ulong an_max, ulong bn_max)sourceint fft_small_plan_is_cyclic(const fft_small_plan_t P)sourcefft_small_plan_init_mpn_window is fft_small_plan_init_mpn for products of which only the limbs are needed. fft_small_plan_mpn_nslots returns the number of chunk coefficients (slots) that the inverse transform computes for operands of at most an_max and bn_max limbs, and fft_small_plan_is_cyclic whether slots alias, that is, whether the transform is shorter than the product.
Only the chunk coefficients that can reach the window are needed. If a power of two is at least the operand chunk counts and the highest of them, and the coefficients past fold onto coefficients below the lowest one, the transforms are cyclic of length . The slots below the window then hold no exact values, and exports must read windows inside with fft_small_export_mpn_signed_window, which are within one unit of the exact window. With and at least the product length this is the ordinary plan.
Guides#
The FLINT team, “fft_small_plan_init_mpn_window, fft_small_plan_mpn_nslots, fft_small_plan_is_cyclic (fft_small.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/fft_small/fft_small_plan_init_mpn_window.html (generated 2026-11-02).
@misc{flint-doc-fft-small-fft-small-plan-init-mpn-window,
author = {{The FLINT team}},
title = {{fft\_small\_plan\_init\_mpn\_window, fft\_small\_plan\_mpn\_nslots, fft\_small\_plan\_is\_cyclic (fft\_small.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/fft_small/fft_small_plan_init_mpn_window.html},
note = {Generated 2026-11-02}
}