Kac-Moody Algebras With Triangular Decomposition Basis#

AUTHORS:

  • Travis Scrimshaw (07-15-2017): Initial implementation

class sage.categories.triangular_kac_moody_algebras.TriangularKacMoodyAlgebras(base, name=None)#

Bases: Category_over_base_ring

Category of Kac-Moody algebras with a distinguished basis that respects the triangular decomposition.

We require that the grading group is the root lattice of the appropriate Cartan type.

class ElementMethods#

Bases: object

part()#

Return whether the element v is in the lower, zero, or upper part of self.

OUTPUT:

\(-1\) if v is in the lower part, \(0\) if in the zero part, or \(1\) if in the upper part

EXAMPLES:

sage: # needs sage.combinat sage.modules
sage: L = LieAlgebra(QQ, cartan_type="F4")
sage: L.inject_variables()
Defining e1, e2, e3, e4, f1, f2, f3, f4, h1, h2, h3, h4
sage: e1.part()
1
sage: f4.part()
-1
sage: (h2 + h3).part()
0
sage: (f1.bracket(f2) + 4*f4).part()
-1
sage: (e1 + f1).part()
Traceback (most recent call last):
...
ValueError: element is not in one part
class ParentMethods#

Bases: object

e(i=None)#

Return the generators \(e\) of self.

INPUT:

  • i – (optional) if specified, return just the generator \(e_i\)

EXAMPLES:

sage: L = lie_algebras.so(QQ, 5)                                        # needs sage.combinat sage.modules
sage: L.e()                                                             # needs sage.combinat sage.modules
Finite family {1: E[alpha[1]], 2: E[alpha[2]]}
sage: L.e(1)                                                            # needs sage.combinat sage.modules
E[alpha[1]]
f(i=None)#

Return the generators \(f\) of self.

INPUT:

  • i – (optional) if specified, return just the generator \(f_i\)

EXAMPLES:

sage: L = lie_algebras.so(QQ, 5)                                        # needs sage.combinat sage.modules
sage: L.f()                                                             # needs sage.combinat sage.modules
Finite family {1: E[-alpha[1]], 2: E[-alpha[2]]}
sage: L.f(1)                                                            # needs sage.combinat sage.modules
E[-alpha[1]]
verma_module(la, basis_key=None, **kwds)#

Return the Verma module with highest weight la over self.

INPUT:

  • basis_key – (optional) a key function for the indexing set of the basis elements of self

EXAMPLES:

sage: # needs sage.combinat sage.modules
sage: L = lie_algebras.sl(QQ, 3)
sage: P = L.cartan_type().root_system().weight_lattice()
sage: La = P.fundamental_weights()
sage: M = L.verma_module(La[1] + La[2])
sage: M
Verma module with highest weight Lambda[1] + Lambda[2]
 of Lie algebra of ['A', 2] in the Chevalley basis
super_categories()#

EXAMPLES:

sage: from sage.categories.triangular_kac_moody_algebras import TriangularKacMoodyAlgebras
sage: TriangularKacMoodyAlgebras(QQ).super_categories()
[Join of Category of graded Lie algebras with basis over Rational Field
     and Category of kac moody algebras over Rational Field]