Numerical analysis Fourier and transform methods Theorem
Rader's FFT algorithm
Builds on Discrete Fourier transformPrimitive root modulo nConvolutionCooley–Tukey FFT algorithm
Statement
Let be a prime, let , and let be a primitive root modulo . For an integer write and for the residues in of these powers modulo . Let and let be its discrete Fourier transform, . Define sequences of period by and . Then , and for , So a DFT of prime length reduces to a cyclic convolution of length and further additions.
Remarks
Since generates the multiplicative group modulo , the maps and are bijections from onto . For and one has , and depends only on modulo ; this gives the formula. The cyclic convolution of length can be computed by DFTs of length , which is composite for . These can use the Cooley–Tukey algorithm, possibly after zero padding to a power of . Example: and , so and . The hypothesis that is prime gives a primitive root, and makes the nonzero indices a group under multiplication. For composite lengths the nonzero indices do not form such a group.
Going deeper
For a student
The algorithm uses the structure of , which is cyclic of order . Permuting inputs by and outputs by turns the block of the DFT matrix into a circulant matrix. Circulant matrices are diagonalised by the DFT, which is why the convolution can be done in operations. Winograd's short-length FFT modules are built on the same reduction. Bluestein's algorithm is an alternative that works for every length and does not need a primitive root.
Reading path
To understand this page from the ground up, read these 7 pages in order. The foundations come first.
Show the path as a graph
- no evidence level
- Big O notation concept
- Convolution concept
- Discrete Fourier transform concept
- Primitive root modulo n concept
- Primitive root of unity concept
- Cooley–Tukey FFT algorithm statement
- Rader's FFT algorithm statement
Where this leads
2 pages build on this one.
Further reading
About this page
| Tag | 9HYM2ZMS31 |
|---|---|
| URI | m2://9HYM2ZMS31 |
| Kind | statement, theorem |
| Writing | W0 stub |
| MSC | 65T50, 11Y16 |
| Status | This copy of the site has no build data. Run m2 status 9HYM2ZMS31. |
| About | Discrete Fourier transform |
| Uses | Discrete Fourier transform, Primitive root modulo n, Convolution, Cooley–Tukey FFT algorithm |
| Same as |
Markdown · JSON · Edit on GitHub
What this page needs for W1
- an inventory row: the row of the inventory that the node accounts for (0 of 1)
- a source with a locator (0 of 1)
The writing levels say how complete the text of a page is. They do not measure its truth.