Illinois State University - Fall 2021
English 254, Chapter 1 Exam
Professor Buster, Section 7
May 20, 2021
In contrast, The cyclotomic fast Fourier transform is a type of fast Fourier transform
algorithm over finite fields. This algorithm first decomposes a DFT into several circular
convolutions, and then derives the DFT results from the circular convolution results.
Class Date: 14/12/2024
Professor’s Comment: Expand on key concepts in the next section.
GENERIC CONTENT:
## Discussion
When applied to a DFT over
(
2
{\displaystyle GF(2^{m})}
, this algorithm has a very low multiplicative complexity. In practice, since there usually
exist efficient algorithms for circular convolutions with specific lengths, this algorithm is
very efficient.
## Findings
== Background ==
The discrete Fourier transform over finite fields finds widespread application in the
decoding of error-correcting codes such as BCH codes and Reed–Solomon codes.
Generalized from the complex field, a discrete Fourier transform of a sequence
{
f
{\displaystyle \{f_{i}\}_{0}^{N-1}}
over a finite field GF(pm) is defined as
F
i
α
{\displaystyle F_{j}=\sum _{i=0}^{N-1}f_{i}\alpha ^{ij},0\leq j\leq N-1,}
where
α
{\displaystyle \alpha }
is the N-th primitive root of 1 in GF(pm). If we define the polynomial representation of
N
−
{\displaystyle \{f_{i}\}_{0}^{N-1}}
as
+
f
f
N
1
f
{\displaystyle f(x)=f_{0}+f_{1}x+f_{2}x^{2}+\cdots +f_{N-1}x^{N-1}=\sum _{0}^{N-
1}f_{i}x^{i},}
it is easy to see that
F
{\displaystyle F_{j}}
is simply
{\displaystyle f(\alpha ^{j})}
. That is, the discrete Fourier transform of a sequence converts it to a polynomial evaluation
problem. Written in matrix format,
0
F
1
]
0
⋯
0
α
⋮
⋮
−
1
)
]
1
⋮
=
F
## Analysis
{\displaystyle \mathbf {F} =\left[{\begin{matrix}F_{0}\\F_{1}\\\vdots \\F_{N-1}\
end{matrix}}\right]=\left[{\begin{matrix}\alpha ^{0}&\alpha ^{0}&\cdots &\alpha
^{0}\\\alpha ^{0}&\alpha ^{1}&\cdots &\alpha ^{N-1}\\\vdots &\vdots &\ddots &\
vdots \\\alpha ^{0}&\alpha ^{N-1}&\cdots &\alpha ^{(N-1)(N-1)}\end{matrix}}\right]\
left[{\begin{matrix}f_{0}\\f_{1}\\\vdots \\f_{N-1}\end{matrix}}\right]={\mathcal {F}}\
mathbf {f} .} Direct evaluation of DFT has an
N
2
{\displaystyle O(N^{2})}
complexity. Fast Fourier transforms are just efficient algorithms evaluating the above
matrix-vector product.
## Background
== Algorithm ==
First, we define a linearized polynomial over GF(pm) as
=
∑
,
l
. {\displaystyle L(x)=\sum _{i}l_{i}x^{p^{i}},l_{i}\in \mathrm {GF} (p^{m}).} L
{\displaystyle L(x)}
is called linearized because
(
x
{\displaystyle L(x_{1}+x_{2})=L(x_{1})+L(x_{2})}
, which comes from the fact that for elements
x
)
,
{\displaystyle x_{1},x_{2}\in \mathrm {GF} (p^{m}),}
)
p
.
## Conclusion (List)
- {\displaystyle (x_{1}+x_{2})^{p}=x_{1}^{p}+x_{2}^{p}.}
- Notice that
{\displaystyle p}
is invertible modulo
{\displaystyle N}
because
N
{\displaystyle N}
must divide the order
{\displaystyle p^{m}-1}
of the multiplicative group of the field
G
{\displaystyle \mathrm {GF} (p^{m})}
References / Works Cited:
1. Wikipedia (n.d.). Retrieved from https://wikipedia.org/
2. Random Book Title (2022). Academic Publishing House.