Documentation

LeanPool.HasseMinkowski.Locally

Layer 2a of the Hasse–Minkowski development: local isotropy #

Hasse–Minkowski says that a quadratic form over ℚ is isotropic if and only if it becomes isotropic after extending scalars to every completion of ℚ, namely ℝ and the p-adic fields ℚ_[p] for all primes p. This file supplies the local side of the statement:

The tensor-product object Q.baseChange A is Mathlib's QuadraticForm.baseChange A Q, a form on A ⊗[ℚ] V.

Base change of a weighted sum of squares #

Mathlib has no statement relating (weightedSumSquares R w).baseChange A to a weighted sum of squares over A. The canonical identification is A ⊗[R] (ι → R) ≃ₗ[A] (ι → A) (TensorProduct.piScalarRight), under which the two forms agree. We prove agreement by baseChange_ext, which reduces to the pure tensors 1 ⊗ₜ y.

Base change preserves isotropy #

The forward implication of Hasse–Minkowski is easy: if x ≠ 0 is isotropic for Q, then 1 ⊗ₜ x is isotropic for the base change. The only point to check is 1 ⊗ₜ x ≠ 0, which holds because a nontrivial algebra over a field is faithfully flat.

Everywhere local isotropy #

A quadratic form over ℚ is everywhere locally isotropic if it is isotropic over every completion of ℚ: over ℝ and over every p-adic field ℚ_[p].

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

    Dot-notation alias #

    Mirrors the aliases in Basic.lean, so that Q.EverywhereLocallyIsotropic works for a quadratic form Q.

    @[reducible, inline]

    Dot-notation alias for HasseMinkowski.EverywhereLocallyIsotropic: the quadratic form is isotropic over ℝ and over every p-adic field ℚ_[p].

    Equations
    Instances For