90
p.1/33 Fast Fourier Transform Key Papers in Computer Science Seminar 2005 Dima Batenkov Weizmann Institute of Science [email protected]

Fast Fourier Transform - Faculty of Mathematics & Computer Science

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.1/33

Fast Fourier Transform

Key Papers in Computer ScienceSeminar 2005

Dima BatenkovWeizmann Institute of Science

[email protected]

Page 2: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

p.2/33

Fast Fourier Transform - Overview

J. W. Cooley and J. W. Tukey. An algorithm for the machinecalculation of complex Fourier series. Mathematics ofComputation, 19:297–301, 1965

A fast algorithm for computing the Discrete FourierTransform

(Re)discovered by Cooley & Tukey in 19651 and widelyadopted thereafter

Has a long and fascinating history

Page 3: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

p.2/33

Fast Fourier Transform - Overview

J. W. Cooley and J. W. Tukey. An algorithm for the machinecalculation of complex Fourier series. Mathematics ofComputation, 19:297–301, 1965 A fast algorithm for computing the Discrete Fourier

Transform

(Re)discovered by Cooley & Tukey in 19651 and widelyadopted thereafter

Has a long and fascinating history

Page 4: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

p.2/33

Fast Fourier Transform - Overview

J. W. Cooley and J. W. Tukey. An algorithm for the machinecalculation of complex Fourier series. Mathematics ofComputation, 19:297–301, 1965 A fast algorithm for computing the Discrete Fourier

Transform (Re)discovered by Cooley & Tukey in 19651 and widely

adopted thereafter

Has a long and fascinating history

Page 5: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

p.2/33

Fast Fourier Transform - Overview

J. W. Cooley and J. W. Tukey. An algorithm for the machinecalculation of complex Fourier series. Mathematics ofComputation, 19:297–301, 1965 A fast algorithm for computing the Discrete Fourier

Transform (Re)discovered by Cooley & Tukey in 19651 and widely

adopted thereafter Has a long and fascinating history

Page 6: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.3/33

Fourier Analysis

Page 7: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.4/33

Fourier Series

Expresses a (real) periodic function x(t) as a sum oftrigonometric series (−L < t < L)

x(t) =12

a0 +∞

∑n=1

(an cosπnL

t + bn sinπnL

t)

Coefficients can be computed by

an =1L

∫ L

−Lx(t) cos

πnL

t dt

bn =1L

∫ L

−Lx(t) sin

πnL

t dt

Page 8: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.4/33

Fourier Series

Generalized to complex-valued functions as

x(t) =∞

∑n=−∞

cnei πnL t

cn =1

2L

∫ L

−Lx(t)e−i πn

L t dt

Page 9: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.4/33

Fourier Series

Generalized to complex-valued functions as

x(t) =∞

∑n=−∞

cnei πnL t

cn =1

2L

∫ L

−Lx(t)e−i πn

L t dt

Studied by D.Bernoulli and L.Euler Used by Fourier to solve the heat equation

Page 10: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.4/33

Fourier Series

Generalized to complex-valued functions as

x(t) =∞

∑n=−∞

cnei πnL t

cn =1

2L

∫ L

−Lx(t)e−i πn

L t dt

Studied by D.Bernoulli and L.Euler Used by Fourier to solve the heat equation Converges for almost all “nice” functions (piecewise smooth,

L2 etc.)

Page 11: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.5/33

Continuous Fourier Transform

Generalization of Fourier Series for infinite domains

x(t) =∫ ∞

−∞F ( f )e−2πi f t d f

F ( f ) =∫ ∞

−∞x(t)e2πi f t dt

Can represent continuous, aperiodic signals Continuous frequency spectrum

Page 12: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.6/33

Discrete Fourier Transform

If the signal X(k) is periodic, band-limited and sampled atNyquist frequency or higher, the DFT represents the CFTexactly14

A(r) =N−1

∑k=0

X(k)WrkN

where WN = e−2πiN and r = 0, 1, . . . , N − 1

The inverse transform:

X(j) =1N

N−1

∑k=0

A(k)W−jkN

Page 13: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.7/33

Useful properties6

Orthogonality of basis functions

N−1

∑k=0

Wr′kN Wrk

N = NδN(r− r′)

Linearity (Cyclic) Convolution theorem

(x ∗ y)n =N−1

∑k=0

x(k)y(n− k)

⇒ F(x ∗ y) = FXFY

Symmetries: real↔ hermitian symmetric, imaginary↔hermitian antisymmetric

Shifting theorems

Page 14: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Fourier Analysis

» Fourier Series

» Continuous Fourier Transform

» Discrete Fourier Transform

» Useful properties 6

» Applications

p.8/33

Applications

Approximation by trigonometric polynomials Data compression (MP3...)

Spectral analysis of signals Frequency response of systems Partial Differential Equations Convolution via frequency domain

Cross-correlation Multiplication of large integers Symbolic multiplication of polynomials

Page 15: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Methods known by 1965

» Available methods

» Goertzel’s algorithm 7

p.9/33

Methods known by 1965

Page 16: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Methods known by 1965

» Available methods

» Goertzel’s algorithm 7

p.10/33

Available methods

In many applications, large digitized datasets are becomingavailable, but cannot be processed due to prohibitiverunning time of DFT

All (publicly known) methods for efficient computation utilizethe symmetry of trigonometric functions, but still are O(N2)

Goertzel’s method7 is fastest known

Page 17: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Methods known by 1965

» Available methods

» Goertzel’s algorithm 7

p.11/33

Goertzel’s algorithm7

Given a particular 0 < j < N − 1, we want to evaluate

A(j) =N−1

∑k=0

x(k) cos(

2πjN

k)

B(j) =N−1

∑k=0

x(k) sin(

2πjN

k)

Page 18: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Methods known by 1965

» Available methods

» Goertzel’s algorithm 7

p.11/33

Goertzel’s algorithm7

Given a particular 0 < j < N − 1, we want to evaluate

A(j) =N−1

∑k=0

x(k) cos(

2πjN

k)

B(j) =N−1

∑k=0

x(k) sin(

2πjN

k)

Recursively compute the sequence u(s)N+1s=0

u(s) = x(s) + 2 cos(

2πjN

)u(s + 1)− u(s + 2)

u(N) = u(N + 1) = 0

Page 19: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Methods known by 1965

» Available methods

» Goertzel’s algorithm 7

p.11/33

Goertzel’s algorithm7

Given a particular 0 < j < N − 1, we want to evaluate

A(j) =N−1

∑k=0

x(k) cos(

2πjN

k)

B(j) =N−1

∑k=0

x(k) sin(

2πjN

k)

Recursively compute the sequence u(s)N+1s=0

u(s) = x(s) + 2 cos(

2πjN

)u(s + 1)− u(s + 2)

u(N) = u(N + 1) = 0

Then

B(j) = u(1) sin(

2πjN

)

A(j) = x(0) + cos(

2πjN

)u(1)− u(2)

Page 20: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Methods known by 1965

» Available methods

» Goertzel’s algorithm 7

p.11/33

Goertzel’s algorithm7

Requires N multiplications and only one sine and cosine Roundoff errors grow rapidly5

Excellent for computing a very small number of coefficients(< log N)

Can be implemented using only 2 intermediate storagelocations and processing input signal as it arrives

Used today for Dual-Tone Multi-Frequency detection (tonedialing)

Page 21: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.12/33

Inspiration for the FFT

Page 22: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.13/33

Factorial experiments

Purpose: investigate the effect of n factors on some measuredquantity Each factor can have t distinct levels. For our discussion let

t = 2, so there are 2 levels: “+” and “−”. So we conduct tn experiments (for every possible

combination of the n factors) and calculate: Main effect of a factor: what is the average change in the

output as the factor goes from “−” to “+”? Interaction effects between two or more factors: what is

the difference in output between the case when bothfactors are present compared to when only one of themis present?

Page 23: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.13/33

Factorial experiments

Example of t = 2, n = 3 experiment Say we have factors A, B, C which can be “high” or “low”. For

example, they can represent levels of 3 different drugs givento patients

Perform 23 measurements of some quantity, say bloodpressure

Investigate how each one of the drugs and their combinationaffect the blood pressure

Page 24: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.13/33

Factorial experiments

Exp. Combination A B C Blood pressure

1 (1) − − − x1

2 a + − − x2

3 b − + − x3

4 ab + + − x4

5 c − − + x5

6 ac + − + x6

7 bc − + + x7

8 abc + + + x8

Page 25: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.13/33

Factorial experiments

The main effect of A is(ab− b) + (a− (1)) + (abc− bc) + (ac− c)

The interaction of A, B is(ab− b)− (a− (1))− ((abc− bc)− (ac− c))

etc.

Page 26: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.13/33

Factorial experiments

The main effect of A is(ab− b) + (a− (1)) + (abc− bc) + (ac− c)

The interaction of A, B is(ab− b)− (a− (1))− ((abc− bc)− (ac− c))

etc.If the main effects and interactions are arranged in vector y,then we can write y = Ax where

A =

1 1 1 1 1 1 1 11 −1 −1 1 1 −1 −1 11 1 −1 −1 1 1 −1 −11 −1 −1 1 −1 1 −1 11 1 1 1 −1 −1 −1 −11 −1 1 −1 −1 1 −1 11 1 −1 −1 −1 −1 1 11 −1 −1 1 −1 1 1 −1

Page 27: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.13/33

Factorial experiments

F.Yates devised15 an iterative n-step algorithm whichsimplifies the calculation. Equivalent to decomposingA = Bn, where (for our case of n = 3):

B =

1 1 0 0 0 0 0 00 0 1 1 0 0 0 00 0 0 0 1 1 0 00 0 0 0 0 0 1 1−1 −1 0 0 0 0 0 00 0 −1 −1 0 0 0 00 0 0 0 −1 −1 0 00 0 0 0 0 0 −1 −1

so that much less operations are required

Page 28: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

I. J. Good. The interaction algorithm and practical Fourieranalysis. Journal Roy. Stat. Soc., 20:361–372, 1958 Essentially develops a “prime-factor” FFT The idea is inspired by Yates’ efficient algorithm, but Good

proves general theorems which can be applied to the task ofefficiently multiplying a N-vector by certain N × N matrices

The work remains unnoticed until Cooley-Tukey publication Good meets Tukey in 1956 and tells him briefly about his

method It is revealed later4 that the FFT had not been discovered

much earlier by a coincedence

Page 29: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

Definition 1 Let M(i) be t× t matrices, i = 1 . . . n. Then thedirect product

M(1) ×M(2) × · · · ×M(n)

is a tn × tn matrix C whose elements are

Cr,s =n

∏i=1

M(i)ri ,si

where r = (r1, . . . , rn) and s = (s1, . . . sn) are the base-trepresentation of the index

Page 30: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

Definition 1 Let M(i) be t× t matrices, i = 1 . . . n. Then thedirect product

M(1) ×M(2) × · · · ×M(n)

is a tn × tn matrix C whose elements are

Cr,s =n

∏i=1

M(i)ri ,si

where r = (r1, . . . , rn) and s = (s1, . . . sn) are the base-trepresentation of the indexTheorem 1 For every M, M[n] = An where

Ar,s = Mr1,sn δs1r2 δs2

r3 . . . δsn−1rn

Interpretation: A has at most tn+1 nonzero elements. So if, fora given B we can find M such that M[n] = B, then we cancompute Bx = Anx in O(ntn) instead of O(t2n).

Page 31: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

Good’s observations For 2n factorial experiment:

M =

(1 11 −1

)

Page 32: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

Good’s observations n-dimensional DFT, size N in each dimension

A(s1, . . . , sn) =(N−1,...,N−1)

∑(r1,...,rn)

x(r)Wr1s1N × · · · ×Wrnsn

N

can be represented as

A = Ω[n]x, Ω = WrsN r, s = 0, . . . , N − 1

By the theorem, A = Ψnx where Ψ is sparse

Page 33: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

Good’s observations n-dimensional DFT, size N in each dimension

A(s1, . . . , sn) =(N−1,...,N−1)

∑(r1,...,rn)

x(r)Wr1s1N × · · · ×Wrnsn

N

can be represented as

A = Ω[n]x, Ω = WrsN r, s = 0, . . . , N − 1

By the theorem, A = Ψnx where Ψ is sparse n-dimensional DFT, Ni in each dimension

A = (Ω(1) × · · · ×Ω(n))x = Φ(1)Φ(2) . . . Φ(n)x

Ω(i) = WrsNi

Φ(i) = IN1 × · · · ×Ω(i) × · · · × INn

Page 34: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

If N = N1N2 and (N1, N2) = 1 then N-point 1-D DFT can berepresented as 2-D DFT

r = N2r1 + N1r2

(Chinese Remainder Thm.)s = N2s1(N−12 ) mod N1 + N1s2(N−1

1 ) mod N2

⇒ s ≡ s1 mod N1, s ≡ s2 mod N2

These are index mappings s↔ (s1, s2) and r ↔ (r1, r2)

A(s) = A(s1, s2) =N

∑r=0

x(r)WrsN =

N1−1

∑r1=0

N2−1

∑r2=0

x(r1, r2)WrsN1N2

(substitute r, s from above) =N1−1

∑r1=0

N2−1

∑r2=0

x(r1, r2)Wr1s1N1

Wr2s2N2

This is exactly 2-D DFT seen above!

Page 35: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.14/33

Good’s paper9

So, as above, we can write

A = Ωx

= P(Ω(1) ×Ω(2))Q−1x

= PΦ(1)Φ(2)Q−1x

where P and Q are permutation matrices. This results inN(N1 + N2) multiplications instead of N2.

Page 36: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Inspiration for the FFT

» Factorial experiments

» Good’s paper 9

» Good’s results - summary

p.15/33

Good’s results - summary

n-dimensionanal, size Ni in each dimension(

∑n

Ni

)(∏

nNi

)instead of

(∏

nNi

)2

1-D, size N = ∏n Ni where Ni ’s are mutually prime(

∑n

Ni

)N instead of N2

Still thinks that other “tricks” such as using the symmetriesand sines and cosines of known angles might be moreuseful

Page 37: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.16/33

The article

Page 38: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.17/33

James W.Cooley (1926-)

1949 - B.A. in Mathematics(Manhattan College, NY)

1951 - M.A. in Mathematics(Columbia University)

1961 - Ph.D in Applied Math-ematics (Columbia Univer-sity)

1962 - Joins IBM Watson Research Center The FFT is considered his most significant contribution to

mathematics Member of IEEE Digital Signal Processing Committee Awarded IEEE fellowship on his works on FFT Contributed much to establishing the terminology of DSP

Page 39: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.18/33

John Wilder Tukey (1915-2000)

1936 - Bachelor in Chem-istry (Brown University)

1937 - Master in Chemistry(Brown University)

1939 - PhD in Mathemat-ics (Princeton) for “Denu-merability in Topology”

During WWII joins Fire Control Research Office andcontributes to war effort (mainly invlolving statistics)

From 1945 also works with Shannon and Hamming in AT&TBell Labs

Besides co-authoring the FFT in 1965, has several majorcontributions to statistics

Page 40: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.19/33

The story - meeting

Richard Garwin (Columbia University IBM Watson Researchcenter) meets John Tukey (professor of mathematics inPrinceton) at Kennedy’s Scientific Advisory Committee in1963

Tukey shows how a Fourier series of length N whenN = ab is composite can be expressed as a-point seriesof b-point subseries, thereby reducing the number ofcomputations from N2 to N(a + b)

Notes that if N is a power of two, the algorithm can berepeated, giving N log2 N operations

Garwin, being aware of applications in various fields thatwould greatly benefit from an efficient algorithm for DFT,realizes the importance of this and from now on,“pushes” the FFT at every opportunity

Page 41: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.19/33

The story - meeting

Richard Garwin (Columbia University IBM Watson Researchcenter) meets John Tukey (professor of mathematics inPrinceton) at Kennedy’s Scientific Advisory Committee in1963 Tukey shows how a Fourier series of length N when

N = ab is composite can be expressed as a-point seriesof b-point subseries, thereby reducing the number ofcomputations from N2 to N(a + b)

Notes that if N is a power of two, the algorithm can berepeated, giving N log2 N operations

Garwin, being aware of applications in various fields thatwould greatly benefit from an efficient algorithm for DFT,realizes the importance of this and from now on,“pushes” the FFT at every opportunity

Page 42: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.19/33

The story - meeting

Richard Garwin (Columbia University IBM Watson Researchcenter) meets John Tukey (professor of mathematics inPrinceton) at Kennedy’s Scientific Advisory Committee in1963 Tukey shows how a Fourier series of length N when

N = ab is composite can be expressed as a-point seriesof b-point subseries, thereby reducing the number ofcomputations from N2 to N(a + b)

Notes that if N is a power of two, the algorithm can berepeated, giving N log2 N operations

Garwin, being aware of applications in various fields thatwould greatly benefit from an efficient algorithm for DFT,realizes the importance of this and from now on,“pushes” the FFT at every opportunity

Page 43: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.19/33

The story - meeting

Richard Garwin (Columbia University IBM Watson Researchcenter) meets John Tukey (professor of mathematics inPrinceton) at Kennedy’s Scientific Advisory Committee in1963 Tukey shows how a Fourier series of length N when

N = ab is composite can be expressed as a-point seriesof b-point subseries, thereby reducing the number ofcomputations from N2 to N(a + b)

Notes that if N is a power of two, the algorithm can berepeated, giving N log2 N operations

Garwin, being aware of applications in various fields thatwould greatly benefit from an efficient algorithm for DFT,realizes the importance of this and from now on,“pushes” the FFT at every opportunity

Page 44: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians It is decided that the algorithm should be put in the public

domain to prevent patenting Cooley writes the draft, Tukey adds some references to

Good’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 45: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians It is decided that the algorithm should be put in the public

domain to prevent patenting Cooley writes the draft, Tukey adds some references to

Good’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 46: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians It is decided that the algorithm should be put in the public

domain to prevent patenting Cooley writes the draft, Tukey adds some references to

Good’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 47: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians

It is decided that the algorithm should be put in the publicdomain to prevent patenting

Cooley writes the draft, Tukey adds some references toGood’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 48: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians It is decided that the algorithm should be put in the public

domain to prevent patenting

Cooley writes the draft, Tukey adds some references toGood’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 49: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians It is decided that the algorithm should be put in the public

domain to prevent patenting Cooley writes the draft, Tukey adds some references to

Good’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 50: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.20/33

The story - publication

Garwin goes to Jim Cooley (IBM Watson Research Center)with the notes from conversation with Tukey and asks toimplement the algorithm

Says that he needs the FFT for computing the 3-D Fouriertransform of spin orientations of He3. It is revealed later thatwhat Garwin really wanted was to be able to detect nuclearexposions from seismic data

Cooley finally writes a 3-D in-place FFT and sends it toGarwin

The FFT is exposed to a number of mathematicians It is decided that the algorithm should be put in the public

domain to prevent patenting Cooley writes the draft, Tukey adds some references to

Good’s article and the paper is submitted to Mathematics ofComputation in August 1964

Published in April 1965

Page 51: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.21/33

What if...

Good reveals in 19934 that Garwin visited him in 1957, but: “Garwin told me with great enthusiasm about his

experimental work... Unfortunately, not wanting to changethe subject..., I didn’t mention my FFT work at that dinner,although I had intended to do so. He wrote me on February9, 1976 and said: “Had we talked about it in 1957, I couldhave stolen [publicized] it from you instead of from JohnTukey...”... That would have completely changed the historyof the FFT”

Page 52: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2

Page 53: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2 Convert the 1-D indices into 2-D

j = j0 + j1N1 j0 = 0, . . . , N1 − 1 j1 = 0, . . . , N2 − 1

k = k0 + k1N2 k0 = 0, . . . , N2 − 1 k1 = 0, . . . , N1 − 1

Page 54: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2 Convert the 1-D indices into 2-D

j = j0 + j1N1 j0 = 0, . . . , N1 − 1 j1 = 0, . . . , N2 − 1

k = k0 + k1N2 k0 = 0, . . . , N2 − 1 k1 = 0, . . . , N1 − 1

“Decimate” the original sequence into N2 N1-subsequences:

Page 55: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2 Convert the 1-D indices into 2-D

j = j0 + j1N1 j0 = 0, . . . , N1 − 1 j1 = 0, . . . , N2 − 1

k = k0 + k1N2 k0 = 0, . . . , N2 − 1 k1 = 0, . . . , N1 − 1

“Decimate” the original sequence into N2 N1-subsequences:

A(j1, j0) =N−1

∑k=0

X(k)WjkN

Page 56: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2 Convert the 1-D indices into 2-D

j = j0 + j1N1 j0 = 0, . . . , N1 − 1 j1 = 0, . . . , N2 − 1

k = k0 + k1N2 k0 = 0, . . . , N2 − 1 k1 = 0, . . . , N1 − 1

“Decimate” the original sequence into N2 N1-subsequences:

A(j1, j0) =N−1

∑k=0

X(k)WjkN

=N2−1

∑k0=0

N1−1

∑k1=0

X(k1, k0)W(j0+j1N1)(k0+k1N2)N1 N2

Page 57: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2 Convert the 1-D indices into 2-D

j = j0 + j1N1 j0 = 0, . . . , N1 − 1 j1 = 0, . . . , N2 − 1

k = k0 + k1N2 k0 = 0, . . . , N2 − 1 k1 = 0, . . . , N1 − 1

“Decimate” the original sequence into N2 N1-subsequences:

A(j1, j0) =N−1

∑k=0

X(k)WjkN

=N2−1

∑k0=0

N1−1

∑k1=0

X(k1, k0)W(j0+j1N1)(k0+k1N2)N1 N2

=N2−1

∑k0=0

Wj0k0N Wj1k0

N2

N1−1

∑k1=0

X(k1, k0)Wj0k1N1

Page 58: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

A(j) = ∑N−1k=0 X(k)Wjk

N N = N1N2 Convert the 1-D indices into 2-D

j = j0 + j1N1 j0 = 0, . . . , N1 − 1 j1 = 0, . . . , N2 − 1

k = k0 + k1N2 k0 = 0, . . . , N2 − 1 k1 = 0, . . . , N1 − 1

“Decimate” the original sequence into N2 N1-subsequences:

A(j1, j0) =N−1

∑k=0

X(k)WjkN

=N2−1

∑k0=0

N1−1

∑k1=0

X(k1, k0)W(j0+j1N1)(k0+k1N2)N1 N2

=N2−1

∑k0=0

Wj0k0N Wj1k0

N2

N1−1

∑k1=0

X(k1, k0)Wj0k1N1

=N2−1

∑k0=0

Wj0k0N Xj0(k0)Wj1k0

N2

Page 59: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

The sequences Xj0 have N elements and require NN1 operations tocompute

Given these, the array A requires NN2 operations to compute Overall N(N1 + N2)

In general, if N = ∏ni=0 Ni then N (∑n

i=0 Ni) operations overall.

Page 60: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

If N1 = N2 = · · · = Nn = 2 (i.e. N = 2n):

j = jn−12n−1 + · · ·+ j0, k = kn−12n−1 + · · ·+ k0

A(jn−1, . . . , j0) =1

∑k0=0· · ·

1

∑kn−1=0

X(kn−1, . . . , k0)WjkN

= ∑k0

Wjk0N ∑

k1

Wjk1×2N · · · ∑

kn−1

Wjkn−1×2n−1

N X(kn−1, . . . , k0)

⇒ Xj0 (kn−2, . . . , k0) = ∑kn−1

X(kn−1, . . . , k0)Wj0kn−12

Xj1,j0 (kn−3, . . . , k0) = ∑kn−2

Wj0kn−24 Xj0 (kn−2, . . . , k0)Wj1kn−2

2

Xjm−1,...,j0 (kn−m−1, . . . , k0) = ∑kn−m

W(j0+···+jm−2×2m−2)kn−m2m Xjm−2,...,j0 (kn−m, . . . , k0)×

×Wjm−1kn−m2

Page 61: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.22/33

Cooley-Tukey FFT

Finally, A(jn−1, . . . , j0) = Xjn−1,...,j0 Two important properties:

In-place: only two terms are involved in the calculation of everyintermediate pair Xjm−1,...,j0(. . . ) jm−1 = 0, 1:• Xjm−2,...,j0(0, . . . )• Xjm−2,...,j0(1, . . . )

So the values can be overwritten and no more additional storage beused

Bit-reversal• It is convenient to store Xjm−1,...,j0(kn−m−1, . . . , k0) at index

j02n−1 + · · ·+ jm−12n−m + kn−m−12m−n−1 + · · ·+ k0• The result must be reversed

Cooley & Tukey didn’t realize that the algorithm in fact builds largeDFT’s from smaller ones with some multiplications along the way.

The terms W(j0+···+jm−2×2m−2)kn−m2m are later called6 “twiddle factors”.

Page 62: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.23/33

FFT properties

Roundoff error significantly reduced compared to definingformula6

A lower bound of 12 n log2 n operations over C for linear

algorithms is proved12, so FFT is in a sense optimal Two “canonical” FFTs

Decimation-in-Time: the Cooley & Tukey version.Equivalent to taking N1 = N/2, N2 = 2. Then Xj0(0)

are the DFT coefficients of even-numbered samples andXj0 (1) - those of odd-numbered. The final coefficients aresimply linear combination of the two.

Decimation-in-Frequency (Tukey-Sande6):N1 = 2, N2 = N/2. Then Y(∗) = X0(∗) is the sum ofeven-numbered and odd-numbered samples, andZ(∗) = X1(∗) is the difference. The even Fouriercoefficients are the DFT of Y, and the odd-numbered -“weighted” DFT of Z.

Page 63: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.24/33

DIT signal flow

Page 64: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.24/33

DIT signal flow

Page 65: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.24/33

DIT signal flow

Page 66: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.25/33

DIF signal flow

Page 67: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.25/33

DIF signal flow

Page 68: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

The article

» James W.Cooley (1926-)» John Wilder Tukey(1915-2000)

» The story - meeting

» The story - publication

» What if...

» Cooley-Tukey FFT

» FFT properties

» DIT signal flow

» DIF signal flow

p.25/33

DIF signal flow

Page 69: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Newly discovered history of FFT» What happened after thepublication

» Danielson-Lanczos

» Gauss

p.26/33

Newly discovered history of FFT

Page 70: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Newly discovered history of FFT» What happened after thepublication

» Danielson-Lanczos

» Gauss

p.27/33

What happened after the publication

Rudnick’s note13 mentions Danielson-Lanczos paper from19423. “Although ... less elegant and is phrased wholly interms of real quantities, it yields the same results as thebinary form of the Cooley-Tukey algorithm with a comparablenumber of arithmetical operations”.

“Historical Notes on FFT”2

Also mentions Danielson-Lanczos Thomas and Prime Factor algorithm (Good) - quite

distinct from Cooley-Tukey FFT A later investigation10 revealed that Gauss essentially

discovered the Cooley-Tukey FFT in 1805(!)

Page 71: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

G. C. Danielson and C. Lanczos. Some improvements in practicalFourier analysis and their application to X-ray scattering from liquids. J.Franklin Institute, 233:365–380 and 435–452, 1942

Page 72: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

G. C. Danielson and C. Lanczos. Some improvements in practicalFourier analysis and their application to X-ray scattering from liquids. J.Franklin Institute, 233:365–380 and 435–452, 1942

“... the available standard forms become impractical for a large numberof coefficients. We shall show that, by a certain transformation process,it is possible to double the number of ordinates with only slightly morethan double the labor”

Page 73: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

G. C. Danielson and C. Lanczos. Some improvements in practicalFourier analysis and their application to X-ray scattering from liquids. J.Franklin Institute, 233:365–380 and 435–452, 1942

“... the available standard forms become impractical for a large numberof coefficients. We shall show that, by a certain transformation process,it is possible to double the number of ordinates with only slightly morethan double the labor”

Concerned with improving efficiency of hand calculation

Page 74: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

G. C. Danielson and C. Lanczos. Some improvements in practicalFourier analysis and their application to X-ray scattering from liquids. J.Franklin Institute, 233:365–380 and 435–452, 1942

“... the available standard forms become impractical for a large numberof coefficients. We shall show that, by a certain transformation process,it is possible to double the number of ordinates with only slightly morethan double the labor”

Concerned with improving efficiency of hand calculation “We shall now describe a method which eliminates the necessity of

complicated schemes by reducing ... analysis for 4n coefficients to twoanalyses for 2n coefficients”

Page 75: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

G. C. Danielson and C. Lanczos. Some improvements in practicalFourier analysis and their application to X-ray scattering from liquids. J.Franklin Institute, 233:365–380 and 435–452, 1942

“... the available standard forms become impractical for a large numberof coefficients. We shall show that, by a certain transformation process,it is possible to double the number of ordinates with only slightly morethan double the labor”

Concerned with improving efficiency of hand calculation “We shall now describe a method which eliminates the necessity of

complicated schemes by reducing ... analysis for 4n coefficients to twoanalyses for 2n coefficients”

“If desired, this reduction process can be applied twice or three times”(???!!)

“Adoping these improvements the approximate times... are: 10 minutesfor 8 coefficients, 25 min. for 16, 60 min. for 32 and 140 min. for 64”(≈ 0.37N log2 N)

Page 76: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

Take the DIT Cooley-Tukey with N1 = N/2, N2 = 2. Recall

A(j0 +N2

j1) =N/2−1

∑k1=0

X(2k1)Wj0k1N/2 + Wj0+ N

2 j1N

N/2−1

∑k1=0

X(2k1 + 1)Wj0k1N/2

Page 77: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

Take the DIT Cooley-Tukey with N1 = N/2, N2 = 2. Recall

A(j0 +N2

j1) =N/2−1

∑k1=0

X(2k1)Wj0k1N/2 + Wj0+ N

2 j1N

N/2−1

∑k1=0

X(2k1 + 1)Wj0k1N/2

Danielson-Lanczos showed completely analogous result, under theframework of real trigonometric series: “...the contribution of the even ordinates to a Fourier analysis of 4n

coefficients is exactly the same as the contribution of all theordinates to a Fourier analysis of 2n coefficients

“..contribution of the odd ordinates is also reducible to the samescheme... by means of a transformation process introducing aphase difference”

“...we see that, apart from the weight factors 2 cos(π/4n)k and2 sin(π/4n)k, the calculation is identical to the cosine analysis ofhalf the number of ordinates”

Page 78: Fast Fourier Transform - Faculty of Mathematics & Computer Science

p.28/33

Danielson-Lanczos

Take the DIT Cooley-Tukey with N1 = N/2, N2 = 2. Recall

A(j0 +N2

j1) =N/2−1

∑k1=0

X(2k1)Wj0k1N/2 + Wj0+ N

2 j1N

N/2−1

∑k1=0

X(2k1 + 1)Wj0k1N/2

Danielson-Lanczos showed completely analogous result, under theframework of real trigonometric series: “...the contribution of the even ordinates to a Fourier analysis of 4n

coefficients is exactly the same as the contribution of all theordinates to a Fourier analysis of 2n coefficients

“..contribution of the odd ordinates is also reducible to the samescheme... by means of a transformation process introducing aphase difference”

“...we see that, apart from the weight factors 2 cos(π/4n)k and2 sin(π/4n)k, the calculation is identical to the cosine analysis ofhalf the number of ordinates”

These “weight factors” are exactly the “twiddle factors” W jN above

Page 79: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Newly discovered history of FFT» What happened after thepublication

» Danielson-Lanczos

» Gauss

p.29/33

Gauss

Herman H. Goldstine writes in a footnote of “A History ofNumerical Analysis from the 16th through the 19th Century”(1977)8:

“This fascinating work of Gauss was neglected andrediscovered by Cooley and Tukey in an importantpaper in 1965”

This goes largely unnoticed until the research by Heideman,Johnson and Burrus10 in 1985 Essentially develops an DIF FFT for two factors and real

sequences. Gives examples for N = 12, 36. Declares that it can be generalized to more than 2

factors, although no examples are given Uses the algorithm for solving the problem of determining

orbit parameters of asteroids The treatise was published posthumously (1866). By

then other numerical methods were preferred to DFT, sonobody found this interesting enough...

Page 80: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.30/33

Impact

Page 81: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.31/33

Impact

Certainly a “classic” Two special issues of IEEE trans. on Audio and

Electroacoustics devoted entirely to FFT11

Arden House Workshop on FFT11

Brought together people of very diverse specialities “someday radio tuners will operate with digital processing

units. I have heard this suggested with tongue in cheek,but one can speculate.” - J.W.Cooley

Many people “discovered” the DFT via the FFT

Page 82: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.32/33

Further developments

Real-FFT (DCT...) Parallel FFT FFT for prime N ...

Page 83: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough Communication between mathematicians, numerical

analysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute Do not publish papers in neo-classic Latin

Page 84: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough

Communication between mathematicians, numericalanalysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute Do not publish papers in neo-classic Latin

Page 85: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough Communication between mathematicians, numerical

analysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute Do not publish papers in neo-classic Latin

Page 86: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough Communication between mathematicians, numerical

analysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute Do not publish papers in neo-classic Latin

Page 87: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough Communication between mathematicians, numerical

analysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute Do not publish papers in neo-classic Latin

Page 88: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough Communication between mathematicians, numerical

analysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute

Do not publish papers in neo-classic Latin

Page 89: Fast Fourier Transform - Faculty of Mathematics & Computer Science

» Fast Fourier Transform -Overview

Impact

» Impact

» Further developments

» Concluding thoughts

p.33/33

Concluding thoughts

It is obvious that prompt recognition and publication ofsignificant achievments is an important goal

However, the publication in itself may not be enough Communication between mathematicians, numerical

analysts and workers in a very wide range of applicationscan be very fruitful

Always seek new analytical methods and not rely solely onincrease in processing speed

Careful attention to a review of old literature may offer somerewards

Do not publish papers in Journal of Franklin Institute Do not publish papers in neo-classic Latin

Page 90: Fast Fourier Transform - Faculty of Mathematics & Computer Science

References1. J. W. Cooley and J. W. Tukey. An algorithm for the machine calculation of complex Fourier series.

Mathematics of Computation, 19:297–301, 1965.

2. J. W. Cooley, P. A. Lewis, and P. D. Welch. History of the fast Fourier transform. In Proc. IEEE,volume 55, pages 1675–1677, October 1967.

3. G. C. Danielson and C. Lanczos. Some improvements in practical Fourier analysis and their appli-cation to X-ray scattering from liquids. J. Franklin Institute, 233:365–380 and 435–452, 1942.

4. D.L.Banks. A conversation with I. J. Good. Statistical Science, 11(1):1–19, 1996.

5. W. M. Gentleman. An error analysis of Goertzel’s (Watt’s) method for computing Fourier coeffi-cients. Comput. J., 12:160–165, 1969.

6. W. M. Gentleman and G. Sande. Fast Fourier transforms—for fun and profit. In Fall Joint ComputerConference, volume 29 of AFIPS Conference Proceedings, pages 563–578. Spartan Books, Washington,D.C., 1966.

7. G. Goertzel. An algorithm for the evaluation of finite trigonometric series. The American Mathe-matical Monthly, 65(1):34–35, January 1958.

8. Herman H. Goldstine. A History of Numerical Analysis from the 16th through the 19th Century.Springer-Verlag, New York, 1977. ISBN 0-387-90277-5.

9. I. J. Good. The interaction algorithm and practical Fourier analysis. Journal Roy. Stat. Soc., 20:361–372, 1958.

10. M. T. Heideman, D. H. Johnson, and C. S. Burrus. Gauss and the history of the Fast FourierTransform. Archive for History of Exact Sciences, 34:265–267, 1985.

11. IEEE. Special issue on fast Fourier transform. IEEE Trans. on Audio and Electroacoustics, AU-17:65–186, 1969.

12. Morgenstern. Note on a lower bound of the linear complexity of the fast Fourier transform. JACM:Journal of the ACM, 20, 1973.

13. Philip Rudnick. Note on the calculation of Fourier series (in Technical Notes and Short Papers).j-MATH-COMPUT, 20(95):429–430, July 1966. ISSN 0025-5718.

14. C. E. Shannon. Communication in the presence of noise. Proceedings of the IRE, 37:10–21, January1949.

15. F. Yates. The design and analysis of factorial experiments, volume 35 of Impr. Bur. Soil Sci. Tech. Comm.1937.

33-1