Documentation

Mathlib.Algebra.Lie.Basis

Bases of semisimple Lie algebras #

In this file we define bases of semisimple Lie algebras. Given an indexing type ι, a basis of a Lie algebra consists of a non-degenerate matrix of integers A indexed by ι × ι and generators h i, e i, f i indexed by ι, each forming an sl₂ triple, and satisfying the Chevalley-Serre relations:

This concept appears not to have a name in the informal literature and so we call it simply a basis. With further axioms (constraining the structure constants which appear in products of the form ⁅e i, e j⁆, ⁅f i, f j⁆) one obtains the concept of a Weyl or Chevalley basis. See e.g., [Ser87](Ch. V, §4, §6).

Main definitions / results: #

TODO #

structure LieAlgebra.Basis (ι : Type u_1) (R : Type u_2) (L : Type u_3) [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] :
Type (max u_1 u_3)

A basis for a semisimple Lie algebra distinguishes a natural Cartan subalgebra and a base for the associated root system.

Instances For
    theorem LieAlgebra.Basis.ext {ι : Type u_1} {R : Type u_2} {L : Type u_3} {inst✝ : Finite ι} {inst✝¹ : CommRing R} {inst✝² : LieRing L} {inst✝³ : LieAlgebra R L} {x y : Basis ι R L} (A : x.A = y.A) (h : x.h = y.h) (e : x.e = y.e) (f : x.f = y.f) (cartan : x.cartan = y.cartan) :
    x = y
    theorem LieAlgebra.Basis.ext_iff {ι : Type u_1} {R : Type u_2} {L : Type u_3} {inst✝ : Finite ι} {inst✝¹ : CommRing R} {inst✝² : LieRing L} {inst✝³ : LieAlgebra R L} {x y : Basis ι R L} :
    x = y x.A = y.A x.h = y.h x.e = y.e x.f = y.f x.cartan = y.cartan
    @[simp]
    theorem LieAlgebra.Basis.A_diag_eq_two {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [IsAddTorsionFree L] (i : ι) :
    b.A i i = 2
    @[simp]
    theorem LieAlgebra.Basis.coe_cartan_eq_span {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
    def LieAlgebra.Basis.symm {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
    Basis ι R L

    A basis has a natural involution obtained by interchanging the roles of e and f and negating h.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem LieAlgebra.Basis.symm_f {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
      b.symm.f = b.e
      @[simp]
      theorem LieAlgebra.Basis.symm_cartan {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
      @[simp]
      theorem LieAlgebra.Basis.symm_e {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
      b.symm.e = b.f
      @[simp]
      theorem LieAlgebra.Basis.symm_A {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
      b.symm.A = b.A
      @[simp]
      theorem LieAlgebra.Basis.symm_h {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
      b.symm.h = -b.h
      @[simp]
      theorem LieAlgebra.Basis.symm_symm {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
      b.symm.symm = b
      def LieAlgebra.Basis.h' {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) (i : ι) :
      b.cartan

      As shown in LieAlgebra.Basis.coroot_eq_h' this is a coroot.

      Equations
      Instances For
        @[simp]
        theorem LieAlgebra.Basis.symm_h' {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) (i : ι) :
        b.symm.h' i = -b.h' i
        def LieAlgebra.Basis.borelUpper {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
        LieSubmodule R (↥b.cartan) L

        The nilpotent part of the "upper" Borel subalgebra assocated to a basis.

        Equations
        Instances For
          def LieAlgebra.Basis.borelLower {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) :
          LieSubmodule R (↥b.cartan) L

          The nilpotent part of the "lower" Borel subalgebra assocated to a basis.

          Equations
          Instances For
            noncomputable def LieAlgebra.Basis.baseSupp {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] (i : ι) :

            These elements constitute a base for the root system of the Lie algebra relative to the associated Cartan subalgebra.

            Equations
            Instances For
              @[simp]
              theorem LieAlgebra.Basis.baseSupp_apply_h' {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] (i j : ι) :
              (b.baseSupp i) (b.h' j) = (b.A i j)
              @[simp]
              theorem LieAlgebra.Basis.symm_baseSupp {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] :
              theorem LieAlgebra.Basis.linearIndependent_baseSupp {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] :
              @[simp]
              theorem LieAlgebra.Basis.baseSupp_apply_smul_e {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] (i : ι) (x : b.cartan) :
              (b.baseSupp i) x b.e i = x, b.e i
              @[simp]
              theorem LieAlgebra.Basis.baseSupp_apply_smul_f {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] (i : ι) (x : b.cartan) :
              (b.baseSupp i) x b.f i = -x, b.f i
              theorem LieAlgebra.Basis.borelUpper_le_biSup {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] :
              b.borelUpper ⨆ (n : ι), ⨆ (_ : n 0), rootSpace b.cartan (∑ i : ι, n i (b.baseSupp i))

              Lemma 4.4 from Geck.

              theorem LieAlgebra.Basis.borelLower_le_biSup {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] :
              b.borelLower ⨆ (n : ι), ⨆ (_ : n 0), rootSpace b.cartan (∑ i : ι, n i ((-b.baseSupp) i))

              Lemma 4.4 from Geck.

              theorem LieAlgebra.Basis.iSupIndep_rootSpace {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] [Module.IsTorsionFree R L] :
              iSupIndep ![rootSpace b.cartan 0, ⨆ (n : ι), ⨆ (_ : n 0), rootSpace b.cartan (∑ i : ι, n i ((-b.baseSupp) i)), ⨆ (n : ι), ⨆ (_ : n 0), rootSpace b.cartan (∑ i : ι, n i (b.baseSupp i))]
              theorem LieAlgebra.Basis.cartan_eq {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] [Module.IsTorsionFree R L] :
              theorem LieAlgebra.Basis.borelLower_eq {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] [Module.IsTorsionFree R L] :
              b.borelLower = ⨆ (n : ι), ⨆ (_ : n 0), rootSpace b.cartan (∑ i : ι, n i ((-b.baseSupp) i))
              theorem LieAlgebra.Basis.borelUpper_eq {ι : Type u_1} {R : Type u_2} {L : Type u_3} [Finite ι] [CommRing R] [LieRing L] [LieAlgebra R L] (b : Basis ι R L) [Fintype ι] [IsDomain R] [CharZero R] [Module.IsTorsionFree R L] :
              b.borelUpper = ⨆ (n : ι), ⨆ (_ : n 0), rootSpace b.cartan (∑ i : ι, n i (b.baseSupp i))
              noncomputable def LieAlgebra.Basis.baseSupp' {ι : Type u_1} {K : Type u_2} {L : Type u_3} [Fintype ι] [Field K] [CharZero K] [LieRing L] [LieAlgebra K L] [FiniteDimensional K L] (b : Basis ι K L) (i : ι) :

              The elements LieAlgebra.Basis.baseSupp as roots in the sense of LieSubalgebra.root.

              Equations
              Instances For
                @[simp]
                theorem LieAlgebra.Basis.coe_linearMap_baseSupp' {ι : Type u_1} {K : Type u_2} {L : Type u_3} [Fintype ι] [Field K] [CharZero K] [LieRing L] [LieAlgebra K L] [FiniteDimensional K L] (b : Basis ι K L) (i : ι) :
                noncomputable def LieAlgebra.Basis.base {ι : Type u_1} {K : Type u_2} {L : Type u_3} [Fintype ι] [Field K] [CharZero K] [LieRing L] [LieAlgebra K L] [FiniteDimensional K L] (b : Basis ι K L) [LieModule.IsTriangularizable K (↥b.cartan) L] [IsKilling K L] :

                The distinguished root system base associated to a basis.

                Equations
                Instances For
                  noncomputable def LieAlgebra.Basis.baseSupportEquiv {ι : Type u_1} {K : Type u_2} {L : Type u_3} [Fintype ι] [Field K] [CharZero K] [LieRing L] [LieAlgebra K L] [FiniteDimensional K L] (b : Basis ι K L) [LieModule.IsTriangularizable K (↥b.cartan) L] [IsKilling K L] :
                  ι b.base.support

                  The support of LieAlgebra.Basis.base is in one-to-one correspondence with the indexing set of the basis.

                  Equations
                  Instances For
                    @[simp]
                    theorem LieAlgebra.Basis.coe_baseSupportEquiv_apply {ι : Type u_1} {K : Type u_2} {L : Type u_3} [Fintype ι] [Field K] [CharZero K] [LieRing L] [LieAlgebra K L] [FiniteDimensional K L] (b : Basis ι K L) [LieModule.IsTriangularizable K (↥b.cartan) L] [IsKilling K L] (i : ι) :
                    @[simp]
                    theorem LieAlgebra.Basis.coroot_eq_h' {ι : Type u_1} {K : Type u_2} {L : Type u_3} [Fintype ι] [Field K] [CharZero K] [LieRing L] [LieAlgebra K L] [FiniteDimensional K L] (b : Basis ι K L) [LieModule.IsTriangularizable K (↥b.cartan) L] [IsKilling K L] (i : ι) :