Documentation

LeanPool.CompositionAlgebras.Composition.Defs

Euclidean composition algebras #

A Euclidean composition algebra is a real vector space C carrying a unital, not necessarily associative or commutative, bilinear product, together with a symmetric positive-definite bilinear form B whose associated quadratic form N x = B x x is multiplicative: N (x * y) = N x * N y.

The four examples are ℝ, ℂ, ℍ, 𝕆 (Composition/Instances.lean), and Hurwitz's theorem says there are no others. This file is the ground floor: the class, and the identity toolkit that every later argument runs on.

Design #

Main results #

Everything below is derived from the four class fields alone.

Scope #

Substrate for the two Hurwitz theorems. It states neither of them.

A Euclidean composition algebra: a unital, ℝ-bilinear, not necessarily associative product together with a symmetric positive-definite bilinear form whose quadratic form is multiplicative.

  • The defining bilinear form.

  • B_symm (x y : C) : (B x) y = (B y) x

    The form is symmetric.

  • B_pos (x : C) : x ≠ 0 → 0 < (B x) x

    The form is positive definite.

  • B_comp (x y : C) : (B (x * y)) (x * y) = (B x) x * (B y) y

    The composition law: the associated quadratic form is multiplicative.

Instances

    The inner product ⟩x, yâŸŦ of a composition algebra.

    Equations
    Instances For

      The norm form N x = ⟩x, xâŸŦ. Positive definite, and multiplicative by comp.

      Equations
      Instances For
        @[simp]
        theorem CompositionAlgebra.ip_add_left {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y z : C) :
        ip (x + y) z = ip x z + ip y z
        @[simp]
        theorem CompositionAlgebra.ip_add_right {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y z : C) :
        ip x (y + z) = ip x y + ip x z
        @[simp]
        theorem CompositionAlgebra.ip_sub_left {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y z : C) :
        ip (x - y) z = ip x z - ip y z
        @[simp]
        theorem CompositionAlgebra.ip_sub_right {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y z : C) :
        ip x (y - z) = ip x y - ip x z
        @[simp]
        @[simp]

        The composition law, in nf form.

        theorem CompositionAlgebra.eq_zero_of_ip_eq_zero {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] {v : C} (h : ∀ (z : C), ip v z = 0) :
        v = 0

        Positive definiteness as nondegeneracy.

        theorem CompositionAlgebra.eq_of_ip_eq {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] {u v : C} (h : ∀ (z : C), ip u z = ip v z) :
        u = v

        The form separates points: this is how every identity below is proved.

        The three polarisations of the composition law #

        theorem CompositionAlgebra.ip_mul_left_left {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y z : C) :
        ip (x * y) (x * z) = nf x * ip y z

        First polarisation: ⟩x y, x zâŸŦ = N x ⟩y, zâŸŦ.

        Second polarisation: ⟩x z, y zâŸŦ = ⟩x, yâŸŦ N z.

        theorem CompositionAlgebra.ip_exchange {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y w z : C) :
        ip (x * y) (w * z) + ip (w * y) (x * z) = 2 * ip x w * ip y z

        Third polarisation (the exchange identity): ⟩x y, w zâŸŦ + ⟩w y, x zâŸŦ = 2 ⟩x, wâŸŦ ⟩y, zâŸŦ.

        Almost everything in this file is a specialisation of this one identity.

        Conjugation #

        The conjugation x* = 2⟩x, 1âŸŦ â€Ē 1 - x, i.e. reflection in the line ℝ ∙ 1.

        Equations
        Instances For

          N 1 = 1: the unit is a unit vector.

          Conjugation is the adjoint of multiplication #

          ⟩x y, zâŸŦ = ⟩y, x* zâŸŦ.

          ⟩x y, zâŸŦ = ⟩x, z y*âŸŦ.

          ⟩x, z xâŸŦ = ⟩1, zâŸŦ N x.

          theorem CompositionAlgebra.ip_mul_one {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y : C) :
          ip (x * y) 1 = 2 * ip x 1 * ip y 1 - ip x y

          ⟩x y, 1âŸŦ = 2⟩x,1âŸŦ⟩y,1âŸŦ - ⟩x,yâŸŦ: the real part of a product.

          Every element is quadratic #

          Every element of a composition algebra satisfies a real quadratic equation: x * x = 2⟩x, 1âŸŦ â€Ē x - N x â€Ē 1.

          theorem CompositionAlgebra.mul_add_mul {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] (x y : C) :
          x * y + y * x = (2 * ip x 1) â€Ē y + (2 * ip y 1) â€Ē x - (2 * ip x y) â€Ē 1

          The polarised quadratic relation: x y + y x = 2⟩x,1âŸŦ â€Ē y + 2⟩y,1âŸŦ â€Ē x - 2⟩x,yâŸŦ â€Ē 1.

          Conjugation is an anti-automorphism: (x y)* = y* x*.

          Alternativity #

          Left alternativity: x (x y) = (x x) y.

          Right alternativity: (y x) x = y (x x).

          Imaginary elements #

          x is imaginary (pure) when it is orthogonal to the unit.

          Equations
          Instances For

            A pure element squares to a nonpositive real multiple of the unit.

            theorem CompositionAlgebra.pure_mul_pure_add {C : Type u} [NonAssocRing C] [Module ℝ C] [IsScalarTower ℝ C C] [SMulCommClass ℝ C C] [CompositionAlgebra C] {x y : C} (hx : IsPure x) (hy : IsPure y) :
            x * y + y * x = -(2 * ip x y) â€Ē 1

            Two pure elements anticommute up to their inner product: x y + y x = -2⟩x, yâŸŦ â€Ē 1. This is the Clifford relation.

            The imaginary part of x.

            Equations
            Instances For