Pontryagin duality for finite abelian groups #
This file proves the Pontryagin duality in case of finite abelian groups. This states that any finite abelian group is canonically isomorphic to its double dual (the space of complex-valued characters of its space of complex-valued characters).
We first prove it for ZMod n and then extend to all finite abelian groups using the
Structure Theorem.
TODO #
Reuse the work done in Mathlib/GroupTheory/FiniteAbelian/Duality.lean. This requires to write some
more glue.
AddChar.zmod bundled as an AddChar.
Equations
- AddChar.zmodHom = { toFun := AddChar.zmod n, map_zero_eq_one' := ⋯, map_add_eq_mul' := ⋯ }
Instances For
The circle-valued characters of a finite abelian group are the same as its complex-valued characters.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
@[simp]
noncomputable def
AddChar.complexBasis
(α : Type u_1)
[AddCommGroup α]
[Finite α]
:
Module.Basis (AddChar α ℂ) ℂ (α → ℂ)
Complex-valued characters of a finite abelian group α form a basis of α → ℂ.
Equations
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
The double dual isomorphism of a finite abelian group.
Instances For
@[simp]
@[simp]
theorem
AddChar.doubleDualEmb_doubleDualEquiv_symm_apply
{α : Type u_1}
[AddCommGroup α]
[Finite α]
(a : AddChar (AddChar α ℂ) ℂ)
:
@[simp]
theorem
AddChar.doubleDualEquiv_symm_doubleDualEmb_apply
{α : Type u_1}
[AddCommGroup α]
[Finite α]
(a : AddChar (AddChar α ℂ) ℂ)
:
theorem
AddChar.sum_apply_eq_ite
{α : Type u_1}
[AddCommGroup α]
[Fintype α]
[DecidableEq α]
(a : α)
:
theorem
AddChar.expect_apply_eq_ite
{α : Type u_1}
[AddCommGroup α]
[Finite α]
[DecidableEq α]
(a : α)
:
theorem
AddChar.expect_apply_eq_zero_iff_ne_zero
{α : Type u_1}
[AddCommGroup α]
{a : α}
[Finite α]
:
theorem
AddChar.expect_apply_ne_zero_iff_eq_zero
{α : Type u_1}
[AddCommGroup α]
{a : α}
[Finite α]
: