Documentation

TauCeti.LinearAlgebra.IntegralLattice.Gram

Gram determinants of integral lattices #

This file attaches an integral Gram matrix to every basis of an integral lattice. Its determinant is independent of the carrier basis: an integral change-of-basis matrix has determinant 1 or -1, and the Gram matrix changes by multiplication by that matrix and its transpose. The resulting basis-free signed determinant and its absolute value are the determinant and discriminant of the lattice. An integral-lattice isometry carries every carrier basis to one with the same Gram matrix, so it preserves both basis-free invariants.

The rational scalar extension of a Gram matrix is the matrix of the ambient rational bilinear form in the extended basis. Consequently the signed determinant is nonzero exactly when that form is nondegenerate. This is the determinant criterion needed before constructing the finite discriminant group.

Main definitions #

Main results #

References #

noncomputable def TauCeti.IntegralLattice.gramMatrix {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} (e : Module.Basis ι ℤ ↥L.carrier) :
Matrix ι ι ℤ

The integral Gram matrix of a carrier basis.

Equations
Instances For
    @[simp]
    theorem TauCeti.IntegralLattice.gramMatrix_apply {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} (e : Module.Basis ι ℤ ↥L.carrier) (i j : ι) :
    L.gramMatrix e i j = (L.integralForm (e i)) (e j)

    A Gram-matrix entry is the value of the integral form on the corresponding basis vectors.

    The Gram matrix is Mathlib's matrix of the restricted integral bilinear form.

    theorem TauCeti.IntegralLattice.intCast_gramMatrix_apply {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} (e : Module.Basis ι ℤ ↥L.carrier) (i j : ι) :
    ↑(L.gramMatrix e i j) = (L.form ↑(e i)) ↑(e j)

    Casting a Gram-matrix entry to ℚ recovers the ambient rational form.

    The Gram matrix of a symmetric integral lattice is symmetric.

    Extending the carrier basis and the entries of its Gram matrix to ℚ gives the matrix of the ambient rational form.

    noncomputable def TauCeti.IntegralLattice.gramDet {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} [Fintype ι] [DecidableEq ι] (e : Module.Basis ι ℤ ↥L.carrier) :

    The signed determinant of the Gram matrix in a carrier basis.

    Equations
    Instances For

      Unfolding the signed Gram determinant to the matrix determinant.

      Casting the signed Gram determinant to ℚ gives the determinant of the ambient rational form in the extended basis.

      theorem TauCeti.IntegralLattice.gramMatrix_reindex {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} {κ : Type w} (e : Module.Basis ι ℤ ↥L.carrier) (σ : ι ≃ κ) :
      L.gramMatrix (e.reindex σ) = (L.gramMatrix e).submatrix ⇑σ.symm ⇑σ.symm

      Reindexing a carrier basis simultaneously reindexes the rows and columns of its Gram matrix.

      theorem TauCeti.IntegralLattice.gramDet_reindex {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} {κ : Type w} [Fintype ι] [Fintype κ] [DecidableEq ι] [DecidableEq κ] (e : Module.Basis ι ℤ ↥L.carrier) (σ : ι ≃ κ) :
      L.gramDet (e.reindex σ) = L.gramDet e

      Reindexing a carrier basis does not change its signed Gram determinant.

      theorem TauCeti.IntegralLattice.gramDet_eq_gramDet {V : Type u} [AddCommGroup V] [Module ℚ V] (L : IntegralLattice V) {ι : Type v} {κ : Type w} [Fintype ι] [Fintype κ] [DecidableEq ι] [DecidableEq κ] (e : Module.Basis ι ℤ ↥L.carrier) (f : Module.Basis κ ℤ ↥L.carrier) :
      L.gramDet e = L.gramDet f

      The signed Gram determinant is independent of the carrier basis. This permits both the index type and the basis to change.

      @[simp]

      A Gram determinant is nonzero exactly when the ambient rational form is nondegenerate.

      @[simp]
      theorem TauCeti.IntegralLattice.gramMatrix_ofGramMatrix {V : Type u} [AddCommGroup V] [Module ℚ V] {ι : Type v} [Fintype ι] (b : Module.Basis ι ℚ V) (G : Matrix ι ι ℤ) (hG : G.IsSymm) :

      The Gram matrix of ofGramMatrix b G hG in its canonical carrier basis is G.

      @[simp]
      theorem TauCeti.IntegralLattice.gramDet_ofGramMatrix {V : Type u} [AddCommGroup V] [Module ℚ V] {ι : Type v} [Fintype ι] [DecidableEq ι] (b : Module.Basis ι ℚ V) (G : Matrix ι ι ℤ) (hG : G.IsSymm) :

      The signed Gram determinant of ofGramMatrix b G hG in its canonical carrier basis is the determinant of G.

      The basis-independent signed determinant of an integral lattice.

      Equations
      Instances For

        The signed determinant agrees with the determinant of the Gram matrix in every carrier basis.

        @[simp]
        theorem TauCeti.IntegralLattice.determinant_ofGramMatrix {V : Type u} [AddCommGroup V] [Module ℚ V] {ι : Type v} [Fintype ι] [DecidableEq ι] (b : Module.Basis ι ℚ V) (G : Matrix ι ι ℤ) (hG : G.IsSymm) :

        The basis-independent signed determinant of ofGramMatrix b G hG is the determinant of G.

        @[simp]

        The basis-independent determinant is nonzero exactly when the ambient rational form is nondegenerate.

        The signed Gram determinant of a nondegenerate integral lattice, regarded as a nonzero rational number.

        Equations
        Instances For
          @[simp]

          The value underlying determinantUnit is the integral Gram determinant cast to ℚ.

          The integral form on the carrier is nondegenerate exactly when the ambient rational form is.

          theorem TauCeti.IntegralLattice.isNondegenerate_ofGramMatrix {V : Type u} [AddCommGroup V] [Module ℚ V] {ι : Type v} [Fintype ι] (b : Module.Basis ι ℚ V) (G : Matrix ι ι ℤ) (hG : G.IsSymm) (hdet : G.det ≠ 0) :

          An integral lattice constructed from a nonsingular Gram matrix is nondegenerate.

          The nonnegative discriminant of an integral lattice is the absolute value of its signed determinant.

          Equations
          Instances For

            Unfolding the discriminant to the absolute value of the signed determinant.

            The discriminant is the absolute value of the Gram determinant in every carrier basis.

            @[simp]

            The discriminant of ofGramMatrix b G hG is the absolute value of the determinant of G.

            @[simp]

            The discriminant is positive exactly when the ambient rational form is nondegenerate.

            Transporting a carrier basis along an isometry preserves its Gram matrix entrywise.

            Transporting a carrier basis along an isometry preserves its signed Gram determinant.

            The basis-independent signed determinant is invariant under integral-lattice isometry.

            The nonnegative discriminant is invariant under integral-lattice isometry.

            noncomputable def TauCeti.IntegralLattice.Isometry.ofGramMatrixEq {V : Type u} [AddCommGroup V] [Module ℚ V] {W : Type w} [AddCommGroup W] [Module ℚ W] {L : IntegralLattice V} {M : IntegralLattice W} {ι : Type v} (b : Module.Basis ι ℤ ↥L.carrier) (b' : Module.Basis ι ℤ ↥M.carrier) (h : L.gramMatrix b = M.gramMatrix b') :

            Lattices with bases of equal Gram matrices are isometric. The isometry carries the i-th vector of the first basis to the i-th vector of the second; this is the converse of TauCeti.IntegralLattice.Isometry.gramMatrix_carrierBasisEquiv.

            Equations
            Instances For
              @[simp]
              theorem TauCeti.IntegralLattice.Isometry.ofGramMatrixEq_apply_basis {V : Type u} [AddCommGroup V] [Module ℚ V] {W : Type w} [AddCommGroup W] [Module ℚ W] {L : IntegralLattice V} {M : IntegralLattice W} {ι : Type v} (b : Module.Basis ι ℤ ↥L.carrier) (b' : Module.Basis ι ℤ ↥M.carrier) (h : L.gramMatrix b = M.gramMatrix b') (i : ι) :
              (ofGramMatrixEq b b' h) ↑(b i) = ↑(b' i)

              The isometry ofGramMatrixEq b b' h carries each vector of b to the corresponding vector of b'.