仿射根系基础¶
在无限维李代数中, Kac-Moody Lie algebras 是有限维单李代数的推广。它们包括有限维单李代数作为特例,但通常是无限维单李代数。有限维李群和李代数表示理论中的许多概念和结果推广到Kac-Moody李代数。这包括根系、Weyl群、权格、重要表示(可积的最高权表示)的控制权的参数化以及这些表示的Weyl特征标公式。
在Kac-Moody李代数中, affine Lie algebras 是一类重要的无穷维类,其无穷维可积的最高权表示是其表示中的一类重要类型。在这一节中,许多概念适用于一般的Kac-Moody李代数。但是,我们将讨论的代码主要用于仿射情况。这与一般情况有很大不同(而且很重要),值得特别关注。
在这一部分中,我们将回顾一些卡克-穆迪理论,包括 [Kac] 作为我们的主要参考资料。我们还建议 [KMPS]. 这两卷集包含数量表(在卷2中),例如弦函数和模特性,现在您可以在Sage中计算这些量。第一卷包含对仿射李代数及其表示的介绍,包括关于它们如何在弦论中产生的有价值的讨论。
在这一节和下一节中,我们还将解释Sage中有哪些工具可以使用这些工具进行计算。我们经常把自己限制在仿射李代数的情况下。
Cartan矩阵¶
看见 [Kac] 第一章为本主题。
定义Kac-Moody李代数的基本数据是 (generalized) Cartan matrix 。这是一个正方形矩阵 A = (a_{ij}) 其中对角线条目等于2并且非正的非对角线条目使得 a_{ij} = 0 当且仅当 a_{ji} = 0 。假设它是有用的 indecomposable 和 symmetrizable 。不可分解意味着它不能通过排列行和列而排列成两个对角块;而对称化意味着 DA 对某些可逆对角阵是对称的 D 。
Given a generalized Cartan matrix there is a vector space mathfrak{h} containing vectors alpha_i^vee (called simple coroots) and vectors alpha_i in mathfrak{h}^* (called simple roots) such that langle alpha_i^vee, alpha_j rangle = alpha_i^vee(alpha_j) = a_{ij}. Moreover there exists a Kac-Moody Lie algebra mathfrak{g} containing mathfrak{h} as an abelian subalgebra that is generated by mathfrak{h} and elements e_i and f_i such that
(这些条件并不能完全说明 mathfrak{g} ,但如果得到Serre关系的补充,它们就会做到,而我们既不需要也不会陈述这种关系。)
对角化假设的意义在于 mathfrak{g} 允许不变的对称双线性形式,因此具有Casimir算子和良好的表示理论。
的转置 A 也是一个对称化的不可分解的广义Cartan矩阵,所以有一个 dual Cartan type 其中根和冠根互换。
在Sage中,我们可以恢复Cartan矩阵,如下所示:
sage: RootSystem(['B',2]).cartan_matrix()
[ 2 -1]
[-2 2]
sage: RootSystem(['B',2,1]).cartan_matrix()
[ 2 0 -1]
[ 0 2 -1]
[-2 -2 2]
如果 det(A) = 0 并且它的零空间是一维的,那么 mathfrak{g} 是一种 affine Lie algebra ,如上面的第二个示例所示。
非扭曲仿射Kac-Moody李代数¶
One realization of affine Lie algebras, described in Chapter 7
of [Kac] begins with a finite-dimensional simple Lie algebra
mathfrak{g}^circ, with Cartan type X_ell (['X',l]
in Sage).
Tensoring with the Laurent polynomial ring gives the loop Lie algebra
mathfrak{g}^circ otimes CC[t,t^{-1}]. This is the Lie algebra of
vector fields in mathfrak{g}^circ on the circle. Then one may make
a central extension:
After that, it is convenient to adjoin another basis element, which acts on mathfrak{g}' as a derivation d. If mathfrak{h}^circ is a Cartan subalgebra of mathfrak{g}^circ, then we obtain a Cartan subalgebra mathfrak{h}' of mathfrak{g}' by adjoining the central element K, and then a Cartan subalgebra mathfrak{h} by further adjoining the derivation d.
The resulting Lie algebra mathfrak{g} is the untwisted affine
Lie algebra. The Cartan type is designated to be X_ell^{(1)}
in Kac' notation, which is rendered as ['X',l,1]
or "Xl~"
in Sage. The Dynkin diagram of this Cartan type is the
extended Dynkin-diagram of mathfrak{g}^circ:
sage: CartanType("E6~").dynkin_diagram()
O 0
|
|
O 2
|
|
O---O---O---O---O
1 3 4 5 6
E6~
从dykin图中,我们可以读出仿射Weyl群的生成元和关系,仿射Weyl群是一个有生成元的Coxeter群 s_i 2阶,如果通勤 i 和 j 在动态金图中不是相邻的,否则受辫子关系的影响。我们可以推断出的一些Levi子代数 mathfrak{g} ,省略了dykin图中的一个节点;特别是省略了“仿射节点” 0 赠送 E_6 ,也就是 mathfrak{g}^circ 。
The index set for the finite-dimensional Lie algebra mathfrak{g}^circ is I = {1, 2, ldots, ell}. This means we label the roots, coroots etc. by i in I. The index set for the affine Lie algebra mathfrak{g} adds one index 0 for the affine root alpha_0.
The subset of lambda in mathfrak{h}^* characterized by lambda(alpha_i^vee) in ZZ for the coroots alpha_i^vee is called the weight lattice P. There are two versions of the weight lattice, depending on whether we are working with mathfrak{g} or mathfrak{g}'. The weight lattice of mathfrak{g} is called the extended weight lattice. We may create these as follows:
sage: RootSystem("A2~").weight_lattice()
Weight lattice of the Root system of type ['A', 2, 1]
sage: RootSystem("A2~").weight_lattice(extended=True)
Extended weight lattice of the Root system of type ['A', 2, 1]
Referring to the extended lattice, the term lattice is a slight misnomer because P is not discrete; it contains all complex multiples of delta, which is orthogonal to the coroots. However the image of P in mathfrak{h}^* / CCdelta is a bona fide lattice. Indeed, the fundamental weights are vectors Lambda_i in mathfrak{h}^* such that Lambda_i(alpha_j^vee) = delta_{ij}, and then
The Weyl vector rho is the sum of the fundamental weights. This plays the role as does the classical Weyl vector, which also equals half the sum of the positive roots, in the theory of finite semisimple Lie algebras. The weight lattice P contains the root lattice Q, which is the lattice spanned by alpha_0, alpha_1, ldots, alpha_ell.
Usually there is an advantage to working with mathfrak{g} instead of mathfrak{g}'. (Thus we prefer the extended weight lattice, though this is not the default.) The reason for this is as follows. If V is a representation of mathfrak{g} then usually the weight spaces V_lambda, in a decomposition with respect to characters (weights) of mathfrak{h} are finite-dimensional; but the corresponding weight spaces for mathfrak{h}' would not be.
这种偏爱扩展权值晶格的规则也有例外。特别地,我们可以构造非平凡的不可约有限维表示 mathfrak{g}' ,并且这些不能被提升到 mathfrak{g} (尽管它们确实有无限维的相似之处)。这些特定的有限维表示具有晶体基础,其中包括Kirillov-Reshetikhin晶体。因此,对于Kirillov-Reshetikhin晶体,我们倾向于使用非扩展的重量晶格。看见 仿射有限晶体 。
扭曲型¶
There are also twisted types with Cartan type X_ell^{(m)}
or ['X',l,m]
where m is the order of an automorphism of
the Dynkin diagram of mathfrak{g}^circ. These are described
in [Kac] Chapter 8. Alternative descriptions of the twisted
types may be found in [Macdonald2003]. Examining the tables
Aff1, Aff2 and Aff3 in Chapter 4 of Kac, you will see that
each twisted type is dual to an untwisted type (except
A_{2ell}^{(2)}). For example the twisted type ['E',6,2]
(or E_6^{(2)}) in Aff2 is dual to the untwisted type
['F',4,1]
(or F_4^{(1)}).
请参阅上面的动态金图 ['E',6,1]
,如果我们将节点1和6以及节点3和5折叠在一起,我们就得到了 ['E',6,2]
**
sage: CartanType(['E',6,2]).dynkin_diagram()
O---O---O=<=O---O
0 1 2 3 4
F4~*
我们必须解释为什么Sage称之为Cartan类型 F4~*
。卡坦型 ['F',4,1]
通过将一个dykin节点添加到Cartan类型“F4”::
sage: CartanType(['F',4,1]).dynkin_diagram()
O---O---O=>=O---O
0 1 2 3 4
F4~
卡尔坦型 ['E',6,2]
和 ['F',4,1]
(缩写 F4~
)是对偶的,因为一个的长根对应于另一个的短根。(因此 alpha_0 , alpha_1 和 alpha_2 是的短根 ['E',6,2]
,它们是长长的根 ['F',4,1]
。)更一般地,每个扭曲仿射类型都是唯一的非扭曲类型的对偶,并且麦克唐纳约定将Cartan类型称为相应的非扭曲类型的对偶:
sage: CartanType(['F',4,1]).dual() == CartanType(['E',6,2])
True
根和权¶
一个Kac-Moody李代数 mathfrak{g} 有一个三角分解
哪里 mathfrak{n}_- 和 mathfrak{n}_+ 是局部幂零李代数。
如果 V 是一种 mathfrak{g} -模块,那么我们通常会有一个 weight space decomposition
where V_lambda is finite-dimensional, and where mathfrak{h} acts by X,v = lambda(X) v for X in mathfrak{h}, v in V_lambda. When V_lambda neq 0, the linear functional lambda is called a weight. The space V_lambda is called the weight space and its dimension is the multiplicity of the weight lambda.
作为特例, mathfrak{g} 是在伴随表示下的模,并且它有权空间分解。
的伴随表示中的非零权重 mathfrak{g} 单打独斗。与有限维情况相比,如果 mathcal{g} 是无限的Kac-Moody李代数有两种类型的根,称为 real 和 imaginary 。实根的重数为1,而虚根的重数可以为1 > 1 。在仿射Kac-Moody李代数的情况下,虚根具有有界的重数,而在非仿射的情况下,虚根的重数多少有点神秘。
根可以被分成在伴随表示中的根 mathfrak{h} 在……上面 mathfrak{n}_+ ,被称为 positive ,和那些在 mathfrak{n}_- ,被称为 negative 。
Returning to the general module V with a weight space decomposition, a vector in the module V that is annihilated by mathfrak{n}_+ is called a highest weight vector. If the space of highest weight vectors is one-dimensional, and if V is generated by a highest weight vector v then CC,v = V_lambda for a weight lambda, called the highest weight, and V is called a highest weight representation.
If lambda is any linear functional on mathfrak{h}, then there is a universal highest weight module M(lambda) such that any highest weight module with highest weight lambda is a quotient of M(lambda). In particular M(lambda) (which is also called a Verma module) has a unique irreducible quotient denoted L(lambda). Looking ahead to crystal bases, the infinity crystal mathcal{B}(infty) is a crystal base of the Verma module M(0).
一个磅秤 lambda in P 名为 dominant 如果
对于所有简单的Coroot alpha_i^vee 。让我们 P^+ 是一组占主导地位的权重。
重量有一个 level 它可以定义为它与正则中心元的内积 c 。每个权重都知道其级别::
sage: L = RootSystem(['E',6,1]).weight_lattice(extended=True)
sage: Lambda = L.fundamental_weights()
sage: [Lambda[i].level() for i in L.index_set()]
[1, 1, 2, 2, 3, 2, 1]
仿射根系与Weyl群¶
我们现在专门研究仿射Kac-Moody李代数及其根系。仿射根系和Weyl群的基本参考是 [Kac] 第六章。
In the untwisted affine case, the root system Delta contains a copy of the root system Delta^circ of mathfrak{g}^circ. The real roots consist of alpha + n delta with alpha in Delta^circ, and n in ZZ. The root is positive if either n = 0 and alpha in Delta^circ_+ or n > 0. The imaginary roots consist of n delta with n in ZZ nonzero. See [Kac], Proposition 6.3 for a description of the root system in the twisted affine case.
The multiplicity m(alpha) is the dimension of mathfrak{g}_alpha. It is 1 if alpha is a real root. For the untwisted affine Lie algebras, the multiplicity of an imaginary root is the rank ell of mathfrak{g}^circ. (For the twisted cases, see [Kac] Corollary 8.3.)
在大多数情况下,我们建议使用选项创建权重晶格 extended=True
**
sage: WL = RootSystem(['A',2,1]).weight_lattice(extended=True); WL
Extended weight lattice of the Root system of type ['A', 2, 1]
sage: WL.positive_roots()
Disjoint union of Family (Positive real roots of type ['A', 2, 1], Positive imaginary roots of type ['A', 2, 1])
sage: WL.simple_roots()
Finite family {0: 2*Lambda[0] - Lambda[1] - Lambda[2] + delta, 1: -Lambda[0] + 2*Lambda[1] - Lambda[2], 2: -Lambda[0] - Lambda[1] + 2*Lambda[2]}
sage: WL.weyl_group()
Weyl Group of type ['A', 2, 1] (as a matrix group acting on the extended weight lattice)
sage: WL.basic_imaginary_roots()[0]
delta
请注意,对于例外组,索引的顺序不同于 [Kac]. 这是因为Sage使用Bourbaki对根的排序,而Kac不使用。因此,在Bourbaki(和Sage)中 G_2 短根是 alpha_1 **
sage: CartanType(['G',2,1]).dynkin_diagram()
3
O=<=O---O
1 2 0
G2~
相比之下,在KAC, alpha_2 是短根。
标签和Coxeter编号¶
某些常量 a_i 为折点添加标签 i = 0, ldots, ell 在的表Aff1、AFF2和Aff3中 [Kac] 第四章。它们被称为 labels 由Kac和 marks 在……里面 [KMPS]. 他们在这一理论中扮演着重要的角色。在Sage中,它们如下所示:
sage: CartanType(['B',5,1]).a()
Finite family {0: 1, 1: 1, 2: 2, 3: 2, 4: 2, 5: 2}
列向量 a 使用这些条目,将跨越 A **
sage: RS = RootSystem(['E',6,2]); RS
Root system of type ['F', 4, 1]^*
sage: A = RS.cartan_matrix(); A
[ 2 -1 0 0 0]
[-1 2 -1 0 0]
[ 0 -1 2 -2 0]
[ 0 0 -1 2 -1]
[ 0 0 0 -1 2]
sage: ann = Matrix([[v] for v in RS.cartan_type().a()]); ann
[1]
[2]
[3]
[2]
[1]
sage: A*ann
[0]
[0]
[0]
[0]
[0]
The nullroot delta = sum_{iin I} a_i alpha_i:
sage: WL = RootSystem('C3~').weight_lattice(extended=True); WL
Extended weight lattice of the Root system of type ['C', 3, 1]
sage: sum(WL.cartan_type().a()[i]*WL.simple_root(i) for i in WL.cartan_type().index_set())
delta
The number h = sum_{iin I} a_i is called the Coxeter number. In the untwisted case it is the order of a Coxeter element of the finite Weyl group of mathfrak{g}^circ. The dual Coxeter number h^vee is the Coxeter number of the dual root system. It appears frequently in representation theory. The Coxeter number and dual Coxeter number may be computed as follow:
sage: sum(CartanType(['F',4,1]).a()) # Coxeter number
12
sage: sum(CartanType(['F',4,1]).dual().a()) # Dual Coxeter number
9
韦尔集团¶
The ambient space of the root system comes with an (indefinite) inner product. The real roots have nonzero length but the imaginary roots are isotropic. If alpha is a real root we may define a reflection r_alpha in the hyperplane orthogonal to alpha. In particular the ell+1 reflections s_i with respect to the simple positive roots alpha_i (i = 0, 1, 2, ldots, ell) generate a Coxeter group. This is the Weyl group W.
说明如何使用Sage计算 W 在权重晶格上:
sage: L = RootSystem("A2~").weight_lattice(extended=True)
sage: Lambda = L.fundamental_weights()
sage: delta = L.null_root()
sage: W = L.weyl_group(prefix="s")
sage: s0,s1,s2 = W.simple_reflections()
sage: [(s0*s1*s2*s1).action(x) - x for x in Lambda]
[-2*Lambda[0] + Lambda[1] + Lambda[2] - delta,
-2*Lambda[0] + Lambda[1] + Lambda[2] - 2*delta,
-2*Lambda[0] + Lambda[1] + Lambda[2] - 2*delta]
sage: [s0.action(x) for x in Lambda]
[-Lambda[0] + Lambda[1] + Lambda[2] - delta, Lambda[1], Lambda[2]]
sage: s0.action(delta)
delta
推广的仿射Weyl群¶
The subgroup W^circ generated by s_1, ldots, s_ell is a finite Coxeter group that may be identified with the Weyl group of the finite-dimensional simple Lie algebra mathfrak{g}^circ.
Geometrically, W may be interpreted as the semidirect product of the finite Weyl group W^circ by a discrete group of translations Q^vee isomorphic to the coroot lattice. A larger extended affine Weyl group is the semidirect product of W^circ by the coweight lattice P^vee. If P^vee is strictly larger than Q^vee this is not a Coxeter group but arises naturally in many problems. It may be constructed in Sage as follows:
sage: E = ExtendedAffineWeylGroup(["A",2,1]); E
Extended affine Weyl group of type ['A', 2, 1]
请参阅中的文档 extended_affine_weyl_group
如果你需要的话。