Lecture 4: FFTs, Convolutions and Multiplying Polynomials

August 29th, 2007

The content of this lecture is drawn from multiple sources, and so I’m providing a handout here.

WARNING: this is a nontrivial example of divide-and-conquer and may require thought-like substances.

Update: The recursive method of splitting a polynomial into even and odd parts works for any set of evaluation points. So why do we need to use the complex roots of unity ? The answer is in the Halving Lemma. It allows us to reduce the number of evaluations needed by half at each recursive step. If this were not the case, we’d be evaluating the same number of points at each recursive level, and if we solve the resulting recurrence, we obtain an algorithm that needs $latex n^2$ time to run. I’ve added a small section explaining this at the end of Section 4.4.3 in the notes.

3 Responses to “Lecture 4: FFTs, Convolutions and Multiplying Polynomials”

  1. Jimmy Says:

    In class, we didn’t get chance to go through a example of polynomial multiplication using FFT. Could you post one?

  2. admin Says:

    I’ll work one out: it’s long and painful :).

  3. admin Says:

    Actually I changed my mind. I’ll give one such question as an assignment, with two relatively simple polynomials.

Leave a Reply