---
title: Ozaki-Bailey FFT Methods
url: https://www.emergentmind.com/topics/ozaki-bailey-fft
type: topic
---

# Ozaki-Bailey FFT Methods

Ozaki-Bailey FFT denotes a family of FFT-mediated reconstruction strategies in which a target object—polynomial coefficients, transform values over binary extension fields, or full target-precision Fourier outputs—is recovered from structured evaluations or split subcomputations at transform-friendly nodes. In the recent GPU literature, the term is used explicitly for an emulated 3-D FFT that combines Ozaki Scheme II with the Bailey six-step decomposition [2606.23698]. Closely related constructions use the same underlying pattern for coefficient extraction from roots [1608.01357], for FFTs over \(\mathbb{F}_{2^m}\) in Reed-Solomon coding [1503.05761], and for target-precision FFTs obtained from lower-precision exact cyclic convolutions via Bluestein, NTTs, and CRT [2603.29129].

## 1. Structured evaluation and reconstruction pattern

A recurring feature of Ozaki-Bailey-style methods is that the Fourier or coefficient problem is not attacked in its original form. Instead, the computation is first recast so that a structured transform becomes available. In the polynomial-coefficient setting, the coefficients are recovered by inverse discrete Fourier transform from polynomial values sampled at roots of unity. In the binary-extension-field setting, FFT and IFFT are defined over affine subspaces \(V_k+\beta\) using a basis built from subspace polynomials. In the target-precision setting, Bluestein converts the DFT into a cyclic convolution, after which Ozaki-style splitting, NTT evaluation, and CRT reconstruction are applied. In the GPU setting, Bailey’s six-step FFT decomposes the transform into small dense DFT stages that can be expressed as GEMMs and then emulated through FP8 tensor cores with CRT/Garner reconstruction [1608.01357][1503.05761][2603.29129][2606.23698].

This shared structure does not imply a single implementation template. The evaluation nodes, arithmetic domains, and reconstruction mechanisms differ substantially. Roots of unity are used in coefficient recovery; affine subspaces and linearized polynomials are used over \(\mathbb{F}_{2^m}\); cyclic convolution is induced by Bluestein in the lower-precision scheme; and modular tensor-core residue computations with Garner or Kulisch reduction are used in the GPU formulation. This suggests that the unifying content of the term is architectural rather than notational: a problem is reformulated so that a fast transform or transform-like subroutine becomes the central recovery mechanism.

## 2. Coefficient extraction from roots and symmetric functions

For the polynomial
\[
P(\omega)=\prod_{k=1}^n(\omega-\omega_k)=\sum_{m=0}^n a_m\omega^m,
\]
the FFT-based coefficient algorithm of Katsifarakis and Papageorgiou converts “coefficients from roots” into a discrete Fourier inversion problem. One chooses an integer \(N\) with \(n<N\le 2n\), evaluates
\[
p_j=P(\omega_N^{-j})=\prod_{k=1}^n(\omega_N^{-j}-\omega_k), \qquad j=0,\dots,N-1,
\]
and then recovers the coefficients by
\[
a_m=\frac{1}{N}\sum_{j=0}^{N-1}P(\omega_N^{-j})\,\omega_N^{jm}, \qquad 0\le m\le n.
\]
This is the paper’s Algorithm \(P\): choose \(N\), compute the \(p_j\), apply the FFT, and output the first \(n+1\) Fourier coefficients. The implementation uses radix-2 Cooley-Tukey FFT, while Mathematica’s FFT can allow \(N=n+1\). The product stage costs about \(nN\) complex multiplications/additions, the FFT costs \(O(N\log N)\), and with radix-2 and \(N\approx n\) the leading complexity is \(O(n^2)\) floating-point operations with \(O(n)\) storage for tasks other than Vandermondian inversion. For complex roots the paper states roughly between \(8n^2\) and \(16n^2\) floating-point operations, and for real roots roughly between \(4n^2\) and \(8n^2\). A notable property is that the method is insensitive to root ordering [1608.01357].

The same paper contrasts Algorithm \(P\) with the recursive Algorithm \(R\),
\[
a_{m,k}=a_{m,k-1}-\omega_k\,a_{m+1,k-1},
\]
and with the Leja-enhanced variant \(R+\). Algorithm \(R\) also has \(O(n^2)\) time and \(O(n)\) storage, with leading floating-point cost about \(4n^2\) for complex roots and \(n^2\) for real roots, but it is very sensitive to root ordering. Leja ordering is introduced through
\[
|\omega_1|=\max_j|\omega_j|,\qquad
|\omega_k-\omega_1|\cdots|\omega_k-\omega_{k-1}|=\max_{j\ge k}\prod_{i<k}|\omega_j-\omega_i|.
\]

The main empirical conclusion is that for roots on or near circles in the complex plane, Algorithm \(P\) is generally superior to \(R+\), especially for larger \(n\) and in the reported tests up to and beyond \(n=2000\). The paper repeatedly reports that \(P\) is robust for roots on circles, including unit roots; that \(R+\) can be very accurate for small problems but tends to deteriorate quickly as \(n\) increases; and that on the real line both methods degrade, though \(R+\) may sometimes be slightly better. Scaling by \(x\mapsto ox\) changes coefficients by \(a_m\mapsto o^{\,n-m}a_m\), and for roots inside a small circle of radius \(p<1\), choosing \(o=1/p\) can improve the accuracy of \(P\) by \(1\)–\(2\) orders of magnitude, whereas scaling is generally not helpful for \(R+\).

Because the coefficients are, up to sign, the elementary symmetric functions of the roots, the same method computes symmetric functions efficiently. The paper also applies the coefficient stage to reduced polynomials, Vandermonde inversion, and interpolation. In Vandermonde inversion, replacing the classical recursive coefficient stage by Algorithm \(P\) yields the method \(PP\), and the paper reports that \(PP\) can accurately invert Vandermonde matrices of dimension \(2000\) and more when roots lie on the unit circle. In interpolation, the alternative algorithm \(GA\) first forms the barycentric weights
\[
w_j=\frac{y_j}{P'(x_j)}, \qquad P(x)=\prod_{k=0}^n(x-x_k),
\]
then evaluates the interpolation polynomial at the \(n\)-th roots of unity and finally recovers the coefficients using the FFT exactly as in Algorithm \(P\). The reported complexity is about \(3n^2\) complex additions/multiplications with \(O(n)\) storage, and \(GA\) is described as superior to the conventional Vandermonde-solve approach \(DE\) in numerical performance.

## 3. Binary-extension-field transforms and Reed-Solomon decoding

A distinct Ozaki-Bailey-style formulation appears in the FFT over binary extension fields developed for systematic \((n=2^m,k)\) Reed-Solomon codes over \(\mathbb{F}_{2^m}\), with \(n-k\) a power of two. The construction uses a nonstandard basis built from subspace polynomials over the nested chain
\[
\{0\}=V_0\subset V_1\subset \cdots \subset V_m=\mathbb{F}_{2^m},\qquad
V_k=\operatorname{Span}(v_0,\dots,v_{k-1}),
\]
with
\[
s_k(x)=\prod_{a\in V_k}(x-a), \qquad \deg s_k(x)=2^k,
\]
and
\[
s_k(x)=\sum_{i=0}^{k}s_{k,i}x^{2^i}, \qquad s_k(x+y)=s_k(x)+s_k(y).
\]
The basis is defined by
\[
\bar X_i(x)=\frac{X_i(x)}{p_i}, \qquad X_i(x)=\prod_{j=0}^{m-1}s_j(x)^{i_j},
\]
and each basis element satisfies \(\deg(\bar X_i)=i\). This degree-ordered property is what enables a divide-and-conquer FFT over affine subspaces \(V_k+\beta\) [1503.05761].

The transform recursion exploits
\[
V_k+\beta=(V_{k-1}+\beta)\cup(V_{k-1}+v_{k-1}+\beta),
\]
so that a length-\(2^k\) transform reduces to two length-\(2^{k-1}\) transforms on shifted evaluation sets. For \(h=2^k\), the addition and multiplication recurrences are
\[
A(h)=2A(h/2)+h,\qquad M(h)=2M(h/2)+h/2,
\]
hence
\[
A(h)=h\log h,\qquad M(h)=\frac{h}{2}\log h,
\]
and both FFT and IFFT run in \(\mathcal{O}(h\log h)\).

The coding application is central. With \(T=n-k=2^t\), encoding and syndrome computation are reorganized so that only transforms of length \(T\) are needed for the parity or syndrome part, avoiding a full length-\(n\) transform in those stages. The syndrome polynomial is extracted from blockwise inverse transforms, while the error-locator polynomial is obtained through a fast half-GCD algorithm on degree-\(T\) polynomials with complexity \(\mathcal{O}(T\log^2T)\). The overall decoding pipeline has complexity
\[
\mathcal{O}\bigl(n\log(n-k)+(n-k)\log^2(n-k)\bigr),
\]
improving upon the cited \(\mathcal{O}(n\log^2(n)\log\log(n))\) benchmark and reaching the best known complexity bound that was established by Justesen in 1976, but now over the practically important family \(\mathbb{F}_{2^m}\). The authors contrast this with Cooley-Tukey FFTs, which apply only when the field contains enough roots of unity, and with arbitrary-field FFTs of Schönhage/Cantor type, which incur extra \(\log\log n\) factors. Computer simulations report that the proposed decoder is \(50\) times faster than the conventional one for the \((2^{16},2^{15})\) Reed-Solomon code over \(\mathbb{F}_{2^{16}}\).

## 4. Target-precision FFTs from lower-precision exact convolutions

Another major development formulates an Ozaki-Bailey-style FFT for target precision by applying the Ozaki scheme to the cyclic convolution inside Bluestein’s FFT. For a length-\(n\) DFT,
\[
y(k)=\sum_{j=0}^{n-1}x(j)\,\omega_n^{jk},\qquad \omega_n=e^{-2\pi i/n},
\]
Bluestein rewrites the transform as
\[
y(k)=\omega_{2n}^{k^2}\sum_{j=0}^{n-1}\left(x(j)\,\omega_{2n}^{j^2}\right)\omega_{2n}^{-(k-j)^2}.
\]
The method then treats the induced cyclic convolution as the computational core, splits the inputs into lower-precision pieces in Ozaki fashion,
\[
\bm{x}=\sum_{s=0}^{k_x-1}\bm{x}^{(s)}, \qquad \bm{y}=\sum_{t=0}^{k_y-1}\bm{y}^{(t)},
\]
and computes every split convolution exactly using 32-bit NTTs together with CRT reconstruction rather than floating-point FFTs [2603.29129].

The exactness condition is what distinguishes this scheme from ordinary floating-point convolution. For a single modulus \(p\), exact recovery requires
\[
n\,\|c_x^{(s)}\bm{x}^{(s)}\|_\infty\cdot \|c_y^{(t)}\bm{y}^{(t)}\|_\infty < \frac{p}{2},
\]
which yields
\[
\alpha=\left\lfloor \frac{\log_2(p/2)-\log_2(n)}{2}\right\rfloor.
\]
With two moduli \(p_0,p_1\), the split width becomes
\[
\alpha=\left\lfloor \frac{\log_2(p_0p_1/2)-\log_2(n)}{2}\right\rfloor.
\]
The implementation uses the 32-bit primes
\[
p_0=2{,}130{,}706{,}433,\qquad p_1=2{,}113{,}929{,}217.
\]
This larger admissible \(\alpha\) is identified as the key reason that the NTT/CRT route yields fewer splits than a floating-point exact-rounding route based on FFT error bounds.

The paper also introduces NTT-domain accumulation. If two split-pair products share the same scale, their transform-domain products can be accumulated before the inverse NTT, reducing the inverse-transform count. With capped splits \(K=3\), the total NTT plus inverse NTT count is at most \(96\); with \((K,L)=(3,3)\), it becomes \(64\) for \(\phi=0\) and \(1.0\) across all tested lengths and matches the stated theoretical minimum \(24K-8=64\) when \(K=3\). The method is implemented as a double-precision Bluestein FFT using TS arithmetic for outer complex arithmetic and 32-bit NTTs for exact split convolutions.

The numerical profile is mixed in a characteristic way. Against FFTW double precision, Stockham double precision, Bluestein double precision, TS Stockham FFT, and TS Bluestein FFT, the proposed method usually has the smallest relative error; it does not show a strong growth trend with \(n\); and it substantially improves over TS Bluestein, indicating that the exact split convolutions suppress error accumulation. At the same time, it does not always give the smallest maximum relative error. On an Intel Xeon Platinum 8468 for lengths \(n=2^{10}\)–\(2^{18}\), the execution time is approximately \(107\)–\(1315\times\) that of FFTW’s double-precision FFT, and the paper states that 32-bit NTTs account for approximately \(80\%\) of the total time.

## 5. Bailey six-step decomposition, tensor-core CRT, and the Kulisch route

In the 2026 GPU formulation, Ozaki-Bailey FFT is defined explicitly as an emulated 3-D FFT obtained by combining Ozaki Scheme II with Bailey’s six-step decomposition. The hardware motivation is that NVIDIA’s Blackwell Ultra B300 cuts FP64 vector throughput to about \(1.3\) TFLOPS per GPU, roughly \(30\times\) below B200, while FFT is treated as a bandwidth-limited primitive that should run near the memory roof on a well-balanced GPU. For a \(1024^3\) 3-D FFT, the paper computes memory traffic
\[
Q=96N^3\text{ bytes}\approx 103\text{ GB}
\]
for \(N=1024\), giving a memory-roof time of about \(12.9\) ms at \(8\) TB/s HBM bandwidth. Ozaki Scheme II is then applied to the GEMM-represented inner DFT stages of Bailey’s decomposition, routing them through FP8 tensor cores with mantissa-sliced Chinese-remainder reconstruction [2606.23698].

The Bailey six-step factorization uses \(N=pq\); for \(N=1024\), the natural choice is \(p=q=32\). The two 1-D FFT stages are implemented as dense DFT matrix multiplications, so in the 3-D case the transform reduces to repeated small GEMM-like kernels. For B300-class hardware, the paper recommends \(r=12\) moduli for FP64-equivalent accuracy, with tensor-core cost multiplier
\[
\alpha=3r+1=37.
\]
The crucial observation is that Bailey’s inner dimension \(k\approx \sqrt{N}\) gives \(k=32\) for \(N=1024\), while \(r^2=144\). Hence the regime is \(k\ll r^2\), so reconstruction overhead no longer amortizes and the third Tensor-Memory Equilibrium parameter, \(\gamma\), becomes the binding cost.

Standard Garner reconstruction is estimated at roughly \(2.5r^2\) INT32 operations per output, about \(360\) INT32 operations per output for \(r=12\), and about \(6.8\times 10^{12}\) INT32 operations over all FFT outputs. On B300, the effective INT32 throughput for this modular work is estimated at about \(25\) TOPS after Barrett-reduction overhead, yielding a reconstruction time of about \(260\) ms, far above the \(12.9\) ms memory roof. The paper therefore reformulates CRT reconstruction as a forward CRT sum,
\[
C \equiv \sum_{k=1}^r v'_k u_k \pmod M,\qquad
u_k=\frac{M}{m_k}\left(\frac{M}{m_k}\right)^{-1}_{m_k},\qquad
M=\prod_i m_i,
\]
and slices each \(u_k\) into \(S\) 8-bit chunks. This creates Phase A, an \(r\times S\) inner-product GEMM on tensor cores, and Phase B, the per-output reduction. For \(r=12\), the main-text choice is \(S=\lceil 7r/8\rceil=11\). Phase A is reported as around \(0.5\)–\(1\) ms; Phase B is the bottleneck if executed naively in FP64.

The paper’s “Kulisch escape route” replaces Phase B by exact fixed-point accumulation on the INT32 SIMT pipe. The reconstruction is written as
\[
y=(s_As_B)^{-1}\sum_{s=0}^{S-1}P_s256^s,
\]
and because \(256^s=2^{8s}\), each term lands at a fixed bit position. For \(S=11\), the running sum needs about \(104\) bits, so a \(160\)-bit accumulator made from five INT32 registers is sufficient. The implementation model uses five INT32 registers, about four INT32 operations per slice, and roughly \(44\) INT32 operations per output for \(S=11\). The reported B300 estimate is about \(13\) ms at peak INT32 throughput and \(18\)–\(25\) ms at realistic \(50\)–\(70\%\) efficiency.

The resulting parity analysis is expressed as closed-form floors. For FFT, the operational intensity is
\[
\mathrm{OI}_{\text{FFT}}=\frac{15\log_2 N}{96},
\]
which for \(N=1024\) gives \(1.5625\approx 1.56\), hence the native FP64 floor \(\eta_{\text{FP64-vec}}^{\text{native}}\approx 1.56\). The naive Ozaki-Bailey FP64 floor is
\[
\eta_{\text{FP64-vec}}^{\text{naive-OBFFT}}=\frac{3S}{16},
\]
which is \(2.0625\approx 2.06\) for \(S=11\). The Kulisch INT32 sub-floor is
\[
\eta_{\text{INT32}}^{\text{Kulisch}}=\frac{3cS}{16}\approx 8.25,
\]
with an overlap-optimized version reducing this to roughly \(4.125\). The FP8 floor is \(\eta_{\text{FP8}}\approx 170\). The projected performance for a \(1024^3\) 3-D FFT is then: memory roof \(12.9\) ms, native B300 FP64 about \(124\) ms, recursive Garner Ozaki-Bailey about \(260\) ms, tensor-core Garner plus naive FP64 Phase B about \(163\) ms, and tensor-core Garner plus Kulisch Phase B about \(18\) ms. The paper is explicit that these are projections, not measured results.

## 6. Performance regimes, applications, and misconceptions

The various Ozaki-Bailey formulations share a common design logic, but they behave differently because different stages dominate in different regimes. In polynomial coefficient extraction, the FFT is only the final recovery step; the expensive part is the product evaluation
\[
p_j=\prod_{k=1}^n(\omega_N^{-j}-\omega_k),
\]
and the method is most effective for roots on or near circles [1608.01357]. In the binary-extension-field transform, the main gain comes from a basis and recursion that make FFT, IFFT, multiplication, division, and half-GCD compatible over \(\mathbb{F}_{2^m}\), allowing Reed-Solomon decoding complexity \(\mathcal{O}(n\log(n-k)+(n-k)\log^2(n-k))\) [1503.05761]. In the lower-precision Bluestein scheme, exactness is transferred to the split cyclic convolutions, so performance is governed by NTT counts and NTT efficiency rather than by a conventional FFT kernel [2603.29129]. In the GPU formulation, the central issue is not the Bailey decomposition itself but the per-output reconstruction latency: FFT lies in the \(k\ll r^2\) regime, so \(\gamma\) binds unless Phase B is reformulated through Kulisch accumulation [2606.23698].

Several common misconceptions are contradicted by these results. One is that FFT-based recovery is determined only by asymptotic complexity. The coefficient-from-roots paper states that algorithm quality is not determined only by condition number and emphasizes the role of the evaluation-point structure; circle-like distributions are favorable, whereas line-like distributions are much harder [1608.01357]. Another is that lower-precision subcomputations necessarily degrade accuracy. The Bluestein-NTT method obtains a double-precision FFT from 32-bit NTTs and reports reduced relative error compared with FFTW double precision and Triple-Single precision arithmetic, while the GPU Kulisch route is presented as preserving full FP64 accuracy through exact fixed-point accumulation with one final conversion [2603.29129][2606.23698]. A further misconception is that Cooley-Tukey is the only viable FFT template in coding applications. The binary-extension-field work explicitly constructs a true \(\mathcal{O}(n\log n)\) FFT over \(\mathbb{F}_{2^m}\) without requiring multiplicative roots of unity, precisely to avoid that restriction [1503.05761].

Taken together, these results indicate that “Ozaki-Bailey FFT” is best understood as a class of transform-centric reconstruction methods whose practicality depends on where the reformulation places the numerical and architectural burden. In some settings the decisive factor is node geometry and scaling; in others it is basis design over finite fields; in others it is exact modular convolution; and in current GPU work it is whether CRT reduction can be moved off the collapsed FP64 vector path.

Source: https://www.emergentmind.com/topics/ozaki-bailey-fft