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: L = LieAlgebra(QQ, cartan_type="F4")                              # optional - sage.combinat sage.modules
sage: L.inject_variables()                                              # optional - sage.combinat sage.modules
Defining e1, e2, e3, e4, f1, f2, f3, f4, h1, h2, h3, h4
sage: e1.part()                                                         # optional - sage.combinat sage.modules
1
sage: f4.part()                                                         # optional - sage.combinat sage.modules
-1
sage: (h2 + h3).part()                                                  # optional - sage.combinat sage.modules
0
sage: (f1.bracket(f2) + 4*f4).part()                                    # optional - sage.combinat sage.modules
-1
sage: (e1 + f1).part()                                                  # optional - sage.combinat sage.modules
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)                                        # optional - sage.combinat sage.modules
sage: L.e()                                                             # optional - sage.combinat sage.modules
Finite family {1: E[alpha[1]], 2: E[alpha[2]]}
sage: L.e(1)                                                            # optional - 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)                                        # optional - sage.combinat sage.modules
sage: L.f()                                                             # optional - sage.combinat sage.modules
Finite family {1: E[-alpha[1]], 2: E[-alpha[2]]}
sage: L.f(1)                                                            # optional - 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: L = lie_algebras.sl(QQ, 3)                                        # optional - sage.combinat sage.modules
sage: P = L.cartan_type().root_system().weight_lattice()                # optional - sage.combinat sage.modules
sage: La = P.fundamental_weights()                                      # optional - sage.combinat sage.modules
sage: M = L.verma_module(La[1] + La[2])                                 # optional - sage.combinat sage.modules
sage: M                                                                 # optional - sage.combinat sage.modules
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]