Top Banner
Polynomial and FFT
30

Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Dec 16, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Polynomial and FFT

Page 2: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion

Page 3: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Problem

Page 4: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Representation of Polynomials

Definition 2 For the polynomial (1), we have two ways of representing it:

Page 5: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Coefficient Representation—— (秦九韶算法)Horner’s rule

The coefficient representation is convenient for certain operations on polynomials. For example, the operation of evaluating the polynomial A(x) at a given point x0

Page 6: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Coefficient Representation—— adding and multiplication

Page 7: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Point-value Representation By Horner’s rule, it takes Θ(n2) time to

get a point-value representation of polynomial

(1). If we choose xk cleverly, the complexity reduces to n log n.

Definition 3 The inverse of evaluation. The process of determining the coefficient form of a polynomial from a point value representation is called interpolation.Does the interpolation uniquely determinea polynomial? If not, the concept ofinterpolation is meaningless.

Page 8: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Uniqueness of Interpolation

Page 9: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.
Page 10: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Lagrange Formula

We can compute the coefficients of A(x) by (4) in time Θ(n2).

Page 11: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

拉格朗日[ Lagrange, Joseph Louis , 1736-

1813

● 法国数学家。

● 涉猎力学,著有分析力学。

● 百年以来数学界仍受其理论影响。

Page 12: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Virtues of point value representation

Page 13: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Fast multiplication of polynomials in coefficient form

Can we use the linear-time multiplication method for polynomials in point-value form to expedite polynomial multiplication in coefficient form?

Page 14: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Basic idea of multiplication

Page 15: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Basic idea of multiplication If we choose “complex roots of unity”

as the evaluation points carefully, we can produce a point-value representation by taking the Discrete Fourier Transform of a coefficient vector. The inverse operation interpolation, can be performed by taking the inverse DFT of point value pairs.

Page 16: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Complex Roots of Unity

Page 17: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Additive Group

Page 18: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Properties of Complex Roots

Page 19: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Fourier Transform

Now consider generalization to the case of a discrete function :

Page 20: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Discrete Fourier Transform

Page 21: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Idea of Fast Fourier Transform

Page 22: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Recursive FFT

Page 23: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Complexity of FFT

Property 4 By divide-and-conquer method, the timecost of FFT is T(n) = 2T(n/2)+Θ(n) =Θ(n log n).

Page 24: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Interpolation

Page 25: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Proof

Page 26: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

DFTn vs DFT-1n

Page 27: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Efficient FFT Implementation

Page 28: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Butterfly Operation

Page 29: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

Iterative-FFTITERATIVE-FFT (a)1 BIT-REVERSE-COPY (a, A)2 n ← length[a] // n is a power of 2.3 for s ← 1 to lg n4 do m ← 2s

5 ωm ← e2πi/m

6 for k ← 0 to n - 1 by m7 do ω ← 18 for j ← 0 to m/2 - 19 do t ← ωA[k + j + m/2]10 u ← A[k + j]11 A[k + j] ← u + t12 A[k + j + m/2] ← u - t13 ω ← ω ωm

Page 30: Polynomial and FFT. Topics 1. Problem 2. Representation of polynomials 3. The DFT and FFT 4. Efficient FFT implementations 5. Conclusion.

conclusion

Fourier analysis is not limited to 1-dimensional data. It is widely used in image processing to analyze data in 2 or more dimensions.

Cooley and Tukey are widely credited with devising the FFT in the 1960’s.