# ConformalBlocks -- for vector bundles of conformal blocks on the moduli space of curves

## Description

Vector bundles of conformal blocks are vector bundles on the moduli stack of Deligne-Mumford stable n-pointed genus g curves $\bar{M}_{g,n}$ that arise in conformal field theory. Each triple $(\mathbf{g},l,(\lambda_1,...,\lambda_n))$ with $\mathbf{g}$ a simple Lie algebra, $l$ a nonnegative integer called the level, and $(\lambda_1,...,\lambda_n)$ an n-tuple of dominant integral weights of $\mathbf{g}$ specifies a conformal block bundle $V=V(\mathbf{g},l,(\lambda_1,...,\lambda_n))$. This package computes ranks and first Chern classes of conformal block bundles on $\bar{M}_{0,n}$ using formulas from Fakhruddin's paper [Fakh].

Most of the functions are in this package are for $S_n$ symmetric divisors and/or symmetrizations of divisors, but a few functions are included for non-symmetric divisors as well.

Some of the documentation nodes refer to books, papers, and preprints. Here is a link to the Bibliography.

Between versions 1.x and 2.0, the package was rewritten in a more object-oriented way, and the basic Lie algebra functions were moved into a separate package called LieTypes.

## Author

• Dave Swinarski

## Certification

Version 0.5 of this package was accepted for publication in volume 8 of The Journal of Software for Algebra and Geometry on 2 August 2018, in the article Software for computing conformal block divisors on bar M_0,n. That version can be obtained from the journal or from the Macaulay2 source code repository.

## Version

This documentation describes version 2.4 of ConformalBlocks.

## Source code

The source code from which this documentation is derived is in the file ConformalBlocks.m2.

## Exports

• Types
• ConformalBlockVectorBundle -- the class of conformal block vector bundles on the moduli space of n-pointed genus g curves
• SymmetricDivisorM0nbar -- the class of S_n symmetric divisors on the moduli space of stable n-pointed genus 0 curves
• Functions and commands
• Methods
• - SymmetricDivisorM0nbar -- negate a symmetric divisor
• "basisOfSymmetricCurves(ZZ)" -- see basisOfSymmetricCurves -- produces a basis of symmetric curves
• "canonicalDivisorM0nbar(ZZ)" -- see canonicalDivisorM0nbar -- returns the class of the canonical divisor on the moduli space of stable n-pointed genus 0 curves
• "coefficientList(SymmetricDivisorM0nbar)" -- see coefficientList -- the coefficients of a symmetric divisor D in the standard basis
• "conformalBlockDegreeM04bar(ConformalBlockVectorBundle)" -- see conformalBlockDegreeM04bar -- computes the degree of a conformal block bundle on $\bar{M}_{0,4}$
• "conformalBlockRank(ConformalBlockVectorBundle)" -- see conformalBlockRank -- computes the rank of the conformal block vector bundle
• "conformalBlockVectorBundle(LieAlgebra,ZZ,List,ZZ)" -- see conformalBlockVectorBundle -- creates an object of class ConformalBlockVectorBundle
• "FCurveDotConformalBlockDivisor(List,ConformalBlockVectorBundle)" -- see FCurveDotConformalBlockDivisor -- intersection of an F-curve with a conformal block divisor
• "FdotBjIntMat(ZZ)" -- see FdotBjIntMat -- matrix of intersection numbers between F-curves and divisors on $\bar{M}_{0,n}$
• "isExtremalSymmetricFDivisor(SymmetricDivisorM0nbar)" -- see isExtremalSymmetricFDivisor -- tests whether an S_n symmetric divisor spans an extremal ray of the cone of symmetric F-divisors
• "isSymmetricFDivisor(SymmetricDivisorM0nbar)" -- see isSymmetricFDivisor -- checks whether a symmetric divisor intersects all the F-curves nonnegatively
• "kappaDivisorM0nbar(ZZ)" -- see kappaDivisorM0nbar -- the class of the divisor kappa
• "killsCurves(SymmetricDivisorM0nbar)" -- see killsCurves -- given an S_n symmetric divisor D, produces a list of symmetric F-curves C such that C dot D = 0
• Number * SymmetricDivisorM0nbar -- multiply a symmetric divisor by a number
• "psiDivisorM0nbar(ZZ)" -- see psiDivisorM0nbar -- returns the class of the divisor $\Psi$
• "scale(SymmetricDivisorM0nbar)" -- see scale -- reduces a list or divisor by the gcd of its coefficients
• "symmetricCurveDotDivisorM0nbar(List,SymmetricDivisorM0nbar)" -- see symmetricCurveDotDivisorM0nbar -- the intersection number of a symmetric F-curve C with the symmetric divisor D
• "symmetricDivisorM0nbar(ZZ,Expression)" -- see symmetricDivisorM0nbar -- create a symmetric divisor on the moduli space of stable pointed genus 0 curves
• "symmetricDivisorM0nbar(ZZ,IndexedVariable)" -- see symmetricDivisorM0nbar -- create a symmetric divisor on the moduli space of stable pointed genus 0 curves
• "symmetricDivisorM0nbar(ZZ,List)" -- see symmetricDivisorM0nbar -- create a symmetric divisor on the moduli space of stable pointed genus 0 curves
• SymmetricDivisorM0nbar + SymmetricDivisorM0nbar -- add two $S_n$ symmetric divisors
• SymmetricDivisorM0nbar == SymmetricDivisorM0nbar -- test equality of two symmetric divisor classes on $\bar{M}_{0,n}$
• "symmetricFCurves(ZZ)" -- see symmetricFCurves -- a list of all symmetric F-curves given n
• "symmetrizedConformalBlockDivisor(ConformalBlockVectorBundle)" -- see symmetrizedConformalBlockDivisor -- computes the symmetrization of the first Chern class of a conformal block vector bundle

## For the programmer

The object ConformalBlocks is .