Polynomials and the FFT
Preliminaries:
is a polynomial over field .
(Examples
=
(reals),
(complex), G F (2) (bits))
n is the degree-bound a0, a1, ...,an-1 are
the coefficients.
A (x) is said to have degree k if ak is the last non zero
coefficient, i.e. aj = 0 for j > k. A polynomial with
degree-bound n can have a degree k, 0 £ k £
n - 1. A polynomial with degree k ahs degree-bound n for all n >
k.
Sums:
Consider A (x) and B (x), two polynomials for degree-bound n.
C (x) is the sum of A (x) and B (x), it has degree-bound n, and C (x) =
A (x) + B (x) for all x Î .
We can write:
where cj = aj + bj
Products:
C (x) is the product of A (x) and B (x) if C (x) = A (x) B (x)
for all x Î
and is of degree-bound Zn - 1. Multiplication is "school
book" style:
A (x) = 3x3 + 2x + 1
B (x) = 4x2 + 3x - 1
3x3 +
2x + 1
4x2 + x - 1
-3x3 +
- 2x - 1
9x4 +
6x2 + 3x
12x5 +
8x3 + 4x2
12x5 + 9x4 + 5x3 + 10x2 +
x - 1
cj a convolution
degree (C) = degree (A) + degree (B)
degree-bound (C) = d - b (A) + d - b (B) - 1
£ d - b (A) + d - b (B) - 1
We will study fast, recursive, algorithms to compute polynomial products
using the discrete Fourier transform ( DFT ) and the fast Fourier transform
( FFT ).
|