Documentation

LeanPool.VirasoroProject.FockSpace

Verma modules for the Virasoro algebra #

This file defines Verma modules used in Lie algebra representation theory.

Main definitions #

Main statements #

Implementation notes #

The charged Fock space is defined as a Verma module for the Heisenberg Lie algebra (with an appropriate triangular decomposition).

Tags #

Heisenberg algebra, Fock space

@[reducible, inline]
abbrev VirasoroProject.HasUnitCentral (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (M : Type u_2) [AddCommGroup M] [Module 𝕜 M] [Module (𝓤 𝕜 (HeisenbergAlgebra 𝕜)) M] :

A Heisenberg module where the central generator K acts by the scalar 1.

Equations
Instances For
    theorem VirasoroProject.HasUnitCentral.kgen_smul (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (M : Type u_2) [AddCommGroup M] [Module 𝕜 M] [Module (𝓤 𝕜 (HeisenbergAlgebra 𝕜)) M] [HasUnitCentral 𝕜 M] (v : M) :
    (ιUEA 𝕜) (HeisenbergAlgebra.kgen 𝕜) v = v
    @[reducible, inline]
    abbrev VirasoroProject.HasCharge (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (M : Type u_2) [AddCommGroup M] [Module 𝕜 M] [Module (𝓤 𝕜 (HeisenbergAlgebra 𝕜)) M] (α : 𝕜) :

    A Heisenberg module where J₀ acts by the charge α.

    Equations
    Instances For
      theorem VirasoroProject.HasCharge.jgen_zero_smul (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (M : Type u_2) [AddCommGroup M] [Module 𝕜 M] [Module (𝓤 𝕜 (HeisenbergAlgebra 𝕜)) M] {α : 𝕜} [HasCharge 𝕜 M α] (v : M) :
      (ιUEA 𝕜) (HeisenbergAlgebra.jgen 𝕜 0) v = α v
      noncomputable def VirasoroProject.heisenbergTri (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] :

      The triangular decomposition of the Heisenberg algebra with upper and lower (essentially nilpotent) parts spanned by the Jₖ with positive and negative k, respectively, and the Cartan subalgebra spanned by J₀ and the central element K.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem VirasoroProject.heisenbergTri_upper (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] :
        (heisenbergTri 𝕜).upper = Submodule.span 𝕜 ((fun (n : ) => HeisenbergAlgebra.jgen 𝕜 n) '' {n : | 0 < n})
        theorem VirasoroProject.heisenbergTri_lower (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] :
        (heisenbergTri 𝕜).lower = Submodule.span 𝕜 ((fun (n : ) => HeisenbergAlgebra.jgen 𝕜 n) '' {n : | n < 0})
        noncomputable def VirasoroProject.heisenbergTriCartanBasis (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] :

        The basis of the Cartan part of the Heisenberg triangular decomposition.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          noncomputable def VirasoroProject.HeisenbergAlgebra.hw (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
          (heisenbergTri 𝕜).cartan →ₗ[𝕜] 𝕜

          The highest weight of Heisenberg algebra determined by charge α (J₀-eigenvalue). The K-eigenvalue is by convention normalized to 1 by default.

          Equations
          Instances For
            noncomputable def VirasoroProject.heisenbergTriKgen (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] :
            ((heisenbergTri 𝕜).part 0)

            The Heisenberg generator K as an element of the Cartan subalgebra.

            Equations
            Instances For
              noncomputable def VirasoroProject.heisenbergTriJzero (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] :
              ((heisenbergTri 𝕜).part 0)

              The Heisenberg generator J₀ as an element of the Cartan subalgebra.

              Equations
              Instances For
                theorem VirasoroProject.heisenbergTri_jgen_pos_mem_upper (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] {n : } (n_pos : 0 < n) :
                theorem VirasoroProject.HeisenbergAlgebra.hw_apply_kgen (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                (hw 𝕜 α) (heisenbergTriKgen 𝕜) = 1
                theorem VirasoroProject.HeisenbergAlgebra.hw_apply_jzero (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                (hw 𝕜 α) (heisenbergTriJzero 𝕜) = α
                @[reducible, inline]
                abbrev VirasoroProject.ChargedFockSpace (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                Type u_1

                The charged Fock space with charge α.

                Equations
                Instances For
                  @[reducible, inline]
                  noncomputable abbrev VirasoroProject.ChargedFockSpace.vacuum (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :

                  The vacuum vector in the charged Fock space with charge α.

                  Equations
                  Instances For
                    theorem VirasoroProject.ChargedFockSpace.vacuum_cyclic (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                    𝓤 𝕜 (HeisenbergAlgebra 𝕜) vacuum 𝕜 α =
                    theorem VirasoroProject.ChargedFockSpace.jgen_pos_vacuum (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) {k : } (k_pos : 0 < k) :
                    (ιUEA 𝕜) (HeisenbergAlgebra.jgen 𝕜 k) vacuum 𝕜 α = 0

                    Jₖ • vacuum(α) = 0 for k > 0

                    theorem VirasoroProject.ChargedFockSpace.jgen_zero_vacuum (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                    (ιUEA 𝕜) (HeisenbergAlgebra.jgen 𝕜 0) vacuum 𝕜 α = α vacuum 𝕜 α
                    theorem VirasoroProject.ChargedFockSpace.kgen_vacuum (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                    (ιUEA 𝕜) (HeisenbergAlgebra.kgen 𝕜) vacuum 𝕜 α = vacuum 𝕜 α
                    theorem VirasoroProject.ChargedFockSpace.kgen_smul (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) (v : ChargedFockSpace 𝕜 α) :
                    (ιUEA 𝕜) (HeisenbergAlgebra.kgen 𝕜) v = v

                    J₀ • v = α • v for all v in ChargedFockSpace 𝕜 α

                    theorem VirasoroProject.ChargedFockSpace.jgen_zero_smul (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) (v : ChargedFockSpace 𝕜 α) :
                    (ιUEA 𝕜) (HeisenbergAlgebra.jgen 𝕜 0) v = α v

                    J₀ • v = α • v for all v in ChargedFockSpace 𝕜 α

                    instance VirasoroProject.instHasUnitCentralChargedFockSpace (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :

                    The charged Fock space with charge α has K action by unit scalar.

                    instance VirasoroProject.instHasChargeChargedFockSpace (𝕜 : Type u_1) [Field 𝕜] [CharZero 𝕜] (α : 𝕜) :
                    HasCharge 𝕜 (ChargedFockSpace 𝕜 α) α

                    The charged Fock space with charge α has charge α.