Polynomials and FFT
Polynomials and FFT
2n2
is a polynomial of degree bound 2n-1 where
C ( x) A( x) B( x)
j
e
j 0
j xj
Cj ak b j k which is known as convolution
k 0
n 1
A coefficient representation of a polynomial A( x) a j x j
j 0
• (ii) Adding two polynomials 𝐴(𝑥) and B(𝑥) also in θ (n) time
Evaluating Yk =A(xk) for k = 0, 1, 2,…, n-1 using Horner’s rule requiresΘ(n2) time.
• But clever selection or 𝑥𝑘 reduces this time Θ (n log n)
The inverse of evaluation, i.e., determining the coefficient form of a polynomial
from a point value representation is called interpolation.
An Example: 𝐴(𝑥) = 3𝑥 2 + 4𝑥 + 1
𝐵(𝑥) = 𝑥 2 + 2𝑥 + 5
(𝑥𝑖 , 𝐴(𝑥𝑖 )) = (0, 1), (1, 8), (2, 21)
(𝑥𝑖 , 𝐵(𝑥𝑖 )) = (0, 5), (1, 8), (2, 13)
Verify: Task ∴ (𝑥𝑖 , 𝐶(𝑥𝑖 )) = (0, 5), (1, 64)(2, 273)
The Ultimate Plan:
Here
Figure 30.2 shows that the n complex roots of unity are equally spaced around
the circle of unit radius cantered at the origin of the complex plane.
Proof:
The DFT:
Then
By the halving lemma, the list of values (30.10) consists not of n distinct
values but only of the n/2 complex (n/2)th roots of unity, with each root
occurring exactly twice.
Therefore, the FFT recursively evaluates the polynomials Aeven and Aodd of
degree-bound n/2 at the n/2 complex (n/2)th roots of unity.
These subproblems have exactly the same form as the original problem,
but are half the size, dividing an n-element DFTn computation into two n/2-
element DFTn/2 computations.
Recursive Algorithm:
Time Complexity: