Documentation

TauCeti.LinearAlgebra.CliffordAlgebra.Lipschitz.ReverseNorm

The reverse norm of the Lipschitz group #

A Clifford algebra carries two anti-involutions that fix the scalars: the reversion reverse, which fixes every vector, and Mathlib's star = reverse ∘ involute, which negates every vector. Each gives a norm on the Lipschitz group. The star norm lipschitzNorm takes the value -Q v on a vector v. This file develops the reverse norm x ↦ reverse x * x, which takes the value Q v on the nose, so a spinor norm defined through it sends the reflection in v to the square class of Q v rather than of -Q v.

The two norms agree on even elements and differ by the sign (-1) ^ r on a product of r vectors. Since the square class of -1 is in general nontrivial, they genuinely differ on odd Lipschitz elements. Mathlib's Pin and Spin groups are cut out by the star norm. On the even part the two norms agree, so the Spin group is exactly the set of even Lipschitz elements of reverse norm one.

Main results #

References #

See H. B. Lawson and M.-L. Michelsohn, Spin Geometry (1989), Chapter I §2, and T. Y. Lam, Introduction to Quadratic Forms over Fields (2005), Chapter V §3.

The reverse norm on the Lipschitz group #

noncomputable def CliffordAlgebra.cliffordNorm {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] (Q : QuadraticForm R M) [Invertible 2] :

The Clifford norm x ↦ reverse x * x on the Lipschitz group, as a unit-valued homomorphism. It takes the value Q v when Q v is a unit (cliffordNorm_unitι). It agrees with the star norm lipschitzNorm on even elements and is its negative on odd ones.

Equations
Instances For
    @[simp]

    The defining equation of the Clifford norm: reverse x * x is the scalar cliffordNorm Q x.

    @[simp]

    The Clifford norm is also the scalar x * reverse x.

    Naturality #

    @[simp]
    theorem CliffordAlgebra.cliffordNorm_lipschitzGroupMap {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} [Invertible 2] {N : Type u_1} [AddCommGroup N] [Module R N] {Q' : QuadraticForm R N} (f : Q →qᵢ Q') (x : ↥(lipschitzGroup Q)) :

    The Clifford norm is unchanged when a Lipschitz element is mapped along a quadratic isometry.

    @[simp]

    The Clifford norm commutes with the map of Lipschitz groups induced by a quadratic isometry.

    @[simp]

    Extending a Lipschitz element's scalars sends its Clifford norm along the induced map on units.

    @[simp]

    The Clifford norm commutes with extension of scalars on the Lipschitz group.

    @[simp]
    theorem CliffordAlgebra.cliffordNorm_unitι {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} [Invertible 2] (v : M) [Invertible (Q v)] :

    A vector v with unit Q v has Clifford norm Q v, with no sign.

    theorem CliffordAlgebra.cliffordNorm_eq_sq_mul_of_coe_eq_algebraMap_mul {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} [Invertible 2] {x y : ↥(lipschitzGroup Q)} {c : Rˣ} (h : ↑↑y = (algebraMap R (CliffordAlgebra Q)) ↑c * ↑↑x) :
    (cliffordNorm Q) y = c ^ 2 * (cliffordNorm Q) x

    Rescaling a Lipschitz element by a scalar unit c multiplies its Clifford norm by c ^ 2.

    @[simp]
    theorem CliffordAlgebra.cliffordNorm_scalarUnits {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} [Invertible 2] (hQ : ∃ (v : M), IsUnit (Q v)) (c : Rˣ) :
    (cliffordNorm Q) ((scalarUnits Q hQ) c) = c * c

    The Clifford norm of a scalar unit in the Lipschitz group is its square.

    Comparison with the star norm and the Spin group #

    theorem CliffordAlgebra.lipschitzNorm_eq_cliffordNorm_of_mem_even {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} [Invertible 2] (x : ↥(lipschitzGroup Q)) (hx : ↑↑x ∈ evenOdd Q 0) :

    On an even Lipschitz element, the star norm equals the Clifford norm.

    On an odd Lipschitz element, the star norm is the negative of the Clifford norm.

    @[simp]

    Mathlib's Spin group, read through the Clifford norm. A Lipschitz element lies in spinGroup Q exactly when it is even and its Clifford norm reverse x * x is one.

    @[simp]

    A Spin element has Clifford norm one.

    theorem CliffordAlgebra.exists_scalarUnits_mul_mem_spinGroup_iff {R : Type u} {M : Type v} [CommRing R] [AddCommGroup M] [Module R M] {Q : QuadraticForm R M} [Invertible 2] (hQ : ∃ (v : M), IsUnit (Q v)) (x : ↥(lipschitzGroup Q)) :
    (∃ (a : Rˣ), ↑↑((scalarUnits Q hQ) a * x) ∈ spinGroup Q) ↔ ↑↑x ∈ evenOdd Q 0 ∧ IsSquare ((cliffordNorm Q) x)

    Rescaling a Lipschitz element into the Spin group. A Lipschitz element can be multiplied by a scalar unit into spinGroup Q exactly when it is even and its Clifford norm is a square. Rescaling by a multiplies the Clifford norm by a * a and preserves evenness.