Dual submodules of lattices #
This file develops the duality theory for full lattices in vector spaces equipped with a nondegenerate bilinear form over a fraction field.
Main declarations #
LinearMap.BilinForm.dualSubmoduleToDual_surjective: surjectivity ofdualSubmoduleToDualfor a full lattice and nondegenerate bilinear form.LinearMap.BilinForm.dualSubmoduleEquivDual: the canonical linear equivalenceB.dualSubmodule N ≃ₗ[R] Module.Dual R N.LinearMap.BilinForm.dualSubmoduleEquivDual_apply: evaluation ofdualSubmoduleEquivDualisB.dualSubmoduleToDual N.LinearMap.BilinForm.dualSubmodule_dualSubmodule_flip: double duality for free full lattices usingB.flip.LinearMap.BilinForm.dualSubmodule_flip_dualSubmodule: double duality for free full lattices withB.flipon the outside.LinearMap.BilinForm.fg_of_le_dualSubmodule: over a Noetherian ring, a submodule which spans the ambient finite-dimensional space and lies in its own dual is finitely generated.LinearMap.BilinForm.dualSubmodule_anti: dualizing reverses inclusions.LinearMap.BilinForm.det_toMatrix_smul_mem_span: Cramer's rule for dual lattices; if the Gram matrix of a basisbhas entries inR, then its determinant times any element of the dual ofspan R blies inspan R b.
Taking dual submodules with respect to a bilinear form reverses inclusions.
Cramer's rule for dual lattices. Let b be a basis of V over the field K such that
every Gram matrix entry B (b i) (b j) lies in R. Then the Gram determinant
r = det (B (b i) (b j)) multiplies the dual of the R-span of b into that span: r • x lies in
the R-span of b whenever every B x (b j) lies in R. When B is nondegenerate, r ≠ 0
(LinearMap.BilinForm.nondegenerate_iff_det_ne_zero), so the dual lattice lies in
r⁻¹ • span R (Set.range b).
The adjugate argument is adapted from Mathlib's Algebra.discr_mul_isIntegral_mem_adjoin, which
treats the trace form of a separable field extension and a power basis; here it is stated for an
arbitrary bilinear form and basis.
For a nondegenerate bilinear form B over the fraction field and a full lattice N, Mathlib's
canonical pairing B.dualSubmoduleToDual N from the dual lattice to the dual of N is
surjective. No lattice basis is needed.
The dual submodule of a full lattice is canonically isomorphic to its R-linear dual
whenever the ambient bilinear form is nondegenerate.
Instances For
The underlying linear map of dualSubmoduleEquivDual is B.dualSubmoduleToDual N.
Dualizing by B.flip and then by B recovers the original free full lattice.
Dualizing by B and then by B.flip recovers the original free full lattice.
Over a Noetherian ring A, a submodule N which spans a finite-dimensional K-vector space
M and lies in its own dual for a nondegenerate bilinear form B is finitely generated: it lies
in the A-span of the dual basis of a basis of M chosen inside N.