Alphabeta Math
Pipeline-generated
How statement and proof provenance work

The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.

  • Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
  • AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
  • AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.

These labels describe origin, not correctness: citations and verification chips remain separate evidence.

Computed fast transforms and convolution

1 · Prerequisites

2 · Summary

This page extends the canonical finite Fourier transform and radix-two FFT with computed error bounds, arbitrary-length reductions, trigonometric transforms, and convolution. Its radix-two stability estimate assumes round-to-nearest, normal-range successful operations, and a certified error bound for every twiddle. The product-stage constant is explicit: η=10u+ϵtw; the O(ulog⁡N) shorthand requires ϵtw=O(u) and ulog⁡N small. A phase-evaluation budget that cannot certify its requested enclosure returns inconclusive. The interval evaluator's arctangent definition is shown to use the same canonical π as the Fourier and chirp formulas.

Mixed-radix Cooley–Tukey and Bluestein supply exact arbitrary-length reductions. Bluestein pads to a supported power of two M≥2N−1 and records chirp-phase error separately from the FFT-convolution error. Arithmetic counts exclude integer factor search, interval phase evaluation, memory traffic, and bit complexity; no general mixed-radix stability theorem is asserted here.

DCT-II uses the even extension and the stated endpoint normalization; DST-I uses the odd extension and its fixed endpoint zeros. Both inverses are proved directly, and the DCT-II recovers Chebyshev coefficients at first-kind roots. Linear convolution uses zero padding to prevent circular aliasing. Its error bound separates forward transforms, pointwise products, inverse transform, and final scaling, conditional on successful operations.

3 · Logical flowchart

4 · Definitions, theorems and proofs

DefinitionDefinition: Literature-sourcedProof: Not applicablejudge pass (gpt-6-luna)Open item page →

DCT-II and DST-I with fixed even and odd extension conventions

Definition

For N≥1 and x=(x0,…,xN−1)∈RN, the DCT-II is the vector X∈RN with Xk=∑j=0N−1xjcos⁡(π(j+1/2)k/N) for 0≤k<N. Its even extension ENx∈R2N is (ENx)j=xj and (ENx)2N−1−j=xj for 0≤j<N.

For N≥1 and x=(x1,…,xN)∈RN, the DST-I is the vector Y∈RN with Yk=∑j=1Nxjsin⁡(πjk/(N+1)) for 1≤k≤N. Its odd extension ONx∈R2(N+1) has (ONx)0=(ONx)N+1=0, (ONx)j=xj, and (ONx)2(N+1)−j=−xj for 1≤j≤N.

These definitions fix the transform type, index range, extension symmetry, and endpoint normalization. Their orthogonality, inverse formulas, and relation to the unitary DFT are proved in separate results.

LemmaStatement: Literature-sourcedProof: AI-generatedOpen item page →

Bluestein’s chirp identity embeds an arbitrary DFT in a padded cyclic convolution

Statement

Let N≥1, M≥2N−1, and x∈CN. Put αj=e−πij2/N for 0≤j<N, βt=eπit2/N for −(N−1)≤t≤N−1, and γk=e−πik2/N for 0≤k<N. Embed aj=αjxj for 0≤j<N and aj=0 otherwise in CM. Embed b[t]M=βt for −(N−1)≤t≤N−1 and set its other entries to zero; this is well-defined because these 2N−1 integers have distinct classes modulo M. Let c=a∗Mb be the unnormalised cyclic convolution on Z/MZ. Then, for 0≤k<N,

(FNx)(k)=N−1/2γk ck,

where γk=e−πik2/N. Moreover c=M FM−1((FMa)⊙(FMb)), where ⊙ is coordinatewise multiplication. The identity is exact for every N; padding to a radix-two M is an implementation choice, not a mathematical restriction.

Facts & Assumptions

Given: Integers N≥1, M≥2N−1, a vector x∈CN, and the definitions of FN, FM, and cyclic convolution.

[F1]

The unnormalised DFT is Xk=∑j=0N−1xje−2πijk/N and FNx=N−1/2X (The unnormalised engineering DFT and its conversion to the unitary transform, The unitary discrete Fourier transform on Z/NZ).

[F2]

Cyclic convolution is (a∗Mb)k=∑j=0M−1ajb[k−j]M, and its unitary DFT satisfies FM(a∗Mb)=M(FMa)⊙(FMb) (The unnormalised cyclic convolution on Z/NZ, The DFT turns cyclic convolution into a scaled pointwise product).

[F3]

The unitary DFT on Z/MZ is invertible with inverse given by the positive-sign unitary DFT (Finite Fourier inversion for the unitary transform on Z/NZ).

[F5]

Positive rational powers satisfy (rs)1/2=r1/2s1/2 for positive r,s (Rational powers ar of a positive base, Laws of rational exponents).

Proof

1.1givenF4choose

If two integers t,t′ in [−(N−1),N−1] have the same class modulo M, then M divides t−t′. But ∣t−t′∣≤2N−2<M; the only multiple of M in this range is zero, so t=t′. Thus the definition of b assigns at most one value to each residue. For each 0≤k<N and 0≤j<N, the difference k−j lies in [−(N−1),N−1], so the cyclic-convolution sum reduces exactly to ck=∑j=0N−1αjxjβk−j.

2.1step 1.1F1F4algebra

For every such j,k, −j2+(k−j)2−k2=−2kj, hence αjβk−jγk=e−2πijk/N. Summing this identity against xj and using [F1] gives γkck=Xk and therefore (FNx)(k)=N−1/2γkck.

3.1F2F3F5algebra∎

Applying [F2] to a,b gives FMc=M((FMa)⊙(FMb)). Applying the positive-sign inverse in [F3] and pulling the scalar M through its finite sum gives c=M FM−1((FMa)⊙(FMb)), as claimed.

LemmaStatement: Literature-sourcedProof: AI-generatedjudge pass (gpt-6-luna)Open item page →

Mixed-radix Cooley–Tukey factorization with fixed index maps

Statement

Let r,s≥2, N=rs, and x=(xj)j=0N−1∈CN. For 0≤u<r define xv(u)=xu+rv for 0≤v<s. For 0≤k2<s set yu(k2)=e−2πiuk2/N(Fsx(u))(k2) for 0≤u<r. Then for 0≤k1<r and 0≤k2<s,

(FNx)(k2+sk1)=(Fry(k2))(k1).

Here every Fq is the negative-sign unitary DFT with normalization q−1/2 from The unitary discrete Fourier transform on Z/NZ. Thus the inner transforms are the r length-s transforms of strided input subsequences; the twiddle multiplication is explicit; and the outer transforms are the s length-r transforms. No coprimality of r and s is assumed.

Facts & Assumptions

Given: Integers r,s≥2, N=rs, a vector x∈CN, and indices k1∈{0,…,r−1} and k2∈{0,…,s−1}.

[F1]

The unitary DFT is (Fqz)(k)=q−1/2∑v=0q−1zve−2πivk/q for q≥1 (The unitary discrete Fourier transform on Z/NZ).

[F2]

Every integer j with 0≤j<rs is uniquely j=u+rv with 0≤u<r and 0≤v<s; every k with 0≤k<rs is uniquely k=k2+sk1 in the stated ranges (For every natural n, (Z/n,+) is an abelian group, multiplication is a commutative monoid operation, and both distributive laws hold, For n≥1, every class in Z/n has one representative r with 0≤r<n, so ∣Z/n∣=n; while Z/0 is in bijection with Z).

Proof

1.1givenF1F2F3

By [F2], the pair (u,v) with j=u+rv runs exactly once through the N input indices, and (k1,k2) with k=k2+sk1 runs exactly once through the N output indices. Therefore the definition [F1] gives (FNx)(k2+sk1)=(rs)−1/2∑u=0r−1∑v=0s−1xu+rve−2πi(u+rv)(k2+sk1)/(rs).

2.1step 1.1F3F4algebra

Expanding the exponent gives (u+rv)(k2+sk1)/(rs)=uk2/(rs)+uk1/r+vk2/s+vk1. Since vk1 is an integer, its exponential factor is 1 by [F4]. Also (rs)−1/2=r−1/2s−1/2 by [F4]. Regrouping the finite sums in [F3] now yields (rs)−1/2∑u=0r−1e−2πiuk2/Ne−2πiuk1/r∑v=0s−1xu+rve−2πivk2/s.

3.1step 2.1F1given∎

The inner sum in step 2.1 is s1/2(Fsx(u))(k2) by [F1]. The remaining coefficient and sum are exactly r−1/2∑u=0r−1yu(k2)e−2πiuk1/r=(Fry(k2))(k1), again by [F1] and the definition of y(k2). This is the claimed identity.

LemmaStatement: Literature-sourcedProof: AI-generatedOpen item page →

Zero padding embeds linear convolution in cyclic convolution without aliasing

Statement

Let a0,…,an−1 and b0,…,bm−1 be finite complex sequences, and let M≥n+m−1. Extend both sequences by zero to indices 0,…,M−1. For every 0≤k<n+m−1, their length-M cyclic convolution equals the ordinary linear convolution ck=∑j=0n−1ajbk−j, with bq=0 outside 0≤q<m. For every remaining cyclic index n+m−1≤k<M, the cyclic convolution is zero. Thus the first n+m−1 cyclic-convolution outputs are exactly the full linear convolution, with no wraparound alias.

Facts & Assumptions

Given: Positive sequence lengths n,m, an integer M≥n+m−1, and the zero-padded vectors a,b∈CM.

[F1]

The length-M cyclic convolution is (a∗Mb)k=∑j=0M−1ajb[k−j]M (The unnormalised cyclic convolution on Z/NZ).

[F2]

By the given zero extension, the supports of the padded vectors are contained in {0,…,n−1} and {0,…,m−1}, respectively. Each residue modulo M has exactly one representative in {0,…,M−1} (For n≥1, every class in Z/n has one representative r with 0≤r<n, so ∣Z/n∣=n; while Z/0 is in bijection with Z).

Proof

1.1givenF1F2choose

A nonzero summand in [F1] has 0≤j<n and its second index is a residue in {0,…,m−1}. If k<n+m−1 and j>k, then k−j<0 and M+k−j≥M−(n−1)≥m, so [k−j]M lies outside the support of b and the summand is zero. If j≤k, then k−j≥0; whenever k−j≥m the summand is again zero, and otherwise the cyclic representative equals the ordinary index k−j. Therefore the nonzero terms of [F1] are exactly the linear-convolution terms.

2.1step 1.1F1F2algebra∎

Every index sum j+q with ajbq≠0 satisfies 0≤j+q≤n+m−2<M. Hence no such sum wraps modulo M. For k≥n+m−1, no supported pair has sum congruent to k modulo M: a sum is at most n+m−2, and its difference from k has magnitude less than M for the output indices 0≤k<M. Thus all cyclic terms vanish there. This proves the asserted zero tail and completes the claim.

LemmaStatement: Literature-sourcedProof: AI-generatedOpen item page →

Six-operation complex multiplication has a normwise roundoff bound

Statement

Let u be the unit roundoff of the operationwise model in Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, with 0<u≤1/16. For z,w∈C, compute fl⁡C(zw) from the four real products, one real subtraction, and one real addition specified in Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add. If every nonzero intermediate is normal and no operation overflows, then

∣fl⁡C(zw)−zw∣≤3u∣z∣∣w∣.

Facts & Assumptions

Given: z=zr+izi, w=wr+iwi, the operationwise model with unit roundoff 0<u≤1/16, and success of all six real operations.

[F1]

A complex product computes four separately rounded real products and then rounded real/imaginary sums, for six real operations; successful operations have exact-zero behavior or relative error at most u (Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, The standard relative floating-point model and unit roundoff).

[F2]

∣z∣=(zr2+zi2)1/2 and likewise for w (Real and imaginary parts, complex conjugation, and modulus); Cauchy–Schwarz in R2 gives ∣zrwr∣+∣ziwi∣≤∣z∣∣w∣ and ∣zrwi∣+∣ziwr∣≤∣z∣∣w∣ (Absolute value in an ordered field, Cauchy–Schwarz: ∣⟨u,v⟩∣≤∥u∥∥v∥, with equality exactly for linearly dependent vectors).

Proof

1.1givenF1algebra

Write p1=fl⁡(zrwr) and p2=fl⁡(ziwi). By [F1], ∣p1−zrwr∣≤u∣zrwr∣ and ∣p2−ziwi∣≤u∣ziwi∣. Rounding their difference adds error at most u∣p1−p2∣≤u(1+u)(∣zrwr∣+∣ziwi∣). Therefore the real-part error is at most (2u+u2)(∣zrwr∣+∣ziwi∣). The same calculation for the imaginary part gives (2u+u2)(∣zrwi∣+∣ziwr∣).

2.1step 1.1F2algebra∎

Applying [F2] to both component sums shows that each component error is at most (2u+u2)∣z∣∣w∣. The complex modulus of the two-component error is consequently at most 2(2u+u2)∣z∣∣w∣. Since u≤1/16, 2(2+u)u≤2(33/16)u<3u, proving the stated bound.

TheoremStatement: Literature-sourcedProof: AI-generatedjudge pass (gpt-6-luna)Open item page →

DCT-II is orthogonal with the stated endpoint normalization and even extension

Statement

Let Ckj=cos⁡(π(j+1/2)k/N) for 0≤j,k<N. Then CCT=diag⁡(N,N/2,…,N/2), so the inverse DCT-II is xj=N−1(X0+2∑k=1N−1Xkcos⁡(π(j+1/2)k/N)). For the even extension ENx of DCT-II and DST-I with fixed even and odd extension conventions, the unitary DFT also satisfies (F2NENx)(k)=2/N eπik/(2N)Xk for 0≤k<N.

Facts & Assumptions

Given: An integer N≥1, a vector x∈RN, the DCT-II matrix C, and the even extension ENx.

[F1]

Xk=∑j=0N−1xjcos⁡(π(j+1/2)k/N) and (ENx)j=(ENx)2N−1−j=xj (DCT-II and DST-I with fixed even and odd extension conventions).

[F2]

(F2Nz)(k)=(2N)−1/2∑m=02N−1zme−2πimk/(2N) (The unitary discrete Fourier transform on Z/NZ).

[F4]

For real u,v, cos⁡ucos⁡v=12(cos⁡(u−v)+cos⁡(u+v)) (Product-to-sum and sum-to-product identities).

[F6]

Rank–nullity holds for a linear map with finite-dimensional domain (Rank-nullity: dim⁡FV=nullity⁡T+rank⁡T).

[F7]

A square matrix is invertible exactly when its multiplication map is a linear isomorphism; equivalently, unique solvability for every right-hand side implies invertibility (Invertible matrix theorem: invertibility, full pivot rank, RREF I, trivial nullspace and unique solvability are equivalent).

Proof

1.1givenF3F5algebra

For 1≤r<2N, put θ=πr/N and Sr=∑j=0N−1cos⁡(θ(j+1/2)). Since 0<θ<2π, [F5] gives eiθ≠1; the finite geometric identity with z=eiθ therefore gives the complex sum eiθ/2(1−eiNθ)/(1−eiθ). If r is even, its numerator is zero. If r is odd, eiNθ=−1 and 1−eiθ=−2ieiθ/2sin⁡(θ/2) by [F3]. Here 0<θ/2<π, so [F5] also implies sin⁡(θ/2)≠0; the quotient is purely imaginary. In either case its real part is zero, hence Sr=0; also S0=N.

2.1F1F4step 1.1algebra

Applying [F4] to each product CkjCℓj gives (CCT)kℓ=12(S∣k−ℓ∣+Sk+ℓ). If k=ℓ=0, this is N. If k=ℓ>0, then S0=N and 0<2k<2N, so it is N/2. If k≠ℓ, then 0<∣k−ℓ∣<N and 0<k+ℓ<2N, so both sums vanish by step 1.1. Thus CCT=diag⁡(N,N/2,…,N/2).

3.1step 2.1F6F7algebra

Let D=diag⁡(N,N/2,…,N/2). Since CCT=D and D is invertible, R=CTD−1 satisfies CR=I. Hence every y∈RN has a preimage Ry under C, so the linear map defined by C is surjective. Its rank is N, and [F6] gives nullity zero; therefore it is bijective and [F7] makes C invertible. The identity CR=I then gives R=C−1, whose (j,k) entry yields the stated inverse formula.

4.1F1F2F3algebra∎

For each j, the two terms of the DFT of ENx at positions j and 2N−1−j are xje−πijk/N and xjeπi(j+1)k/N, since e−2πik=1. Their sum is 2xjeπik/(2N)cos⁡(π(j+1/2)k/N) by [F3]. Summing over j and applying the normalization in [F2] gives (F2NENx)(k)=2(2N)−1/2eπik/(2N)Xk=2/Neπik/(2N)Xk.

TheoremStatement: Literature-sourcedProof: AI-generatedjudge pass (gpt-6-luna)Open item page →

DST-I is orthogonal with the stated endpoint normalization and odd extension

Statement

Let Skj=sin⁡(πjk/(N+1)) for 1≤j,k≤N. Then STS=((N+1)/2)IN, so the inverse DST-I is xj=2(N+1)−1∑k=1NYksin⁡(πjk/(N+1)). For the odd extension ONx of DCT-II and DST-I with fixed even and odd extension conventions, (F2(N+1)ONx)(k)=−2i(2(N+1))−1/2Yk for 1≤k≤N.

Facts & Assumptions

Given: An integer N≥1, a vector x∈RN, the DST-I matrix S, and the odd extension ONx.

[F1]

Yk=∑j=1Nxjsin⁡(πjk/(N+1)); (ONx)0=(ONx)N+1=0, (ONx)j=xj, and (ONx)2(N+1)−j=−xj (DCT-II and DST-I with fixed even and odd extension conventions).

[F2]

(F2(N+1)z)(k)=(2(N+1))−1/2∑m=02(N+1)−1zme−2πimk/(2(N+1)) (The unitary discrete Fourier transform on Z/NZ).

[F4]

For real u,v, sin⁡usin⁡v=12(cos⁡(u−v)−cos⁡(u+v)) (Product-to-sum and sum-to-product identities).

Proof

1.1givenF3F5algebra

For 1≤r≤2N, let Tr=∑j=1Ncos⁡(πrj/(N+1)). Put z=eπir/(N+1). Since 0<πr/(N+1)<2π, [F5] gives z≠1; also z2(N+1)=1, so the geometric sum over j=0,…,2(N+1)−1 is zero. Pair the terms with indices j and 2(N+1)−j for 1≤j≤N; they are conjugates, while the unpaired terms are 1 and (−1)r. Taking real parts gives 1+(−1)r+2Tr=0. Hence Tr=−1 for even r and Tr=0 for odd r; also define T0=N.

2.1F1F4step 1.1algebra

Applying [F4] to each product SkjSℓj gives (STS)kℓ=12(T∣k−ℓ∣−Tk+ℓ). If k=ℓ, then the first term is T0=N and the second is T2k=−1, giving (N+1)/2. If k≠ℓ, then ∣k−ℓ∣ and k+ℓ have the same parity and both are between 1 and 2N; their T values from step 1.1 agree, giving zero. Therefore STS=((N+1)/2)IN.

3.1F1F2F3step 2.1algebra∎

Since S is symmetric and (N+1)/2>0, step 2.1 gives S−1=2(N+1)−1S, proving the inverse formula. For the odd extension, pair its positions j and 2(N+1)−j: their DFT terms are xje−πijk/(N+1)−xjeπijk/(N+1)=−2ixjsin⁡(πjk/(N+1)) by [F3]. Summing and applying [F2] gives the claimed DFT relation.

TheoremStatement: Literature-sourcedProof: AI-generatedjudge pass (gpt-6-luna)Open item page →

DCT-II samples extract Chebyshev coefficients at first-kind roots

Statement

Let p(t)=∑k=0N−1akTk(t) be a polynomial of degree less than N, where Tk is the Chebyshev polynomial of the first kind, and sample xj=p(cos⁡(π(j+1/2)/N)) for 0≤j<N. If X is the DCT-II of x, then a0=X0/N and ak=2Xk/N for 1≤k<N.

Facts & Assumptions

Given: N≥1, coefficients a0,…,aN−1, Chebyshev polynomials Tk, and the DCT-II convention of DCT-II and DST-I with fixed even and odd extension conventions.

[F1]
[F2]

The DCT-II matrix is Ckj=cos⁡(π(j+1/2)k/N), and its row-orthogonality factor is CCT=diag⁡(N,N/2,…,N/2) (DCT-II and DST-I with fixed even and odd extension conventions, DCT-II is orthogonal with the stated endpoint normalization and even extension).

Proof

1.1givenF1F2

Put θj=π(j+1/2)/N. By [F1], xj=∑k=0N−1akcos⁡(kθj)=∑k=0N−1Ckjak, so in vector form x=CTa.

2.1step 1.1F2algebra∎

The DCT output is X=Cx=CCTa. By [F2], CCT is diagonal with entries N at index zero and N/2 at positive indices. Thus X0=Na0 and Xk=(N/2)ak for k≥1. Dividing by these positive constants gives the claimed coefficients.

TheoremStatement: Literature-sourcedProof: AI-adaptedOpen item page →

The interval evaluator's arctangent definition uses the canonical Fourier pi

Statement

The value 4arctan⁡(1) stipulated for π by Real elementary functions and their domains equals the canonical circle constant π used in the finite Fourier conventions, including Pi as twice the smallest positive zero of cosine. Thus the Machin enclosure of π used by the interval evaluator encloses the same constant as the DFT and Bluestein formulas.

Facts & Assumptions

Given: The interval-evaluator definition of arctan⁡ and π, and the published principal inverse tangent.

[F1]

The interval-evaluator definition sets arctan⁡x=∫0x(1+t2)−1 dt and π=4arctan⁡(1) (Real elementary functions and their domains).

[F2]

The principal arctangent equals the same integral for every real input; for ∣x∣<1 it equals its alternating power series, and the endpoint alternating series has sum π/4 (Principal arctangent: derivative, integral, power series, and the Gregory–Leibniz series).

[F3]

If an ordinary real series converges to s, its power series tends to s as its argument increases to 1 (Abel's limit theorem: if a real series converges to s, then its power series tends to s as x↑1).

[F4]

A function differentiable at a limit point is continuous there (A function differentiable at c is continuous at c).

[F5]

The canonical Fourier constant is the positive constant π=2γ where γ is the smallest positive zero of cosine (Pi as twice the smallest positive zero of cosine).

[F6]

For the integral-defined arctangent A and πA=4A(1), 16A(1/5)−4A(1/239)=πA (Trigonometric identities, Machin's formula and reduced Taylor tails, Proof step 3.1).

Proof

1.1givenF1F2

By [F1] and the integral identity in [F2], the interval-evaluator arctangent and the principal arctangent have the same value at 1.

1.2F2F3F5algebra

Let an=(−1)n/(2n+1). The endpoint statement in [F2] says ∑n≥0an=π/4; [F3] gives lim⁡x↑1∑n≥0an(x2)n=π/4. Multiplication by x and the interior power-series identity in [F2] show lim⁡x↑1arctan⁡x=π/4, where [F5] fixes this as the canonical Fourier constant.

2.1F1F2F4F6step 1.1step 1.2algebra∎

The principal arctangent is differentiable at 1 by [F2], hence continuous there by [F4]. Therefore step 1.2 gives arctan⁡(1)=π/4. Step 1.1 and [F1] now give 4arctan⁡(1)=π, proving that the interval evaluator and the Fourier formulas use the same constant. Finally [F6] identifies 16arctan⁡(1/5)−4arctan⁡(1/239) with 4arctan⁡(1), so its Machin enclosure contains this canonical π.

AlgorithmAlgorithm: AI-adaptedProof: Not applicableOpen item page →

Certified dyadic enclosures for unit-circle phases

Definition

Input an exact rational q, an exact rational target 0<τ≤1/4, integer dyadic exponent limits emin⁡≤emax⁡, an initial precision p0≥2, a finite precision cap pmax⁡≥p0, and a finite elementary-series cap J≥1. The target value is w=eπiq=cos⁡(πq)+isin⁡(πq) by exp⁡(x+iy)=ex(cos⁡y+isin⁡y), ∣exp⁡(x+iy)∣=ex, and eiπ+1=0, for the canonical Fourier π identified with the interval evaluator's constant by The interval evaluator's arctangent definition uses the canonical Fourier pi. For each precision p=p0,p0+1,…,pmax⁡, and t∈{1/5,1/239}, form the exact rational interval IJ(t)=[AJ(t)−RJ(t),AJ(t)+RJ(t)], where AJ(t)=∑j=0J(−1)jt2j+12j+1,RJ(t)=∣t∣2J+3(2J+3)(1−t2). The Machin identity gives the interval P=16IJ(1/5)−4IJ(1/239) containing π. Form the exact rational interval qP by taking the minimum and maximum of its two endpoint products, then round its endpoints down and up to obtain a dyadic input interval Θ in format (p,emin⁡,emax⁡). If this conversion overflows, treat that precision as a non-finite evaluation. Otherwise build two finite real expression DAGs with input interval Θ and requested outputs cos⁡(Θ) and sin⁡(Θ), and call Certified range evaluation for elementary real and complex functions using the same dyadic format and truncation index J; its fixed finite-cell rules govern range reduction. If either result is non-finite, continue at the next precision unless the precision cap is reached, in which case return inconclusive with the supplier status. If the results are finite intervals C=[c−,c+] and S=[s−,s+], set w^=c−+is− and compute an upward-rounded dyadic ϵ≥(c+−c−)+(s+−s−). If ϵ≤τ, return certified(\widehat w,\epsilon); otherwise continue or return inconclusive at the cap. A non-finite endpoint or overflow returns its explicit failure status. The routine makes no finite-error claim on a failure branch.

Remarks

The lower-left rectangle corner is already a representable dyadic pair. The radius uses the sum of coordinate widths, which bounds complex modulus error without a square-root computation. Precision refinement is finite and may return inconclusive; only the certified branch is used by dependent algorithms.

AlgorithmAlgorithm: AI-adaptedProof: Not applicableOpen item page →

Computed unitary radix-two FFT with certified twiddle phases

Definition

Fix an instance of the operationwise floating-point model in Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, with representable real set F. Input N=2m with m≥0, x∈CN whose real and imaginary coordinates all belong to F, a direction forward or inverse, an exact rational twiddle tolerance 0<τ≤1/4, integer exponent limits emin⁡≤emax⁡ for the dyadic phase format, an initial phase precision p0≥2, a finite precision cap pmax⁡≥p0, a finite elementary-series cap J≥1, and a maximum radix-two recursion depth dmax⁡≥0. At precision p, phase endpoints use the dyadic format with precision p and exponent limits emin⁡,emax⁡. Output a vector in CN and the certificate for each twiddle used, or the first range-failure/inconclusive status and its stage, index, or phase. Before multiplying by a certified phase w^k, require its real and imaginary coordinates to belong to F; otherwise return range-failure at that twiddle index before performing the product. Use the same floating-point model instance throughout the recursion.

For direction forward, at N=1 return x0. For N>1, if dmax⁡=0 return inconclusive with the subdivision-cap-exhausted status. Otherwise split x into even and odd subsequences and recursively compute their unitary transforms E,O by calling this routine with the same phase parameters and depth cap dmax⁡−1. For each 0≤k<N/2, call Certified dyadic enclosures for unit-circle phases on (q,τ,emin⁡,emax⁡,p0,pmax⁡,J) with q=−2k/N, obtaining (w^k,ϵk) approximating wk=e−2πik/N. Compute the six-real-operation complex product tk=fl⁡C(w^kOk), componentwise rounded sums sk+=fl⁡C(Ek+tk) and sk−=fl⁡C(Ek−tk), and c^=fl⁡(1/2). Set output entries k and k+N/2 to the componentwise rounded real scalings fl⁡C(c^sk+) and fl⁡C(c^sk−), respectively. For direction inverse, conjugate the input, run the forward routine with the same phase parameters and dmax⁡, and conjugate its output; conjugation is exact in the operationwise model. Propagate any failed phase certificate; on arithmetic failure return the operationwise range status and index. Accuracy is asserted only by the separate theorem and only on a successful no-range-failure execution.

TheoremStatement: AI-adaptedProof: AI-generatedOpen item page →

Certified phase output encloses the exact unit-circle value

Statement

Whenever Certified dyadic enclosures for unit-circle phases returns certified(\widehat w,\epsilon) on rational input q, its output satisfies ∣w^−eπiq∣≤ϵ≤τ.

Facts & Assumptions

Given: Rational q, target 0<τ≤1/4, finite precision and evaluation budgets, and a successful output certified(\widehat w,\epsilon).

[F1]

On a finite return, the real interval C contains cos⁡(πq) and S contains sin⁡(πq), and Euler's identity identifies their pair with eπiq; the interval and Fourier definitions use the same π (Certified real elementary-function evaluations enclose their ranges, Real intervals, complex rectangles and ball enclosures, exp⁡(x+iy)=ex(cos⁡y+isin⁡y), ∣exp⁡(x+iy)∣=ex, and eiπ+1=0, The interval evaluator's arctangent definition uses the canonical Fourier pi).

[F2]

The returned lower endpoints are the lower endpoints of C,S, and ϵ is an upward-rounded dyadic at least (c+−c−)+(s+−s−); directed interval arithmetic encloses these exact widths (Certified dyadic enclosures for unit-circle phases, Outward-rounded operations are inclusion-isotone and enclose DAG evaluations).

[F3]

For real a,b, ∣a+ib∣≤∣a∣+∣b∣ by the complex modulus triangle inequality (Conjugation is an involutive real-field automorphism, zz‾=∣z∣2, and modulus is definite, multiplicative, and subadditive).

Proof

1.1givenF1F2

By [F1], the real coordinate of w=eπiq lies in [c−,c+] and its imaginary coordinate lies in [s−,s+]. Since w^=c−+is− by [F2], the coordinate differences satisfy ∣ℜ(w−w^)∣≤c+−c− and ∣ℑ(w−w^)∣≤s+−s−.

2.1step 1.1F2F3algebra∎

Applying [F3] to these two coordinate differences gives ∣w−w^∣≤(c+−c−)+(s+−s−)≤ϵ. The algorithm returns only when ϵ≤τ, proving the claim.

AlgorithmAlgorithm: Literature-sourcedProof: Not applicableOpen item page →

Computed FFT cyclic convolution and zero-padded linear convolution

Definition

Fix an instance of the operationwise floating-point model in Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, with representable real set F. Input two finite complex sequences a,b whose real and imaginary coordinates all belong to F, a mode cyclic or linear, and phase/FFT controls: an exact rational twiddle tolerance 0<τ≤1/4, integer dyadic exponent limits emin⁡≤emax⁡, an initial phase precision p0≥2, a finite precision cap pmax⁡≥p0, a finite elementary-series cap J≥1, and a maximum radix-two recursion depth dmax⁡≥0. At precision p, phase endpoints use the dyadic format with precision p and exponent limits emin⁡,emax⁡. In cyclic mode the inputs must have the same length M=2q with integer q≥0; the requested exact operation is cyclic convolution on Z/MZ. In linear mode, with lengths n,m≥1, set L=n+m−1, choose the least power of two M≥L, and append zeros to both inputs to length M; the requested output is the first L entries of their cyclic convolution. Validate the mode, positive dimensions, input representability, exact rational tolerance, integer control parameters and their displayed inequalities, and the cyclic power-of-two condition before any transform call. If any such input constraint fails, return inconclusive with diagnostic invalid-input and the offending parameter or coordinate, without a vector output. An arithmetic range failure returns range-failure with its operation and index, without a vector output.

For either mode, call Computed unitary radix-two FFT with certified twiddle phases on each length-M input with direction forward and the same (τ,emin⁡,emax⁡,p0,pmax⁡,J,dmax⁡) controls. Multiply corresponding transform entries as fl⁡C(A^kB^k) using the six-real-operation complex product of Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add. Call the same FFT routine on this product vector with direction inverse and the same controls, and multiply each output component by the computed real scalar fl⁡(M) using componentwise rounded real scaling. Return the length-M cyclic result, or its first L entries in linear mode, only if every phase, recursion-budget, and arithmetic operation succeeds; otherwise return the first inconclusive or range-failure status and index. The exact convolution identity and numerical-error claim are separate results.

LemmaStatement: AI-adaptedProof: AI-generatedOpen item page →

A computed unitary radix-two butterfly has error at most (10u + εtw) times its input norm

Statement

Let u≤1/16, let ∣w∣=1, and let ∣w^−w∣≤ϵ≤1/4. For a,b∈C, perform the successful butterfly of Computed unitary radix-two FFT with certified twiddle phases using w^. If each exact nonzero real intermediate is normal and every operation succeeds under the operationwise model, then its computed pair (y^+,y^−) satisfies

∥(y^+,y^−)−2−1/2(a+wb,a−wb)∥2≤(10u+ϵ)∥(a,b)∥2.

Facts & Assumptions

Given: a,b,w,w^,u,ϵ with the stated bounds, and a successful rounded butterfly.

[F5]

For a pair (z1,z2)∈C2, ∥(z1,z2)∥2=(∣z1∣2+∣z2∣2)1/2 (The counting inner product on CZ/NZ).

[F1]

Six-operation complex multiplication obeys ∣fl⁡C(zw)−zw∣≤3u∣z∣∣w∣ when its six operations succeed (Six-operation complex multiplication has a normwise roundoff bound).

[F3]

Each real rounded addition, multiplication, or positive in-range square root has relative error at most u; complex addition and real scaling round their two components separately (The standard relative floating-point model and unit roundoff, Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add).

Proof

1.1givenF1F2algebra

Let t=fl⁡C(w^b). By [F1] and [F2], ∣t−wb∣≤3u∣w^∣∣b∣+ϵ∣b∣≤(15u/4+ϵ)∣b∣. Thus ∣t∣≤(1+15u/4+ϵ)∣b∣≤95∣b∣/64.

1.2givenF3F4algebra

For q±=fl⁡C(a±t), [F3] gives ∣q±−(a±t)∣≤u(∣a∣+∣t∣) by [F4]. If c=1/2 and c^=fl⁡(1/2), then correct rounding gives ∣c^−c∣≤uc. The componentwise rounded scaling therefore satisfies ∣fl⁡C(c^q±)−cq±∣≤(2u+u2)c∣q±∣, and ∣q±∣≤(1+u)(∣a∣+∣t∣).

2.1step 1.1step 1.2algebra

Combining steps 1.1–1.2 and using 2c=1, the two-output error norm is at most (15u/4+ϵ)∣b∣+α(∣a∣+95∣b∣/64), where α=u+(2u+u2)(1+u)=3u+3u2+u3≤817u/256. Since 15/4+(817/256)(95/64)<9, this is at most (817u/256)∣a∣+(9u+ϵ)∣b∣.

3.1step 2.1F4F5algebra∎

By [F4], (817/256)2+92<10, so (817u/256)∣a∣+9u∣b∣≤10u∣a∣2+∣b∣2; [F5] identifies the square-root factor as ∥(a,b)∥2. Also ϵ∣b∣≤ϵ∣a∣2+∣b∣2. Adding the bounds proves the claim.

AlgorithmAlgorithm: Literature-sourcedProof: Not applicableOpen item page →

Arbitrary-length mixed-radix and Bluestein DFT

Definition

Fix an instance of the operationwise floating-point model in Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, with representable real set F. Input N≥1, x∈CN whose real and imaginary coordinates all belong to F, an exact rational phase tolerance 0<τ≤1/4, integer dyadic exponent limits emin⁡≤emax⁡, an initial phase precision p0≥2, a finite precision cap pmax⁡≥p0, a finite elementary-series cap J≥1, and a maximum radix-two recursion depth dmax⁡≥0. At precision p, phase endpoints use the dyadic format with precision p and exponent limits emin⁡,emax⁡. Before any certified phase is used as an arithmetic operand or stored in an input vector to a computed subroutine, require its real and imaginary coordinates to belong to F; otherwise return range-failure with that phase index before the operation or subcall. Use the same floating-point model instance throughout all recursive calls. The output convention is the unnormalised DFT Xk=∑j=0N−1xje−2πijk/N (The unnormalised engineering DFT and its conversion to the unitary transform); the procedure returns an approximate vector or the first inconclusive/range-failure status.

  1. For N=1, return x0.
  2. If N=2m with m≥1, call Computed unitary radix-two FFT with certified twiddle phases in forward mode with controls (τ,emin⁡,emax⁡,p0,pmax⁡,J,dmax⁡) and multiply each output by the computed scalar fl⁡(N). A failed subcall or scale operation returns its status.
  3. If N is composite and not a power of two, find its least divisor r with 1<r<N by trial division and put s=N/r. For u=0,…,r−1, recursively call this procedure with the same controls on the strided vector (xu+rv)v=0s−1 to obtain an approximate unnormalised length-s DFT Uu. For each 0≤k2<s and 0≤u<r, call Certified dyadic enclosures for unit-circle phases on (q,τ,emin⁡,emax⁡,p0,pmax⁡,J) with q=−2uk2/N to obtain the twiddle enclosure, then multiply its returned phase by Uu(k2) using fl⁡C. For each 0≤k2<s, apply this procedure recursively, with the same controls, to the length-r vector of these products indexed by u, and for every 0≤k1<r store its output k1 at index k2+sk1. Propagate any failed phase or arithmetic status.
  4. If N is prime, set M to the least power of two with M≥2N−1. For each 0≤j<N, call Certified dyadic enclosures for unit-circle phases on (q,τ,emin⁡,emax⁡,p0,pmax⁡,J) with q=−j2/N to obtain α^j, and set aj=fl⁡C(α^jxj); set the remaining entries of a∈CM to zero. For each −(N−1)≤t≤N−1, obtain β^t by the same call with q=t2/N and set b[t]M=β^t, setting other entries of b to zero. Compute the cyclic convolution with Computed FFT cyclic convolution and zero-padded linear convolution in cyclic mode using controls (τ,emin⁡,emax⁡,p0,pmax⁡,J,dmax⁡). For each 0≤k<N, obtain γ^k by the same phase call with q=−k2/N and set X^k=fl⁡C(γ^kc^k). Return the first N entries or the first failure status.

The divisor search and phase-enclosure work have separate integer/interval budgets and are not counted as complex arithmetic operations in the operation-count theorem. The exact factorization lemmas and the chirp-phase error theorem state what is guaranteed; this procedure by itself makes no general mixed-radix stability claim.

TheoremStatement: Literature-sourcedProof: AI-generatedOpen item page →

Computed unitary radix-two FFT has the multiplicative stage error bound

Statement

Let N=2m, m≥0, and suppose a successful execution of Computed unitary radix-two FFT with certified twiddle phases has no range failures. If every twiddle certificate satisfies ϵℓ≤ϵtw≤1/4 and u≤1/16, put η=10u+ϵtw. Then

∥F^Nx−FNx∥2≤((1+η)m−1)∥x∥2.

The conjugated inverse routine has the same bound. If mη≤1, the right side is at most 2mη∥x∥2. Thus an O(ulog⁡N) shorthand requires both ϵtw=O(u) and ulog⁡N small; the theorem makes no such shorthand when twiddle errors are uncontrolled.

Facts & Assumptions

Given: N=2m, x∈CN, a successful execution, u≤1/16, and ϵℓ≤ϵtw≤1/4 for every twiddle certificate.

[F1]

For N=2M, split x into even and odd subsequences e,o; the unnormalised DFT obeys Xk(x)=Xk(e)+e−2πik/NXk(o) and Xk+M(x)=Xk(e)−e−2πik/NXk(o), while FN=N−1/2XN (The radix-two even/odd factorisation of the DFT, The unnormalised engineering DFT and its conversion to the unitary transform, The unitary discrete Fourier transform on Z/NZ). The recursive FFT computes XN exactly (The recursive radix-two fast Fourier transform, Correctness of the recursive radix-two FFT).

[F2]

Every computed normalized butterfly differs from its exact block by at most η times the pair input norm (A computed unitary radix-two butterfly has error at most (10u + εtw) times its input norm).

[F3]

The unitary DFT preserves the squared Euclidean norm; in particular the exact transforms of the even and odd subsequences have squared norms summing to ∥x∥22 (Finite Parseval and Plancherel identity for the unitary DFT).

[F4]

Complex conjugation preserves modulus and the Euclidean norm, and the inverse unitary DFT is obtained by conjugating input, applying the forward DFT, and conjugating output (Conjugation is an involutive real-field automorphism, zz‾=∣z∣2, and modulus is definite, multiplicative, and subadditive, Finite Fourier inversion for the unitary transform on Z/NZ).

[F5]

The real exponential is its power series (Real elementary functions and their domains).

[F6]

For z∈CN, ∥z∥22=∑j∣zj∣2 (The counting inner product on CZ/NZ).

Proof

1.1givenF1F7algebrabase

For m=0, N=1 and the algorithm returns the input exactly, so the error is 0=(1+η)0−1. For m≥1, [F1] gives the exact unnormalised top outputs Xk(e)+wXk(o) and Xk(e)−wXk(o), with w=e−2πik/N. The child unitary outputs are Ek=Xk(e)/N/2 and Ok=Xk(o)/N/2; dividing the parent unnormalised outputs by N=2N/2 gives exactly Uw(Ek,Ok)=2−1/2(Ek+wOk,Ek−wOk). By [F7], ∣w∣=1 and the scaling identity holds, so the columns of Uw have squared norm 1 and inner product 2−1(w−w)=0; hence Uw preserves the pair norm.

2.1givenF2F3F6step 1.1algebrainductionih

Suppose the recursive transform of length N/2 has error bound ρm−1=(1+η)m−1−1. By [F3] and [F6], stacking the exact even and odd transforms has norm ∥x∥2; stacking their computed errors has norm at most ρm−1∥x∥2, since the even and odd input coordinates partition x. Hence the stacked computed suboutputs have norm at most (1+ρm−1)∥x∥2. For each k, [F2] bounds the top butterfly error by η times the norm of its computed input pair. Squaring these bounds and summing over k shows that the total top-stage error norm is at most η(1+ρm−1)∥x∥2. The prior subtransform errors contribute at most ρm−1∥x∥2 through the direct sum of exact norm-preserving blocks in step 1.1. Therefore the total error is at most [ρm−1+η(1+ρm−1)]∥x∥2=((1+η)m−1)∥x∥2. Induction proves the forward bound for every m.

3.1F4step 2.1

By [F4], the inverse implementation is conjugation before and after the forward routine and conjugation preserves every coordinate modulus. Applying step 2.1 to x‾ gives the same error norm for the inverse direction.

4.1givenF5step 2.1algebradischarge-induction: step 2.1∎

If mη≤1, then 1+η≤eη by the power series [F5], so (1+η)m≤emη. For 0<t≤1, et−1=∑j≥1tj/j!≤t∑j≥11/j!<2t; at t=0, et−1=2t=0. Thus ((1+η)m−1)≤2mη. If ϵtw=O(u), this is O(mu)=O(ulog⁡2N), with the smallness condition already imposed.

TheoremStatement: Literature-sourcedProof: AI-generatedOpen item page →

Mixed-radix and Bluestein reductions compute every finite DFT in O(N log N) arithmetic

Statement

For this theorem, define the formal exact-constant model as the complete finite branch schedule of Arbitrary-length mixed-radix and Bluestein DFT, with its radix-two subdivision cap sufficient to finish every call, every certified-phase output (including nested calls) replaced by its exact target eπiq, and every arithmetic instruction interpreted exactly. Phase-evaluation and arithmetic-failure statuses are suppressed in this idealized model; it is not an exactness claim about the computed routine, whose phase values are enclosures. For every integer N≥1 and x∈CN, the formal model returns the unnormalised DFT Xk=∑j=0N−1xje−2πijk/N. Count complex additions, multiplications, and scalar operations at each butterfly, but exclude integer factor search, exact phase generation, interval evaluation, storage, and bit complexity. If M is the least power of two at least 2N−1 in a Bluestein prime branch, that branch costs O(Mlog⁡M); for N≥2, the full arbitrary-length recursion costs O(Nlog⁡N), while N=1 takes constant work.

Facts & Assumptions

Given: N≥1, x∈CN, and the formal exact-constant model defined in the Statement, with exact arithmetic instructions.

[F1]

The formal exact-constant model follows the branch schedule, unnormalised output convention, and exact phase targets of the algorithm; powers of two use the unitary radix-two transform scaled by N, composites use the fixed mixed-radix schedule, and primes use a length-M chirp convolution (Arbitrary-length mixed-radix and Bluestein DFT, The unnormalised engineering DFT and its conversion to the unitary transform).

[F2]

The exact mixed-radix branch equals the DFT by Mixed-radix Cooley–Tukey factorization with fixed index maps, and the exact prime-length branch equals it by Bluestein’s chirp identity embeds an arbitrary DFT in a padded cyclic convolution.

[F3]

The radix-two arithmetic count is at most 2nlog⁡2n for power-of-two length n, with twiddle generation excluded (The radix-two FFT uses O(Nlog⁡2N) complex arithmetic operations).

[F4]

In exact arithmetic, the cyclic convolution algorithm takes two unitary DFTs, pointwise multiplication, the inverse unitary DFT, and the M scale; the published DFT convolution identity and inversion theorem identify this with a∗Mb (Computed FFT cyclic convolution and zero-padded linear convolution, The DFT turns cyclic convolution into a scaled pointwise product, Finite Fourier inversion for the unitary transform on Z/NZ, The unnormalised cyclic convolution on Z/NZ).

[F6]

For every positive N, XN=N FNx by the two transform normalizations; rs=rs for positive integers (The unitary discrete Fourier transform on Z/NZ, The unnormalised engineering DFT and its conversion to the unitary transform, Rational powers ar of a positive base, Laws of rational exponents).

[F7]

The natural logarithm is strictly increasing, satisfies log⁡(xy)=log⁡x+log⁡y for positive x,y, and log⁡2x=log⁡x/log⁡2; since 2>1, strict increase and log⁡1=0 give log⁡2>0, so log⁡2 is strictly increasing. Repeated application of the product law gives log⁡2(2L)=L and log⁡2(∏ini)=∑ilog⁡2ni for each finite list of positive integers (The natural logarithm as the inverse of the exponential function, Order, continuity, range, and the product, quotient, and reciprocal laws for the natural logarithm, The logarithm to a positive base other than one, The principle of mathematical induction).

[F8]

Strong induction on positive integer lengths follows by choosing the least counterexample using the well-ordering principle; ordinary induction on a finite binary-tree height is the induction principle (The well-ordering principle, The principle of mathematical induction).

Proof

1.1givenF1F5F8algebrabase

We prove correctness by strong induction on N, justified by [F8]. At N=1, step 1 of the formal model returns x0, the one-term unnormalised DFT. If N is a power of two, its radix-two branch calls the exact unitary transform and scales by N; [F5] identifies that result with the unnormalised DFT.

1.2ih

For the induction step, assume the formal model returns the unnormalised DFT for every positive length smaller than N.

1.3F1F3F7algebra

For a power-of-two size M≥2, [F3] gives O(Mlog⁡2M); the output normalization uses one square root and O(M) component scalings, which preserve this order. In a Bluestein branch, the least power of two M≥2N−1 satisfies M<4N, and three radix-two transforms plus O(M) pointwise products/scalings cost O(Mlog⁡2M). Since log⁡2M≤log⁡2(4N)=2+log⁡2N≤3log⁡2N for N≥2, this is O(Nlog⁡2N) for a prime input N.

2.1givenstep 1.2F1F2F6inductionalgebra

If N is composite and not a power of two, the least-divisor branch splits N=rs with r,s<N. The hypothesis in step 1.2 makes the recursive unnormalised length-s and length-r transforms exact. By [F6], the length-s output on each strided vector is s Fsx(u), and a length-r unnormalised transform is r times the unitary length-r DFT. The fixed strided inputs, exact phase factors, and output indexing are those in [F2], so the algorithm combines the recursive outputs as Xk2+sk1=∑u=0r−1Uu(k2)e−2πiuk2/Ne−2πiuk1/r. This is the unnormalised mixed-radix formula; hence every output is exact.

2.2givenF1F2F4F6step 1.1algebra

If N is prime, [F2] gives FNx=N−1/2γ⊙c for the exact cyclic convolution c in the Bluestein branch. The formal model computes c exactly by [F4]. Multiplying the unitary output identity by N gives XN=γ⊙c, which is exactly the unnormalised output of the branch. The base, power-of-two, composite and prime cases exhaust all positive N.

3.1givenF1F7F8step 1.1step 1.3algebrainductiondischarge-induction: step 1.2∎

At a composite non-power-of-two node N=rs, the algorithm's actual call schedule invokes r transforms of size s and s transforms of size r, plus at most CN arithmetic operations for a fixed C. Thus T(N)≤rT(s)+sT(r)+CN, so the normalized count S(N):=T(N)/N satisfies S(N)≤S(r)+S(s)+C. For the bound, build a separate binary comparison tree by expanding this normalized recurrence at each composite non-power-of-two size; stop at prime or power-of-two sizes. This tree is finite because every child size is smaller than its parent, and its terminal sizes n1,…,nL multiply to N because each split replaces n by factors r,s with n=rs. Every terminal size is at least 2, so 2L≤N and [F7] gives L≤log⁡2N. A full binary tree with L leaves has L−1 internal nodes: a leaf has zero internal nodes, while a root with subtrees having L1,L2 leaves has 1+(L1−1)+(L2−1)=L1+L2−1 internal nodes, by induction on height [F8]. The product law in [F7] gives ∑i=1Llog⁡2ni=log⁡2N. By steps 1.1 and 1.3, each terminal size ni, whether prime or a power of two, contributes O(log⁡2ni) to S, with one uniform constant. Summing the terminal contributions and the at most C contribution at each internal node yields S(N)=O(log⁡2N) and hence T(N)=O(Nlog⁡2N). The comparison tree bounds the normalized recurrence; it is not the algorithm's actual call tree.

TheoremStatement: Literature-sourcedProof: AI-generatedOpen item page →

Computed FFT convolution error separates transform, product, inverse, and final-scale terms

Statement

Let M=2q with integer q≥0 and let a,b∈CM be the arrays actually transformed by Computed FFT cyclic convolution and zero-padded linear convolution (zero-padded in linear mode). Assume all operations succeed, u≤1/16, the twiddle certificates satisfy ϵℓ≤ϵtw≤1/4, and put η=10u+ϵtw, ρ=(1+η)q−1, ϵp=3u, ϵs=2u+u2, and λ=2ρ+ρ2+ϵp(1+ρ)2. If c=a∗Mb is the exact unnormalised cyclic convolution, then the computed length-M result c^ satisfies

∥c^−c∥2≤M[λ+ρ(1+λ)+ϵs(1+ρ)(1+λ)]∥a∥2∥b∥2.

In linear mode, the same right side bounds the error of the first n+m−1 outputs relative to the exact linear convolution, because zero padding removes cyclic aliasing. This is a conditional error estimate, not an unconditional success certificate.

Facts & Assumptions

Given: The successful computation, length-M input arrays, unitary transforms A=FMa and B=FMb, u,ϵtw, and the constants in the Statement.

[F1]

The transform and inverse-transform errors satisfy ∥A^−A∥2≤ρ∥a∥2, ∥B^−B∥2≤ρ∥b∥2, and ∥z^−FM−1p^∥2≤ρ∥p^∥2 (Computed unitary radix-two FFT has the multiplicative stage error bound, Finite Fourier inversion for the unitary transform on Z/NZ).

[F2]

For vectors u,v∈CM, ∥u⊙v∥2≤∥u∥2∥v∥2, since ∑k∣uk∣2∣vk∣2≤(∑k∣uk∣2)(∑k∣vk∣2) (The counting inner product on CZ/NZ, Real and imaginary parts, complex conjugation, and modulus).

[F3]

Finite Parseval gives ∥A∥2=∥a∥2, ∥B∥2=∥b∥2, and ∥FM−1z∥2=∥z∥2; the cyclic convolution identity is a∗Mb=M FM−1(A⊙B) (Finite Parseval and Plancherel identity for the unitary DFT, Finite Fourier inversion for the unitary transform on Z/NZ, The DFT turns cyclic convolution into a scaled pointwise product).

[F4]

Each pointwise complex product error is at most 3u∣A^k∣∣B^k∣ (Six-operation complex multiplication has a normwise roundoff bound).

[F5]

Put s=fl⁡(M). The model gives ∣s−M∣≤uM and each componentwise rounded product with s has error at most u∣szj∣. Thus the combined scale error is at most [u(1+u)+u]M∥z∥2=(2u+u2)M∥z∥2=ϵsM∥z∥2 on a successful normal-range result (Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, The standard relative floating-point model and unit roundoff).

Proof

1.1givenF1F2F3F4algebra

Write A^=A+dA and B^=B+dB. By [F1], ∥dA∥2≤ρ∥a∥2 and ∥dB∥2≤ρ∥b∥2, while [F3] gives ∥A∥2=∥a∥2 and ∥B∥2=∥b∥2. Expand A^⊙B^−A⊙B=dA⊙B+A⊙dB+dA⊙dB. Applying [F2] termwise bounds this transform perturbation by (2ρ+ρ2)∥a∥2∥b∥2. For the rounded products, [F4] gives coordinate errors ∣ep,k∣≤ϵp∣A^k∣∣B^k∣; squaring and using [F2] yields ∥ep∥2≤ϵp∥A^∥2∥B^∥2≤ϵp(1+ρ)2∥a∥2∥b∥2. Thus ∥p^−A⊙B∥2≤λ∥a∥2∥b∥2 and, by [F2], ∥p^∥2≤(1+λ)∥a∥2∥b∥2.

2.1step 1.1F1F3F6algebra

Let z=FM−1(A⊙B)=c/M and let z^ be the computed inverse result before final scaling. By Parseval [F3], ∥FM−1(p^−A⊙B)∥2=∥p^−A⊙B∥2; by the inverse part of [F1], ∥z^−FM−1p^∥2≤ρ∥p^∥2. Subadditivity [F6] and step 1.1 give ∥z^−z∥2≤[λ+ρ(1+λ)]∥a∥2∥b∥2. Also ∥z^∥2≤(1+ρ)∥p^∥2≤(1+ρ)(1+λ)∥a∥2∥b∥2.

3.1step 2.1F5F6algebra∎

The exact scaled target is Mz=c. By [F5], scaling z^ incurs at most ϵsM∥z^∥2 additional error. Subadditivity [F6] and step 2.1 therefore give ∥c^−c∥2≤M[λ+ρ(1+λ)+ϵs(1+ρ)(1+λ)]∥a∥2∥b∥2, as claimed. In linear mode, Zero padding embeds linear convolution in cyclic convolution without aliasing identifies the exact first n+m−1 cyclic entries with the linear convolution, and coordinate restriction cannot increase the Euclidean norm.

TheoremStatement: Literature-sourcedProof: AI-generatedOpen item page →

Bluestein chirp-phase error is bounded separately from FFT-convolution error

Statement

Let N≥2 be prime, M≥2N−1 a power of two, and K=2N−1. Use the Bluestein representation of Bluestein’s chirp identity embeds an arbitrary DFT in a padded cyclic convolution. Suppose every certified chirp phase has absolute error at most 0<τ≤1/4, u≤1/16, E≥0, the modulation and demodulation products succeed under the six-operation complex model, and the computed cyclic convolution satisfies ∥c^−a^∗Mb^∥2≤ME∥a^∥2∥b^∥2. Put δ=τ+3u(1+τ) and H=δ(2+δ)+E(1+δ)2. Then the computed unnormalised length-N DFT output X^ satisfies

∥X^−X∥2≤MK [δ+(1+δ)H] ∥x∥2.

The term δ records chirp enclosure and chirp multiplication roundoff; E records the separate FFT, pointwise-product, inverse, and cyclic-convolution scaling error. No mixed-radix stability claim is inferred.

Facts & Assumptions

Given: A prime N≥2, M≥2N−1 a power of two, x∈CN, a successful Bluestein computation, and the bounds τ,u,E in the Statement.

[F1]

The exact unnormalised DFT is Xk=γk(a∗Mb)k, where aj=αjxj, αj=e−πij2/N, b[t]M=βt=eπit2/N, and γk=e−πik2/N (Bluestein’s chirp identity embeds an arbitrary DFT in a padded cyclic convolution).

[F2]

The certified phase algorithm gives ∣α^j−αj∣≤τ, ∣β^t−βt∣≤τ, and ∣γ^k−γk∣≤τ; all exact chirp moduli equal 1 (Certified phase output encloses the exact unit-circle value, exp⁡(x+iy)=ex(cos⁡y+isin⁡y), ∣exp⁡(x+iy)∣=ex, and eiπ+1=0).

[F3]

A successful complex multiplication contributes at most 3u∣z∣∣w∣ absolute error (Six-operation complex multiplication has a normwise roundoff bound).

[F4]

For length-M vectors, ∥a∗Mb∥2≤M∥a∥2∥b∥2, and Parseval preserves norms under FM and its inverse (The DFT turns cyclic convolution into a scaled pointwise product, Finite Parseval and Plancherel identity for the unitary DFT, The counting inner product on CZ/NZ).

[F5]

The computed cyclic convolution satisfies ∥c^−a^∗Mb^∥2≤ME∥a^∥2∥b^∥2 (Computed FFT convolution error separates transform, product, inverse, and final-scale terms).

[F6]

For length-M vectors, ∥u⊙v∥2≤∥u∥2∥v∥2: after squaring, the product (∑k∣uk∣2)(∑k∣vk∣2) contains the terms ∣uk∣2∣vk∣2 and only additional nonnegative cross terms.

Proof

1.1givenF2F3algebra

Let a^j=fl⁡C(α^jxj) on 0≤j<N and zero elsewhere. By [F2]–[F3], ∣a^j−aj∣≤(τ+3u(1+τ))∣xj∣=δ∣xj∣, so ∥a^−a∥2≤δ∥x∥2 and ∥a^∥2≤(1+δ)∥x∥2. The vector b has exactly K unit-modulus entries; [F2] gives ∥b^−b∥2≤τK≤δK and ∥b^∥2≤(1+δ)K.

2.1F1F2F4F5F6F7step 1.1algebra

By bilinearity, a^∗Mb^−a∗Mb=(a^−a)∗Mb^+a∗M(b^−b). Applying the exact convolution formula [F4], Parseval, and the pointwise product bound [F6] gives ∥a^∗Mb^−a∗Mb∥2≤M(∥a^−a∥2∥b^∥2+∥a∥2∥b^−b∥2)≤MK δ(2+δ)∥x∥2 by step 1.1. The computed-convolution error [F5] is at most MKE(1+δ)2∥x∥2. Thus, with c=a∗Mb and c^ the computed convolution, ∥c^−c∥2≤MKH∥x∥2; [F4] and step 1.1 give ∥c∥2≤MK∥x∥2, so ∥c^∥2≤MK(1+H)∥x∥2 by [F7].

3.1F1F2F3F7step 2.1algebra∎

The output is the componentwise rounded product X^k=fl⁡C(γ^kc^k). By [F2]–[F3], ∣X^k−γkc^k∣≤δ∣c^k∣; since ∣γk∣=1, step 2.1 and subadditivity [F7] give ∥X^−X∥2≤δ∥c^∥2+∥c^−c∥2≤MK[δ(1+H)+H]∥x∥2=MK[δ+(1+δ)H]∥x∥2. This is the claimed separated chirp and convolution bound.

5 · Examples, counterexamples and false statements

None yet.

Sources