Documentation

TauCeti.LinearAlgebra.QuadraticForm.BaseChange

Base change of quadratic forms #

This file supplies the functorial API for extending quadratic spaces along a commutative algebra. The pure-tensor map also restricts to the polar kernel of a vector, so orthogonal parameters can be extended before passing to quotient spaces. It lifts isometries and isometric equivalences by extending their underlying linear maps, records the interaction with the additive operations on forms, compares direct and successive extension through a scalar tower, and proves that finite-dimensional nondegenerate forms remain nondegenerate over a field extension. It also identifies the base change of a diagonal form with the diagonal form obtained by mapping its coefficients into the target algebra, extends orthogonal and special orthogonal automorphisms so a quadratic space's rational symmetries act on each scalar extension, and shows that extending scalars carries the reflection in a vector v to the reflection in 1 ⊗ₜ v.

These results complement Mathlib's construction QuadraticForm.baseChange and its pure-tensor evaluation theorem. They allow localizations of a quadratic space to inherit maps, injective representations, isotropy, and regularity from the original space without choosing bases in each completion.

def QuadraticMap.Isometry.baseChange {R : Type uR} [CommRing R] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : Q₁ →qᵢ Q₂) (A : Type uA) [CommRing A] [Algebra R A] :

Base change of an isometry of quadratic forms.

Unlike QuadraticMap.Isometry.tmul, this construction is heterobasic: the original forms are over R, while their base changes are over the possibly different algebra A.

Equations
Instances For
    @[simp]
    theorem QuadraticMap.Isometry.baseChange_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : Q₁ →qᵢ Q₂) (a : A) (m : M) :
    (f.baseChange A) (a ⊗ₜ[R] m) = a ⊗ₜ[R] f m

    On pure tensors, base change of an isometry applies the original isometry to the vector.

    @[simp]
    theorem QuadraticMap.Isometry.baseChange_toLinearMap {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : Q₁ →qᵢ Q₂) :

    The linear map underlying a base-changed isometry is the base change of the original linear map.

    @[simp]
    theorem QuadraticMap.Isometry.baseChange_id {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) :

    Base change sends the identity isometry to the identity isometry.

    @[simp]
    theorem QuadraticMap.Isometry.baseChange_comp {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} {P : Type uP} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup P] [Module R P] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} {Q₃ : QuadraticForm R P} (g : Q₂ →qᵢ Q₃) (f : Q₁ →qᵢ Q₂) :

    Base change commutes with composition of isometries.

    def QuadraticMap.IsometryEquiv.baseChange {R : Type uR} [CommRing R] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : IsometryEquiv Q₁ Q₂) (A : Type uA) [CommRing A] [Algebra R A] :

    Base change of an isometric equivalence of quadratic forms.

    Equations
    Instances For
      @[simp]
      theorem QuadraticMap.IsometryEquiv.baseChange_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : IsometryEquiv Q₁ Q₂) (a : A) (m : M) :
      (f.baseChange A) (a ⊗ₜ[R] m) = a ⊗ₜ[R] f m

      On pure tensors, base change of an isometric equivalence applies the original equivalence to the vector.

      @[simp]
      theorem QuadraticMap.IsometryEquiv.baseChange_toLinearEquiv {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : IsometryEquiv Q₁ Q₂) :

      The linear equivalence underlying a base-changed isometric equivalence is the base change of the original linear equivalence.

      @[simp]
      theorem QuadraticMap.IsometryEquiv.baseChange_toIsometry {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : IsometryEquiv Q₁ Q₂) :

      Passing from a base-changed isometric equivalence to an isometry commutes with base change.

      @[simp]

      Base change sends the identity isometric equivalence to the identity equivalence.

      @[simp]
      theorem QuadraticMap.IsometryEquiv.baseChange_trans {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} {P : Type uP} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup P] [Module R P] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} {Q₃ : QuadraticForm R P} (f : IsometryEquiv Q₁ Q₂) (g : IsometryEquiv Q₂ Q₃) :

      Base change commutes with composition of isometric equivalences.

      @[simp]
      theorem QuadraticMap.IsometryEquiv.baseChange_symm {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (f : IsometryEquiv Q₁ Q₂) :

      Base change commutes with inversion of isometric equivalences.

      theorem QuadraticMap.Equivalent.baseChange {R : Type uR} [CommRing R] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {Q₁ : QuadraticForm R M} {Q₂ : QuadraticForm R N} (h : Equivalent Q₁ Q₂) (A : Type uA) [CommRing A] [Algebra R A] :

      Isometric quadratic forms remain isometric after base change.

      theorem QuadraticMap.Represents.baseChange {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} {a : R} (h : Represents Q a) :

      A scalar represented by a quadratic form remains represented after base change.

      @[simp]
      theorem QuadraticForm.polar_baseChange_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (a b : A) (x y : M) :

      Polarization after base change, evaluated on pure tensors.

      The canonical coordinate equivalence identifies the base change of a diagonal quadratic form with the diagonal form obtained by mapping each coefficient into the target algebra.

      Equations
      Instances For
        @[simp]
        theorem QuadraticForm.baseChangeWeightedSumSquares_apply {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {ι : Type u_1} [Fintype ι] (w : ι → R) (x : TensorProduct R A (ι → R)) :

        The underlying linear equivalence for diagonal base change is the canonical distribution of tensor product over the finite coordinate space.

        The canonical equivalence distributing tensor product over a product identifies the base change of an orthogonal sum with the orthogonal sum of the base changes.

        Equations
        Instances For
          @[simp]
          theorem QuadraticForm.baseChangeProd_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (Q : QuadraticForm R M) (Q' : QuadraticForm R N) (a : A) (m : M × N) :
          (Q.baseChangeProd Q') (a ⊗ₜ[R] m) = (a ⊗ₜ[R] m.1, a ⊗ₜ[R] m.2)

          On pure tensors, the equivalence identifying base change with an orthogonal sum separates the two components.

          @[simp]
          theorem QuadraticForm.baseChangeProd_symm_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} {N : Type uN} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (Q : QuadraticForm R M) (Q' : QuadraticForm R N) (a : A) (m : M) (n : N) :

          The inverse equivalence identifying an orthogonal sum with a base change combines a pair of pure tensors with the same scalar into a pure tensor of the paired vectors.

          @[simp]
          theorem QuadraticForm.baseChange_zero {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] :

          Base change sends the zero quadratic form to the zero quadratic form.

          @[simp]

          Base change commutes with addition of quadratic forms.

          @[simp]

          Base change commutes with negation of quadratic forms.

          @[simp]

          Base change commutes with subtraction of quadratic forms.

          @[simp]
          theorem QuadraticForm.baseChange_smul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] (r : R) (Q : QuadraticForm R M) :

          Scaling before base change agrees with scaling by the image of the scalar afterward.

          @[simp]
          theorem QuadraticForm.baseChange_eq_zero_iff {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] [FaithfulSMul R A] {Q : QuadraticForm R M} :

          A quadratic form vanishes after a faithful scalar extension exactly when it vanishes. This is the quadratic-form analogue of Mathlib's LinearMap.BilinForm.baseChange_eq_zero_iff.

          Isotropy is preserved by a faithful scalar extension when the underlying module is flat.

          Representation of one quadratic form by another is preserved by flat base change.

          Orthogonal groups #

          Extending scalars carries an orthogonal automorphism of Q to an orthogonal automorphism of Q.baseChange A. Over a field extension this is the map that compares the rational and local orthogonal groups.

          Equations
          Instances For

            The linear equivalence underlying an orthogonal automorphism after scalar extension is the base change of its original linear equivalence.

            @[simp]

            The matrix of a scalar-extended orthogonal automorphism in a base-changed basis is obtained by applying the algebra map to each entry.

            @[simp]
            theorem TauCeti.QuadraticMap.orthogonalGroupBaseChange_apply_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (g : ↥(orthogonalGroup Q)) (a : A) (m : M) :
            ↑((orthogonalGroupBaseChange Q) g) (a ⊗ₜ[R] m) = a ⊗ₜ[R] ↑g m

            On a pure tensor, base change of an orthogonal automorphism applies the automorphism to the second tensor factor.

            @[simp]

            The determinant of a base-changed orthogonal automorphism is the image of its original determinant.

            Scalar extension of orthogonal automorphisms is injective whenever the extension is faithful and the original module is flat. In particular, this applies to extensions of fields.

            Base change preserves the determinant-one condition, giving the corresponding map on special orthogonal groups.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For

              The linear equivalence underlying a base-changed special orthogonal automorphism is the base change of its underlying linear equivalence.

              The special-orthogonal base-change map is the orthogonal base-change map restricted to the determinant-one subgroup.

              @[simp]
              theorem TauCeti.QuadraticMap.specialOrthogonalGroupBaseChange_apply_tmul {R : Type uR} {A : Type uA} [CommRing R] [CommRing A] [Algebra R A] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] [Module.Free R M] [Module.Finite R M] (Q : QuadraticForm R M) (g : ↥(specialOrthogonalGroup Q)) (a : A) (m : M) :

              On pure tensors, base change of a special orthogonal automorphism acts on the second factor.

              Scalar extension of special orthogonal automorphisms is injective whenever the extension is faithful and the original module is flat.

              Extending scalars carries the reflection in v to the reflection in 1 ⊗ₜ v: the base change of τ_v is τ_{1 ⊗ v} for Q.baseChange A.

              Direct base change through a scalar tower is isometric to successive base change.

              The underlying linear equivalence is the inverse of Mathlib's canonical cancellation B ⊗[A] (A ⊗[R] M) ≃ B ⊗[R] M.

              Equations
              Instances For
                @[simp]

                The linear equivalence underlying repeated base change is Mathlib's canonical tensor-product cancellation, read in the direction from direct to successive base change.

                @[simp]
                theorem QuadraticForm.baseChangeBaseChange_tmul {R : Type uR} {A : Type uA} {B : Type uN} [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra A B] [Algebra R B] [IsScalarTower R A B] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (b : B) (m : M) :

                On a pure tensor, the scalar-tower base-change equivalence inserts the intermediate unit tensor.

                @[simp]
                theorem QuadraticForm.baseChangeBaseChange_symm_tmul {R : Type uR} {A : Type uA} {B : Type uN} [CommRing R] [CommRing A] [CommRing B] [Algebra R A] [Algebra A B] [Algebra R B] [IsScalarTower R A B] [Invertible 2] {M : Type uM} [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) (b : B) (a : A) (m : M) :

                The inverse scalar-tower base-change equivalence multiplies the intermediate scalar into the outer tensor factor.

                @[simp]

                Conjugating a directly extended orthogonal automorphism by the canonical scalar-tower equivalence agrees with extending it successively.

                @[simp]

                The special-orthogonal scalar-extension maps satisfy the same scalar-tower law, read through the canonical inclusion into the orthogonal group.

                A finite-dimensional nondegenerate quadratic form stays nondegenerate after extending its base field.

                @[simp]

                On a space of dimension at most one, a quadratic form is anisotropic exactly when its extension to a nontrivial ring without zero divisors is anisotropic. Dimension one is sharp: ⟨1, 1⟩ over ℚ is anisotropic, while its extension to ℂ is not.

                Pure tensors carry the orthogonal kernel of u into that of 1 ⊗ u.

                Equations
                Instances For
                  @[simp]
                  theorem TauCeti.QuadraticMap.coe_polarKernelBaseChange_apply {R : Type u_1} {A : Type u_2} {M : Type u_3} [CommRing R] [CommRing A] [Algebra R A] [AddCommGroup M] [Module R M] [Invertible 2] (Q : QuadraticForm R M) (u : M) (w : ↥((QuadraticMap.polarBilin Q) u).ker) :
                  ↑((polarKernelBaseChange Q u) w) = 1 ⊗ₜ[R] ↑w

                  The scalar-extension map on an orthogonal kernel is the pure-tensor map on vectors.