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 #
HVertexOperator: AnR-linear map from anR-moduleVtoHahnModule Γ W.- The coefficient function as an 
R-linear map. - Composition of heterogeneous vertex operators - values are Hahn series on lex order product.
 
Main results #
- Ext
 
TODO #
- curry for tensor product inputs
 - more API to make ext comparisons easier.
 - formal variable API, e.g., like the 
Tfunction for Laurent polynomials. 
References #
- [R. Borcherds, Vertex Algebras, Kac-Moody Algebras, and the Monster][borcherds1986vertex]
 
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
- HVertexOperator Γ R V W = (V →ₗ[R] HahnModule Γ R W)
 
Instances For
The coefficients of a heterogeneous vertex operator, viewed as a linear map to formal power series with coefficients in linear maps.
Equations
- One or more equations did not get rendered due to their size.
 
Instances For
Given a coefficient function valued in linear maps satisfying a partially well-ordered support condition, we produce a heterogeneous vertex operator.
Equations
- HVertexOperator.of_coeff f hf = { toFun := fun (x : V) => (HahnModule.of R) { coeff := fun (g : Γ) => (f g) x, isPWO_support' := ⋯ }, map_add' := ⋯, map_smul' := ⋯ }
 
Instances For
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 ((HVertexOperator.coeff B g') u), isPWO_support' := ⋯ }
 
Instances For
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' := ⋯ }