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
- Absolute and Conditional Convergence; Rearrangement; Products
- Binary Operations, Monoids, Groups and Subgroups
- Compactness in Metric Spaces
- Completeness, Completion, and Uniform Continuity
- Congruences, the Integers Modulo n and the Chinese Remainder Theorem
- Construction of the Natural Numbers
- Construction of the Real Numbers via Cauchy Sequences
- Construction of the Real Numbers via Dedekind Cuts
- Continuity, IVT, EVT, and Uniform Continuity
- Cosets, Index and Lagrange's Theorem
- Countability and Uncountability
- Divisibility, Euclidean Domains, Principal Ideal Domains and Unique Factorisation
- Divisibility, Greatest Common Divisors and Bézout's Identity
- Dual Spaces, Bilinear and Quadratic Forms, and Sylvester's Law of Inertia
- Equivalent Forms of Completeness
- Filters and Ultrafilters
- Finite Counting, Factorials and Binomial Coefficients
- Finite Fourier Analysis and the Fast Fourier Transform
- Finite-precision direct factorizations and least squares
- Foundations of the Real Numbers for Analysis
- Fundamental Trigonometric Identities
- Further Trigonometric Identities and Inverse Functions
- Gaussian Elimination, Elementary Matrices and Reduced Row Echelon Form
- Hilbert Space Geometry and Riesz Representation
- Ideals, Quotient Rings and the Isomorphism Theorems for Rings
- Inner Product Spaces, Gram-Schmidt, Projections and Adjoints
- Limits of Real Functions
- limsup, liminf, and Subsequential Limits
- Linear Independence, Bases and Dimension
- Linear Transformations, Rank-Nullity and Quotient Spaces
- Matrices, the Matrix of a Linear Map, and Change of Basis
- Matrix Norms, Condition Numbers and Numerical Stability
- Measures and Their Basic Properties
- Metric Spaces
- Monotone Functions, Discontinuities, and Continuity Sets
- Monotone Sequences, Bolzano-Weierstrass, and Cauchy Completeness
- Normal Subgroups and Quotient Groups
- Order, Zorn's Lemma, and the Axiom of Choice
- Outward rounded interval and ball arithmetic
- Polynomial Rings, the Division Algorithm and Roots
- Power Series and Real-Analytic Functions
- Properties of the Integral and the Working FTC
- Relations, Functions, and Quotients
- Rings, Subrings, Integral Domains and Fields
- Rⁿ as a Normed Space; Vector-Valued Functions
- Roots, Rational Powers, and Classical Inequalities
- Sequences and Limits
- Sequences and Series of Functions; Uniform Convergence
- Series: Convergence and the Nonnegative Tests
- Simple Field Extensions and the Construction of the Complex Numbers
- Sine, Cosine, and the Definition of Pi
- Suprema and Infima
- The Complex Exponential and Euler's Formula
- The Derivative and the Mean Value Theorems
- The Exponential Function
- The Logarithm and General Powers
- The Riemann Integral: Definition and Integrability
- The ZFC Axioms and the Basic Set Constructions
- Topology of ℝ
- Vector Spaces, Linear Subspaces, Span and Direct Sums
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: ; the shorthand requires and 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 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
DCT-II and DST-I with fixed even and odd extension conventions
Definition
For and , the DCT-II is the vector with for . Its even extension is and for .
For and , the DST-I is the vector with for . Its odd extension has , , and for .
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.
Bluestein’s chirp identity embeds an arbitrary DFT in a padded cyclic convolution
Statement
Let , , and . Put for , for , and for . Embed for and otherwise in . Embed for and set its other entries to zero; this is well-defined because these integers have distinct classes modulo . Let be the unnormalised cyclic convolution on . Then, for ,
where . Moreover , where is coordinatewise multiplication. The identity is exact for every ; padding to a radix-two is an implementation choice, not a mathematical restriction.
Facts & Assumptions
Given: Integers , , a vector , and the definitions of , , and cyclic convolution.
The unnormalised DFT is and (The unnormalised engineering DFT and its conversion to the unitary transform, The unitary discrete Fourier transform on ).
Cyclic convolution is , and its unitary DFT satisfies (The unnormalised cyclic convolution on , The DFT turns cyclic convolution into a scaled pointwise product).
The unitary DFT on is invertible with inverse given by the positive-sign unitary DFT (Finite Fourier inversion for the unitary transform on ).
The map is injective on the integer interval when ; complex exponentials satisfy their addition law (The congruence class and the quotient set , For every natural , is an abelian group, multiplication is a commutative monoid operation, and both distributive laws hold, For , every class in has one representative with , so ; while is in bijection with , , and the complex exponential extends the real exponential, is a field, every element is uniquely , and every nonzero element has inverse ).
Positive rational powers satisfy for positive (Rational powers of a positive base, Laws of rational exponents).
Proof
If two integers in have the same class modulo , then divides . But ; the only multiple of in this range is zero, so . Thus the definition of assigns at most one value to each residue. For each and , the difference lies in , so the cyclic-convolution sum reduces exactly to .
For every such , , hence . Summing this identity against and using [F1] gives and therefore .
Applying [F2] to gives . Applying the positive-sign inverse in [F3] and pulling the scalar through its finite sum gives , as claimed.
Mixed-radix Cooley–Tukey factorization with fixed index maps
Statement
Let , , and . For define for . For set for . Then for and ,
Here every is the negative-sign unitary DFT with normalization from The unitary discrete Fourier transform on . Thus the inner transforms are the length- transforms of strided input subsequences; the twiddle multiplication is explicit; and the outer transforms are the length- transforms. No coprimality of and is assumed.
Facts & Assumptions
Given: Integers , , a vector , and indices and .
The unitary DFT is for (The unitary discrete Fourier transform on ).
Every integer with is uniquely with and ; every with is uniquely in the stated ranges (For every natural , is an abelian group, multiplication is a commutative monoid operation, and both distributive laws hold, For , every class in has one representative with , so ; while is in bijection with ).
Finite sums over these index sets can be reindexed by the bijections in [F2], split into finite sums, and reordered (A finite sum in a commutative monoid indexed by an arbitrary finite set, Finite commutative-monoid sums are invariant under bijective reindexing, split over disjoint unions, and satisfy the finite Fubini rule).
For complex exponentials, and exactly when , so for every integer ; positive rational powers obey their exponent laws (, and the complex exponential extends the real exponential, , and exactly when , is a field, every element is uniquely , and every nonzero element has inverse , Rational powers of a positive base, Laws of rational exponents).
Proof
By [F2], the pair with runs exactly once through the input indices, and with runs exactly once through the output indices. Therefore the definition [F1] gives .
Expanding the exponent gives . Since is an integer, its exponential factor is by [F4]. Also by [F4]. Regrouping the finite sums in [F3] now yields .
The inner sum in step 2.1 is by [F1]. The remaining coefficient and sum are exactly , again by [F1] and the definition of . This is the claimed identity.
Zero padding embeds linear convolution in cyclic convolution without aliasing
Statement
Let and be finite complex sequences, and let . Extend both sequences by zero to indices . For every , their length- cyclic convolution equals the ordinary linear convolution , with outside . For every remaining cyclic index , the cyclic convolution is zero. Thus the first cyclic-convolution outputs are exactly the full linear convolution, with no wraparound alias.
Facts & Assumptions
Given: Positive sequence lengths , an integer , and the zero-padded vectors .
The length- cyclic convolution is (The unnormalised cyclic convolution on ).
By the given zero extension, the supports of the padded vectors are contained in and , respectively. Each residue modulo has exactly one representative in (For , every class in has one representative with , so ; while is in bijection with ).
Proof
A nonzero summand in [F1] has and its second index is a residue in . If and , then and , so lies outside the support of and the summand is zero. If , then ; whenever the summand is again zero, and otherwise the cyclic representative equals the ordinary index . Therefore the nonzero terms of [F1] are exactly the linear-convolution terms.
Every index sum with satisfies . Hence no such sum wraps modulo . For , no supported pair has sum congruent to modulo : a sum is at most , and its difference from has magnitude less than for the output indices . Thus all cyclic terms vanish there. This proves the asserted zero tail and completes the claim.
Six-operation complex multiplication has a normwise roundoff bound
Statement
Let 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 . For , compute 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
Facts & Assumptions
Given: , , the operationwise model with unit roundoff , and success of all six real operations.
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 (Operationwise real and complex floating point arithmetic with rounded square roots and fused multiply-add, The standard relative floating-point model and unit roundoff).
and likewise for (Real and imaginary parts, complex conjugation, and modulus); Cauchy–Schwarz in gives and (Absolute value in an ordered field, Cauchy–Schwarz: , with equality exactly for linearly dependent vectors).
Proof
Write and . By [F1], and . Rounding their difference adds error at most . Therefore the real-part error is at most . The same calculation for the imaginary part gives .
Applying [F2] to both component sums shows that each component error is at most . The complex modulus of the two-component error is consequently at most . Since , , proving the stated bound.
DCT-II is orthogonal with the stated endpoint normalization and even extension
Statement
Let for . Then , so the inverse DCT-II is . For the even extension of DCT-II and DST-I with fixed even and odd extension conventions, the unitary DFT also satisfies for .
Facts & Assumptions
Given: An integer , a vector , the DCT-II matrix , and the even extension .
, , and the complex field laws hold (, , and , , and the complex exponential extends the real exponential, is a field, every element is uniquely , and every nonzero element has inverse ).
For real , (Product-to-sum and sum-to-product identities).
exactly when , and exactly when (, and exactly when , The zero sets of sine and cosine and the least positive common period 2 pi).
Rank–nullity holds for a linear map with finite-dimensional domain (Rank-nullity: ).
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 , trivial nullspace and unique solvability are equivalent).
Proof
For , put and . Since , [F5] gives ; the finite geometric identity with therefore gives the complex sum . If is even, its numerator is zero. If is odd, and by [F3]. Here , so [F5] also implies ; the quotient is purely imaginary. In either case its real part is zero, hence ; also .
Applying [F4] to each product gives . If , this is . If , then and , so it is . If , then and , so both sums vanish by step 1.1. Thus .
Let . Since and is invertible, satisfies . Hence every has a preimage under , so the linear map defined by is surjective. Its rank is , and [F6] gives nullity zero; therefore it is bijective and [F7] makes invertible. The identity then gives , whose entry yields the stated inverse formula.
For each , the two terms of the DFT of at positions and are and , since . Their sum is by [F3]. Summing over and applying the normalization in [F2] gives .
DST-I is orthogonal with the stated endpoint normalization and odd extension
Statement
Let for . Then , so the inverse DST-I is . For the odd extension of DCT-II and DST-I with fixed even and odd extension conventions, for .
Facts & Assumptions
Given: An integer , a vector , the DST-I matrix , and the odd extension .
Euler's identity, the complex exponential addition law, and field laws hold (, , and , , and the complex exponential extends the real exponential, is a field, every element is uniquely , and every nonzero element has inverse ).
For real , (Product-to-sum and sum-to-product identities).
exactly when (, and exactly when ).
Proof
For , let . Put . Since , [F5] gives ; also , so the geometric sum over is zero. Pair the terms with indices and for ; they are conjugates, while the unpaired terms are and . Taking real parts gives . Hence for even and for odd ; also define .
Applying [F4] to each product gives . If , then the first term is and the second is , giving . If , then and have the same parity and both are between and ; their values from step 1.1 agree, giving zero. Therefore .
Since is symmetric and , step 2.1 gives , proving the inverse formula. For the odd extension, pair its positions and : their DFT terms are by [F3]. Summing and applying [F2] gives the claimed DFT relation.
DCT-II samples extract Chebyshev coefficients at first-kind roots
Statement
Let be a polynomial of degree less than , where is the Chebyshev polynomial of the first kind, and sample for . If is the DCT-II of , then and for .
Facts & Assumptions
Given: , coefficients , Chebyshev polynomials , and the DCT-II convention of DCT-II and DST-I with fixed even and odd extension conventions.
for every integer , by the recurrence definition together with the addition formulas (Chebyshev polynomials of the first and second kinds by their three-term recurrences, and for every ).
The DCT-II matrix is , and its row-orthogonality factor is (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
Put . By [F1], , so in vector form .
The DCT output is . By [F2], is diagonal with entries at index zero and at positive indices. Thus and for . Dividing by these positive constants gives the claimed coefficients.
The interval evaluator's arctangent definition uses the canonical Fourier pi
Statement
The value 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 and , and the published principal inverse tangent.
The interval-evaluator definition sets and (Real elementary functions and their domains).
The principal arctangent equals the same integral for every real input; for it equals its alternating power series, and the endpoint alternating series has sum (Principal arctangent: derivative, integral, power series, and the Gregory–Leibniz series).
If an ordinary real series converges to , its power series tends to as its argument increases to (Abel's limit theorem: if a real series converges to , then its power series tends to as ).
A function differentiable at a limit point is continuous there (A function differentiable at is continuous at ).
The canonical Fourier constant is the positive constant where is the smallest positive zero of cosine (Pi as twice the smallest positive zero of cosine).
For the integral-defined arctangent and , (Trigonometric identities, Machin's formula and reduced Taylor tails, Proof step 3.1).
Proof
By [F1] and the integral identity in [F2], the interval-evaluator arctangent and the principal arctangent have the same value at .
Let . The endpoint statement in [F2] says ; [F3] gives . Multiplication by and the interior power-series identity in [F2] show , where [F5] fixes this as the canonical Fourier constant.
The principal arctangent is differentiable at by [F2], hence continuous there by [F4]. Therefore step 1.2 gives . Step 1.1 and [F1] now give , proving that the interval evaluator and the Fourier formulas use the same constant. Finally [F6] identifies with , so its Machin enclosure contains this canonical .
Certified dyadic enclosures for unit-circle phases
Definition
Input an exact rational , an exact rational target , integer dyadic exponent limits , an initial precision , a finite precision cap , and a finite elementary-series cap . The target value is by , , and , 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 , and , form the exact rational interval , where
The Machin identity gives the interval containing . Form the exact rational interval 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 . 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 and , and call Certified range evaluation for elementary real and complex functions using the same dyadic format and truncation index ; 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 and , set and compute an upward-rounded dyadic . 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.
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 . Input with , whose real and imaginary coordinates all belong to , a direction forward or inverse, an exact rational twiddle tolerance , integer exponent limits for the dyadic phase format, an initial phase precision , a finite precision cap , a finite elementary-series cap , and a maximum radix-two recursion depth . At precision , phase endpoints use the dyadic format with precision and exponent limits . Output a vector in 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 , require its real and imaginary coordinates to belong to ; 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 return . For , if return inconclusive with the subdivision-cap-exhausted status. Otherwise split into even and odd subsequences and recursively compute their unitary transforms by calling this routine with the same phase parameters and depth cap . For each , call Certified dyadic enclosures for unit-circle phases on with , obtaining approximating . Compute the six-real-operation complex product , componentwise rounded sums and , and . Set output entries and to the componentwise rounded real scalings and , respectively. For direction inverse, conjugate the input, run the forward routine with the same phase parameters and , 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.
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 , its output satisfies .
Facts & Assumptions
Given: Rational , target , finite precision and evaluation budgets, and a successful output certified(\widehat w,\epsilon).
On a finite return, the real interval contains and contains , and Euler's identity identifies their pair with ; the interval and Fourier definitions use the same (Certified real elementary-function evaluations enclose their ranges, Real intervals, complex rectangles and ball enclosures, , , and , The interval evaluator's arctangent definition uses the canonical Fourier pi).
The returned lower endpoints are the lower endpoints of , and is an upward-rounded dyadic at least ; directed interval arithmetic encloses these exact widths (Certified dyadic enclosures for unit-circle phases, Outward-rounded operations are inclusion-isotone and enclose DAG evaluations).
For real , by the complex modulus triangle inequality (Conjugation is an involutive real-field automorphism, , and modulus is definite, multiplicative, and subadditive).
Proof
By [F1], the real coordinate of lies in and its imaginary coordinate lies in . Since by [F2], the coordinate differences satisfy and .
Applying [F3] to these two coordinate differences gives . The algorithm returns only when , proving the claim.
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 . Input two finite complex sequences whose real and imaginary coordinates all belong to , a mode cyclic or linear, and phase/FFT controls: an exact rational twiddle tolerance , integer dyadic exponent limits , an initial phase precision , a finite precision cap , a finite elementary-series cap , and a maximum radix-two recursion depth . At precision , phase endpoints use the dyadic format with precision and exponent limits . In cyclic mode the inputs must have the same length with integer ; the requested exact operation is cyclic convolution on . In linear mode, with lengths , set , choose the least power of two , and append zeros to both inputs to length ; the requested output is the first 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- input with direction forward and the same controls. Multiply corresponding transform entries as 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 using componentwise rounded real scaling. Return the length- cyclic result, or its first 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.
A computed unitary radix-two butterfly has error at most (10u + εtw) times its input norm
Statement
Let , let , and let . For , perform the successful butterfly of Computed unitary radix-two FFT with certified twiddle phases using . If each exact nonzero real intermediate is normal and every operation succeeds under the operationwise model, then its computed pair satisfies
Facts & Assumptions
Given: with the stated bounds, and a successful rounded butterfly.
For a pair , (The counting inner product on ).
Six-operation complex multiplication obeys when its six operations succeed (Six-operation complex multiplication has a normwise roundoff bound).
Each real rounded addition, multiplication, or positive in-range square root has relative error at most ; 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).
The complex modulus is subadditive; Cauchy–Schwarz bounds the Euclidean norm of two coordinatewise error bounds (Conjugation is an involutive real-field automorphism, , and modulus is definite, multiplicative, and subadditive, Cauchy–Schwarz: , with equality exactly for linearly dependent vectors).
Proof
Let . By [F1] and [F2], . Thus .
For , [F3] gives by [F4]. If and , then correct rounding gives . The componentwise rounded scaling therefore satisfies , and .
Combining steps 1.1–1.2 and using , the two-output error norm is at most , where . Since , this is at most .
By [F4], , so ; [F5] identifies the square-root factor as . Also . Adding the bounds proves the claim.
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 . Input , whose real and imaginary coordinates all belong to , an exact rational phase tolerance , integer dyadic exponent limits , an initial phase precision , a finite precision cap , a finite elementary-series cap , and a maximum radix-two recursion depth . At precision , phase endpoints use the dyadic format with precision and exponent limits . 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 ; 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 (The unnormalised engineering DFT and its conversion to the unitary transform); the procedure returns an approximate vector or the first inconclusive/range-failure status.
- For , return .
- If with , call Computed unitary radix-two FFT with certified twiddle phases in
forwardmode with controls and multiply each output by the computed scalar . A failed subcall or scale operation returns its status. - If is composite and not a power of two, find its least divisor with by trial division and put . For , recursively call this procedure with the same controls on the strided vector to obtain an approximate unnormalised length- DFT . For each and , call Certified dyadic enclosures for unit-circle phases on with to obtain the twiddle enclosure, then multiply its returned phase by using . For each , apply this procedure recursively, with the same controls, to the length- vector of these products indexed by , and for every store its output at index . Propagate any failed phase or arithmetic status.
- If is prime, set to the least power of two with . For each , call Certified dyadic enclosures for unit-circle phases on with to obtain , and set ; set the remaining entries of to zero. For each , obtain by the same call with and set , setting other entries of to zero. Compute the cyclic convolution with Computed FFT cyclic convolution and zero-padded linear convolution in
cyclicmode using controls . For each , obtain by the same phase call with and set . Return the first 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.
Computed unitary radix-two FFT has the multiplicative stage error bound
Statement
Let , , and suppose a successful execution of Computed unitary radix-two FFT with certified twiddle phases has no range failures. If every twiddle certificate satisfies and , put . Then
The conjugated inverse routine has the same bound. If , the right side is at most . Thus an shorthand requires both and small; the theorem makes no such shorthand when twiddle errors are uncontrolled.
Facts & Assumptions
Given: , , a successful execution, , and for every twiddle certificate.
For , split into even and odd subsequences ; the unnormalised DFT obeys and , while (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 ). The recursive FFT computes exactly (The recursive radix-two fast Fourier transform, Correctness of the recursive radix-two FFT).
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).
The unitary DFT preserves the squared Euclidean norm; in particular the exact transforms of the even and odd subsequences have squared norms summing to (Finite Parseval and Plancherel identity for the unitary DFT).
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, , and modulus is definite, multiplicative, and subadditive, Finite Fourier inversion for the unitary transform on ).
The real exponential is its power series (Real elementary functions and their domains).
For , (The counting inner product on ).
Every exact twiddle has , and for (, , and , Rational powers of a positive base, Laws of rational exponents).
Proof
For , and the algorithm returns the input exactly, so the error is . For , [F1] gives the exact unnormalised top outputs and , with . The child unitary outputs are and ; dividing the parent unnormalised outputs by gives exactly . By [F7], and the scaling identity holds, so the columns of have squared norm and inner product ; hence preserves the pair norm.
Suppose the recursive transform of length has error bound . By [F3] and [F6], stacking the exact even and odd transforms has norm ; stacking their computed errors has norm at most , since the even and odd input coordinates partition . Hence the stacked computed suboutputs have norm at most . For each , [F2] bounds the top butterfly error by times the norm of its computed input pair. Squaring these bounds and summing over shows that the total top-stage error norm is at most . The prior subtransform errors contribute at most through the direct sum of exact norm-preserving blocks in step 1.1. Therefore the total error is at most . Induction proves the forward bound for every .
By [F4], the inverse implementation is conjugation before and after the forward routine and conjugation preserves every coordinate modulus. Applying step 2.1 to gives the same error norm for the inverse direction.
If , then by the power series [F5], so . For , ; at , . Thus . If , this is , with the smallness condition already imposed.
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 , 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 and , the formal model returns the unnormalised DFT . 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 is the least power of two at least in a Bluestein prime branch, that branch costs ; for , the full arbitrary-length recursion costs , while takes constant work.
Facts & Assumptions
Given: , , and the formal exact-constant model defined in the Statement, with exact arithmetic instructions.
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 , composites use the fixed mixed-radix schedule, and primes use a length- chirp convolution (Arbitrary-length mixed-radix and Bluestein DFT, The unnormalised engineering DFT and its conversion to the unitary transform).
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.
The radix-two arithmetic count is at most for power-of-two length , with twiddle generation excluded (The radix-two FFT uses complex arithmetic operations).
In exact arithmetic, the cyclic convolution algorithm takes two unitary DFTs, pointwise multiplication, the inverse unitary DFT, and the scale; the published DFT convolution identity and inversion theorem identify this with (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 , The unnormalised cyclic convolution on ).
For , the exact radix-two recursion computes (Correctness of the recursive radix-two FFT, The unitary discrete Fourier transform on , The unnormalised engineering DFT and its conversion to the unitary transform).
For every positive , by the two transform normalizations; for positive integers (The unitary discrete Fourier transform on , The unnormalised engineering DFT and its conversion to the unitary transform, Rational powers of a positive base, Laws of rational exponents).
The natural logarithm is strictly increasing, satisfies for positive , and ; since , strict increase and give , so is strictly increasing. Repeated application of the product law gives and 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).
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
We prove correctness by strong induction on , justified by [F8]. At , step 1 of the formal model returns , the one-term unnormalised DFT. If is a power of two, its radix-two branch calls the exact unitary transform and scales by ; [F5] identifies that result with the unnormalised DFT.
For the induction step, assume the formal model returns the unnormalised DFT for every positive length smaller than .
For a power-of-two size , [F3] gives ; the output normalization uses one square root and component scalings, which preserve this order. In a Bluestein branch, the least power of two satisfies , and three radix-two transforms plus pointwise products/scalings cost . Since for , this is for a prime input .
If is composite and not a power of two, the least-divisor branch splits with . The hypothesis in step 1.2 makes the recursive unnormalised length- and length- transforms exact. By [F6], the length- output on each strided vector is , and a length- unnormalised transform is times the unitary length- DFT. The fixed strided inputs, exact phase factors, and output indexing are those in [F2], so the algorithm combines the recursive outputs as . This is the unnormalised mixed-radix formula; hence every output is exact.
If is prime, [F2] gives for the exact cyclic convolution in the Bluestein branch. The formal model computes exactly by [F4]. Multiplying the unitary output identity by gives , which is exactly the unnormalised output of the branch. The base, power-of-two, composite and prime cases exhaust all positive .
At a composite non-power-of-two node , the algorithm's actual call schedule invokes transforms of size and transforms of size , plus at most arithmetic operations for a fixed . Thus , so the normalized count satisfies . 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 multiply to because each split replaces by factors with . Every terminal size is at least , so and [F7] gives . A full binary tree with leaves has internal nodes: a leaf has zero internal nodes, while a root with subtrees having leaves has internal nodes, by induction on height [F8]. The product law in [F7] gives . By steps 1.1 and 1.3, each terminal size , whether prime or a power of two, contributes to , with one uniform constant. Summing the terminal contributions and the at most contribution at each internal node yields and hence . The comparison tree bounds the normalized recurrence; it is not the algorithm's actual call tree.
Computed FFT convolution error separates transform, product, inverse, and final-scale terms
Statement
Let with integer and let be the arrays actually transformed by Computed FFT cyclic convolution and zero-padded linear convolution (zero-padded in linear mode). Assume all operations succeed, , the twiddle certificates satisfy , and put , , , , and . If is the exact unnormalised cyclic convolution, then the computed length- result satisfies
In linear mode, the same right side bounds the error of the first 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- input arrays, unitary transforms and , , and the constants in the Statement.
The transform and inverse-transform errors satisfy , , and (Computed unitary radix-two FFT has the multiplicative stage error bound, Finite Fourier inversion for the unitary transform on ).
For vectors , , since (The counting inner product on , Real and imaginary parts, complex conjugation, and modulus).
Finite Parseval gives , , and ; the cyclic convolution identity is (Finite Parseval and Plancherel identity for the unitary DFT, Finite Fourier inversion for the unitary transform on , The DFT turns cyclic convolution into a scaled pointwise product).
Each pointwise complex product error is at most (Six-operation complex multiplication has a normwise roundoff bound).
Put . The model gives and each componentwise rounded product with has error at most . Thus the combined scale error is at most 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).
The Euclidean norm on is subadditive, by expansion of its square and Cauchy–Schwarz (The counting inner product on , Cauchy–Schwarz: , with equality exactly for linearly dependent vectors).
Proof
Write and . By [F1], and , while [F3] gives and . Expand . Applying [F2] termwise bounds this transform perturbation by . For the rounded products, [F4] gives coordinate errors ; squaring and using [F2] yields . Thus and, by [F2], .
Let and let be the computed inverse result before final scaling. By Parseval [F3], ; by the inverse part of [F1], . Subadditivity [F6] and step 1.1 give . Also .
The exact scaled target is . By [F5], scaling incurs at most additional error. Subadditivity [F6] and step 2.1 therefore give , as claimed. In linear mode, Zero padding embeds linear convolution in cyclic convolution without aliasing identifies the exact first cyclic entries with the linear convolution, and coordinate restriction cannot increase the Euclidean norm.
Bluestein chirp-phase error is bounded separately from FFT-convolution error
Statement
Let be prime, a power of two, and . 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 , , , the modulation and demodulation products succeed under the six-operation complex model, and the computed cyclic convolution satisfies . Put and . Then the computed unnormalised length- DFT output satisfies
The term records chirp enclosure and chirp multiplication roundoff; records the separate FFT, pointwise-product, inverse, and cyclic-convolution scaling error. No mixed-radix stability claim is inferred.
Facts & Assumptions
Given: A prime , a power of two, , a successful Bluestein computation, and the bounds in the Statement.
The exact unnormalised DFT is , where , , , and (Bluestein’s chirp identity embeds an arbitrary DFT in a padded cyclic convolution).
The certified phase algorithm gives , , and ; all exact chirp moduli equal (Certified phase output encloses the exact unit-circle value, , , and ).
A successful complex multiplication contributes at most absolute error (Six-operation complex multiplication has a normwise roundoff bound).
For length- vectors, , and Parseval preserves norms under 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 ).
The computed cyclic convolution satisfies (Computed FFT convolution error separates transform, product, inverse, and final-scale terms).
For length- vectors, : after squaring, the product contains the terms and only additional nonnegative cross terms.
The Euclidean norm on is subadditive (Cauchy–Schwarz: , with equality exactly for linearly dependent vectors, The counting inner product on ).
Proof
Let on and zero elsewhere. By [F2]–[F3], , so and . The vector has exactly unit-modulus entries; [F2] gives and .
By bilinearity, . Applying the exact convolution formula [F4], Parseval, and the pointwise product bound [F6] gives by step 1.1. The computed-convolution error [F5] is at most . Thus, with and the computed convolution, ; [F4] and step 1.1 give , so by [F7].
The output is the componentwise rounded product . By [F2]–[F3], ; since , step 2.1 and subadditivity [F7] give . This is the claimed separated chirp and convolution bound.
5 · Examples, counterexamples and false statements
None yet.
Sources
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 8 §8.3.2 and Chapter 12 §12.1
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 5 §5.2, equations (5.15)–(5.17)
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 11 §11.2, equations (11.1)–(11.2)
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 13 §13.1
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, Problem 24.1
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, pp. 452–454
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 11 §11.7
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 8 §8.3.2
- NIST Digital Library of Mathematical Functions, §4.23 Inverse Trigonometric Functions
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, pp. 451–454
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 13 §§13.1 and 13.2
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, Theorem 24.2, pp. 453–454
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 5 §5.2, Chapter 9 §9.2, and Chapter 11 §11.2
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, Theorems 24.1–24.2, pp. 452–454
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, §24.1
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24 and Problem 24.1, pp. 453–457
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., Chapter 24, pp. 452–457
- C. Sidney Burrus, Fast Fourier Transforms, Chapter 5 §5.2