Fourier theory on ZMod N
#
Basic definitions and properties of the discrete Fourier transform for functions on ZMod N
(taking values in an arbitrary ℂ
-vector space).
Main definitions and results #
ZMod.dft
: the Fourier transform, with respect to the standard additive characterZMod.stdAddChar
(mappingj mod N
toexp (2 * π * I * j / N)
). The notation𝓕
, scoped in namespaceZMod
, is available for this.ZMod.dft_dft
: the Fourier inversion formula.DirichletCharacter.fourierTransform_eq_inv_mul_gaussSum
: the discrete Fourier transform of a primitive Dirichlet characterχ
is a Gauss sum timesχ⁻¹
.
The discrete Fourier transform on ℤ / N ℤ
(with the counting measure), bundled as a linear
equivalence.
Equations
- ZMod.term𝓕 = Lean.ParserDescr.node `ZMod.term𝓕 1024 (Lean.ParserDescr.symbol "𝓕")
Instances For
The inverse Fourier transform on ZMod N
.
Equations
- ZMod.«term𝓕⁻» = Lean.ParserDescr.node `ZMod.term𝓕⁻ 1024 (Lean.ParserDescr.symbol "𝓕⁻")
Instances For
The discrete Fourier transform agrees with the general one (assuming the target space is a complete normed space).
Compatibility with scalar multiplication #
These lemmas are more general than LinearEquiv.map_mul
etc, since they allow any scalars that
commute with the ℂ
-action, rather than just ℂ
itself.
The discrete Fourier transform of Φ
is even if and only if Φ
itself is.
The discrete Fourier transform of Φ
is odd if and only if Φ
itself is.
For a primitive Dirichlet character χ
, the Fourier transform of χ
is a constant multiple
of χ⁻¹
(and the constant is essentially the Gauss sum).