Documentation

Mathlib.Algebra.Vertex.HVertexOperator

Vertex operators #

In this file we introduce heterogeneous vertex operators using Hahn series. When R = ℂ, V = W, and Γ = ℤ, then this is the usual notion of "meromorphic left-moving 2D field". The notion we use here allows us to consider composites and scalar-multiply by multivariable Laurent series.

Definitions #

Main results #

TODO #

References #

@[reducible, inline]
abbrev HVertexOperator (Γ : Type u_5) [PartialOrder Γ] (R : Type u_6) [CommRing R] (V : Type u_7) (W : Type u_8) [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] :
Type (max u_7 u_8 u_5)

A heterogeneous Γ-vertex operator over a commutator ring R is an R-linear map from an R-module V to Γ-Hahn series with coefficients in an R-module W.

Equations
Instances For
    theorem HVertexOperator.ext_iff {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] {A : HVertexOperator Γ R V W} {B : HVertexOperator Γ R V W} :
    A = B ∀ (v : V), A v = B v
    theorem HVertexOperator.ext {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ R V W) (h : ∀ (v : V), A v = B v) :
    A = B
    @[deprecated HVertexOperator.ext]
    theorem VertexAlg.HetVertexOperator.ext {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ R V W) (h : ∀ (v : V), A v = B v) :
    A = B

    Alias of HVertexOperator.ext.

    @[simp]
    theorem HVertexOperator.coeff_apply {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (n : Γ) (v : V) :
    (A.coeff n) v = ((HahnModule.of R).symm (A v)).coeff n
    def HVertexOperator.coeff {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (n : Γ) :

    The coefficient of a heterogeneous vertex operator, viewed as a formal power series with coefficients in linear maps.

    Equations
    • A.coeff n = { toFun := fun (v : V) => ((HahnModule.of R).symm (A v)).coeff n, map_add' := , map_smul' := }
    Instances For
      @[deprecated HVertexOperator.coeff]
      def VertexAlg.coeff {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (n : Γ) :

      Alias of HVertexOperator.coeff.


      The coefficient of a heterogeneous vertex operator, viewed as a formal power series with coefficients in linear maps.

      Equations
      Instances For
        theorem HVertexOperator.coeff_isPWOsupport {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (v : V) :
        (Function.support ((HahnModule.of R).symm (A v)).coeff).IsPWO
        @[deprecated HVertexOperator.coeff_isPWOsupport]
        theorem VertexAlg.coeff_isPWOsupport {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (v : V) :
        (Function.support ((HahnModule.of R).symm (A v)).coeff).IsPWO

        Alias of HVertexOperator.coeff_isPWOsupport.

        theorem HVertexOperator.coeff_inj_iff {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] {a₁ : HVertexOperator Γ R V W} {a₂ : HVertexOperator Γ R V W} :
        a₁ = a₂ a₁.coeff = a₂.coeff
        theorem HVertexOperator.coeff_inj {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] :
        Function.Injective HVertexOperator.coeff
        @[deprecated HVertexOperator.coeff_inj]
        theorem VertexAlg.coeff_inj {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] :
        Function.Injective HVertexOperator.coeff

        Alias of HVertexOperator.coeff_inj.

        @[simp]
        theorem HVertexOperator.of_coeff_apply {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (f : ΓV →ₗ[R] W) (hf : ∀ (x : V), (Function.support fun (x_1 : Γ) => (f x_1) x).IsPWO) (x : V) :
        (HVertexOperator.of_coeff f hf) x = (HahnModule.of R) { coeff := fun (g : Γ) => (f g) x, isPWO_support' := }
        def HVertexOperator.of_coeff {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (f : ΓV →ₗ[R] W) (hf : ∀ (x : V), (Function.support fun (x_1 : Γ) => (f x_1) x).IsPWO) :

        Given a coefficient function valued in linear maps satisfying a partially well-ordered support condition, we produce a heterogeneous vertex operator.

        Equations
        Instances For
          @[deprecated HVertexOperator.of_coeff]
          def VertexAlg.HetVertexOperator.of_coeff {Γ : Type u_1} [PartialOrder Γ] {R : Type u_2} {V : Type u_3} {W : Type u_4} [CommRing R] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (f : ΓV →ₗ[R] W) (hf : ∀ (x : V), (Function.support fun (x_1 : Γ) => (f x_1) x).IsPWO) :

          Alias of HVertexOperator.of_coeff.


          Given a coefficient function valued in linear maps satisfying a partially well-ordered support condition, we produce a heterogeneous vertex operator.

          Equations
          Instances For
            @[simp]
            theorem HVertexOperator.compHahnSeries_coeff {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) (u : U) (g' : Γ') :
            (A.compHahnSeries B u).coeff g' = A ((B.coeff g') u)
            def HVertexOperator.compHahnSeries {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) (u : U) :

            The composite of two heterogeneous vertex operators acting on a vector, as an iterated Hahn series.

            Equations
            • A.compHahnSeries B u = { coeff := fun (g' : Γ') => A ((B.coeff g') u), isPWO_support' := }
            Instances For
              @[simp]
              theorem HVertexOperator.compHahnSeries_add {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) (u : U) (v : U) :
              A.compHahnSeries B (u + v) = A.compHahnSeries B u + A.compHahnSeries B v
              @[simp]
              theorem HVertexOperator.compHahnSeries_smul {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) (r : R) (u : U) :
              A.compHahnSeries B (r u) = r A.compHahnSeries B u
              @[simp]
              theorem HVertexOperator.comp_apply {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) (u : U) :
              (A.comp B) u = (HahnModule.of R) (A.compHahnSeries B u).ofIterate
              def HVertexOperator.comp {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) :
              HVertexOperator (Lex (Γ' × Γ)) R U W

              The composite of two heterogeneous vertex operators, as a heterogeneous vertex operator.

              Equations
              • A.comp B = { toFun := fun (u : U) => (HahnModule.of R) (A.compHahnSeries B u).ofIterate, map_add' := , map_smul' := }
              Instances For
                @[simp]
                theorem HVertexOperator.comp_coeff {Γ : Type u_5} {Γ' : Type u_6} [OrderedCancelAddCommMonoid Γ] [OrderedCancelAddCommMonoid Γ'] {R : Type u_7} [CommRing R] {U : Type u_8} {V : Type u_9} {W : Type u_10} [AddCommGroup U] [Module R U] [AddCommGroup V] [Module R V] [AddCommGroup W] [Module R W] (A : HVertexOperator Γ R V W) (B : HVertexOperator Γ' R U V) (g : Lex (Γ' × Γ)) :
                (A.comp B).coeff g = A.coeff (ofLex g).2 ∘ₗ B.coeff (ofLex g).1