Alphabeta Math
DefinitionDefinition: Literature-sourcedProof: Not applicablePipeline-generatedjudge pass (gpt-6.1-sol)
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.

The recursive radix-two fast Fourier transform

Definition

Let m∈N and N=2m. The radix-two fast Fourier transform FFT⁡m:CZ/N→CZ/N is defined by recursion on m as follows. At m=0 the group is Z/1Z and FFT⁡0:=idCZ/1. For m≥1, given f∈CZ/2m with even and odd parts e,o∈CZ/2m−1 (The radix-two even/odd factorisation of the DFT), and given E:=FFT⁡m−1(e) and O:=FFT⁡m−1(o), extend E and O from Z/2m−1Z to Z by 2m−1-periodicity and set

FFT⁡m(f)(k):=E(k)+e−2πik/2mO(k),k∈Z.

Then FFT⁡m(f)(k+2m)=FFT⁡m(f)(k) for every k∈Z, because E and O are 2m−1-periodic and e−2πi(k+2m)/2m=e−2πik/2me−2πi=e−2πik/2m (exp⁡(z+w)=exp⁡z exp⁡w, and the complex exponential extends the real exponential, ker⁡(exp⁡)=2πiZ, and exp⁡z=exp⁡w exactly when z−w∈2πiZ); hence FFT⁡m(f) factors through Z→Z/2mZ and FFT⁡m is a well-defined map CZ/2m→CZ/2m.

The recursion is legitimate. Put Fm:=CZ/2m for each m∈N, and use the tagged state set A:={(m,g):m∈N, g:Fm→Fm}. For a state (m,g)∈A and f∈Fm+1, let e,o∈Fm be the even and odd parts supplied by The radix-two even/odd factorisation of the DFT, and define g+(f)∈Fm+1 by g+(f)([k]2m+1):=g(e)([k]2m)+e−2πik/2m+1g(o)([k]2m) for k∈Z. This is well defined on [k]2m+1: replacing k by k+2m+1 leaves the recursive values unchanged modulo 2m and multiplies the twiddle by e−2πi=1 (exp⁡(z+w)=exp⁡z exp⁡w, and the complex exponential extends the real exponential, ker⁡(exp⁡)=2πiZ, and exp⁡z=exp⁡w exactly when z−w∈2πiZ). Thus g+ is a total map Fm+1→Fm+1, and T:A→A defined by T(m,g):=(m+1,g+) is a total step function. Starting from a:=(0,idF0), the recursion theorem The recursion theorem gives a unique H:N→A with H(0)=a and H(m+1)=T(H(m)). By induction (The principle of mathematical induction, The natural numbers N (von Neumann)) the first coordinate of H(m) is m; writing H(m)=(m,FFT⁡m) gives FFT⁡m:Fm→Fm and exactly the base and combine clauses above. Termination is immediate from recursion on m: each recursive call uses level m−1, and the base case m=0 returns the input. The exponent arithmetic uses 2m+1=2⋅2m and, for the rescaling below, 2−m/2=(2m)−1/2 (Laws of integer exponents, Rational powers ar of a positive base, Laws of rational exponents).

What the algorithm computes. Correctness is proved separately later on this page: FFT⁡m(f)(k)=Xk(f) for every input, where X is the unnormalised transform of The unnormalised engineering DFT and its conversion to the unitary transform; the unitary transform of this page is recovered from the output by the single rescaling 2−m/2 at length N=2m. The operation count is likewise the subject of a later item. At level m the recursion forms the even and odd parts of a length-2m list and performs one combine per output value, reading E and O at their classes and multiplying by the twiddle factors e−2πik/2m.

Remarks

  • The base case is a genuine case, not a convention. N contains 0 (The natural numbers N (von Neumann)), so FFT⁡0 is defined by the same recursion that defines all the other levels, and the length-one transform is the identity. Nothing in the definition excludes N=1, and the recursion is total on N.

  • The two conventions, once more. The recursion outputs the unnormalised transform: the definition of FFT⁡m contains no factor N−1/2, and the combine uses the twiddle factors e−2πik/2m with the same sign as X of The unnormalised engineering DFT and its conversion to the unitary transform. Dividing the output by 2m/2 yields the unitary transform, and no other rescaling is needed.

Depends on

Used by

Dependency tree · two levels

71 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.

Sources