This is the end of the preview.
Sign up
to
access the rest of the document.

Unformatted text preview: Notes on Fast Fourier Transform Algorithms & Data Structures 2004 (updated 2007) Dr Mary Cryan 1 Introduction The Discrete Fourier Transform (DFT) is a way of representing functions in terms of a point-value representation (a very specific point-value representation). We consider complex functions of a single variable throughout these notes, though often the function we are really interested in may actually be a real function of a single variable (and we just find it useful to evaluate the function at complex values as well as real values). Suppose that we consider a polynomial p ( x ) = a + a 1 x + ...a n- 1 x n- 1 over the field of complex numbers C . We refer to the description of p ( x ) given in the last sentence as its coefficient form . However, suppose we took n different complex numbers x ,...,x n- 1 and then computed y j , for every j = 0,...,n- 1 as follows: y j = p ( x j ) = n- 1 summationdisplay i = a i ( x j ) i = a + a 1 ( x j ) + a 2 ( x j ) 2 + ... + a n- 1 ( x j ) n- 1 The resulting set of input-output pairs < ( x ,y ) , ( x 1 ,y 1 ) ,..., ( x n- 1 ,y n- 1 ) > is called a point-value representation of the polynomial p . It is interesting to ask the question- how much information does a point-value representation convey about the underlying poly- nomial p ? In fact we will see in Subsection 2.2 that the answer is EVERYTHING, if we have evaluated the polynomial at n different x j points. In this set of lecture notes we focus on the point-value representation obtained by looking at a particular set of points, the n th roots of unity . In the field of complex numbers C , there are exactly n different solutions to the equation x n = 1 . We call these solutions the n-th roots of unity . One of these roots of unity is ω n = cos ( 2π/n )+ i sin ( 2π/n ) , and this is called the principal n th root of unity . It is not too difficult to show that ω n generates the entire set of n th roots of unity as follows, for any n : 1,ω n ,ω 2 n ,ω 3 n ,...,ω n- 1 n . The complex numbers in the list above are all n th roots of unity, and they are all different (see Lemma 1 later for a proof). The Discrete Fourier Transform (DFT) of a polynomial p ( x ) of degree AT MOST n- 1 is defined to be the point-value representation obtained by evaluating p ( x ) at each of the n-th roots of unity. We may write the DFT as the list of values p ( 1 ) ,p ( ω ) ,p ( ω 2 ) ,...,p ( ω n- 1 ) , where ω n is any primitive n th root of unity . A primitive n th root of unity is any n th root of unity ω such that 1,ω,ω 2 ,...,ω n- 1 are all different. It is not difficult to show that ω is a primitive n th root of unity if ω = ω k n , for some value of k which is relatively prime to n ( n and k have no common factors). In practice, we adopt the convention that we work with the principal n th root of unity ω n , unless we state otherwise. It is possible to write the operation of computing the DFT 1 Notes on Fast Fourier Transform ADS 2004, updated 2007 as a matrix multiplication. The DFT is the vectoras a matrix multiplication....
View
Full Document