The dual lattice in a real inner product space #
For a ℤ-submodule L of a real inner product space E, the dual lattice
L^∨ = {x ∈ E | ⟪x, y⟫ ∈ ℤ for all y ∈ L}
is Mathlib's BilinForm.dualSubmodule of the inner product innerₗ E, with ℤ as
the ring of coefficients. This file names that submodule ZLattice.dual and develops the part of
its theory that holds for a full lattice in a finite-dimensional space: the dual of a full lattice
is again a full lattice (ZLattice.dual carries DiscreteTopology and IsZLattice instances),
and taking the dual twice gives the lattice back (ZLattice.dual_dual).
Both facts come from the dual-basis description of Mathlib: the dual of the ℤ-span of an
ℝ-basis b is the ℤ-span of the basis dual to b for the inner product
(ZLattice.dual_span_basis), and a full lattice is the ℤ-span of an ℝ-basis. In particular the
ℤ-span of an orthonormal basis is its own dual (ZLattice.dual_span_orthonormalBasis), the
self-duality of ℤⁿ ⊆ ℝⁿ.
The dual is antitone, and it commutes with pulling a lattice back along a linear isometry
equivalence (ZLattice.dual_comap), so every notion defined from it is an isometry invariant.
Along a general continuous linear equivalence e of complete spaces the dual is pulled back along
the adjoint of e⁻¹ instead (ZLattice.dual_comap_continuousLinearEquiv): the dual of A L is
(A⁻¹)ᵀ L^∨, the transport of dual lattices under a linear change of variables.
This is the dual lattice entering Poisson summation over a lattice, and the integrality,
evenness and unimodularity of a lattice in TauCeti/Algebra/Module/ZLattice/Integral.lean are
defined from it.
Main definitions #
ZLattice.dual L: the dual ofL : Submodule ℤ Ewith respect to the inner product.ZLattice.basisSpanOrthonormalBasis b: an orthonormal basisbas aℤ-basis of itsℤ-span.ZLattice.dualComapEquiv L e: theℤ-linear equivalence(e⁻¹ L)^∨ ≃ₗ[ℤ] L^∨induced by a linear isometry equivalencee.
Notation #
L^∨: the dual latticeZLattice.dual L, scoped inZLattice.
Main statements #
ZLattice.mem_dual:x ∈ dual Lif and only if⟪x, y⟫is an integer for everyy ∈ L.ZLattice.dual_span_basis: the dual of theℤ-span of anℝ-basis is theℤ-span of its dual basis.ZLattice.dual_span_orthonormalBasis: theℤ-span of an orthonormal basis is self-dual.ZLattice.dual_span_singleton: the dual ofc ℤ ⊆ ℝ(c ≠ 0) isc⁻¹ ℤ.ZLattice.inf_dual_span_singleton_eq_bot_of_irrational_sq: whenc²is irrational,c ℤ ⊆ ℝmeets its dualc⁻¹ ℤonly at0.ZLattice.dual_dual: the dual of the dual of a full lattice is the lattice itself.ZLattice.dual_comap: the dual commutes with pulling back along a linear isometry equivalence.ZLattice.dual_comap_continuousLinearEquiv: the dual of the pullback along a continuous linear equivalenceeis the pullback of the dual along the adjoint ofe⁻¹.
The dual lattice of L : Submodule ℤ E: the vectors whose inner product with every vector of
L is an integer. It is Mathlib's BilinForm.dualSubmodule of the inner product.
Instances For
The dual lattice of L : Submodule ℤ E: the vectors whose inner product with every vector of
L is an integer. It is Mathlib's BilinForm.dualSubmodule of the inner product.
Instances For
A vector lies in the dual lattice exactly when its inner product with every vector of L is
an integer.
Taking duals reverses inclusions.
L lies in the dual of M if and only if M lies in the dual of L: both say that L and
M pair integrally.
Every lattice is contained in the dual of its dual. Equality holds for a full lattice in a
finite-dimensional space, dual_dual.
The dual of the ℤ-span of an ℝ-basis is the ℤ-span of the dual basis for the inner
product.
The ℤ-span of an orthonormal basis is discrete, as the ℤ-span of the underlying basis
b.toBasis is.
The ℤ-span of an orthonormal basis is a full lattice, a copy of ℤⁿ ⊆ ℝⁿ.
An orthonormal basis b is a ℤ-basis of its ℤ-span ℤ b.
Instances For
The i-th vector of the ℤ-basis basisSpanOrthonormalBasis b of ℤ b is b i.
The ℤ-span of an orthonormal basis is its own dual.
The dual commutes with pulling a lattice back along a linear isometry equivalence.
A linear isometry equivalence e : F ≃ₗᵢ[ℝ] E identifies the dual of the pullback of L with
the dual of L.
Instances For
Applying dualComapEquiv L e applies e to the underlying vector.
Applying (dualComapEquiv L e).symm applies e.symm to the underlying vector.
The dual of the pullback of a lattice along a continuous linear equivalence e is the
pullback of the dual along the adjoint of e⁻¹. Read through images, the dual of A L is
(A⁻¹)ᵀ L^∨ for a linear automorphism A.
The dual of the dual of a full lattice in a finite-dimensional space is the lattice.