Finite Dimensional Nilpotent Lie Algebras With Basis

AUTHORS:

  • Eero Hakavuori (2018-08-16): initial version
class sage.categories.finite_dimensional_nilpotent_lie_algebras_with_basis.FiniteDimensionalNilpotentLieAlgebrasWithBasis(base_category)

Bases: sage.categories.category_with_axiom.CategoryWithAxiom_over_base_ring

Category of finite dimensional nilpotent Lie algebras with basis.

class ParentMethods
is_nilpotent()

Return True since self is nilpotent.

EXAMPLES:

sage: L = LieAlgebra(QQ, {('x','y'): {'z': 1}}, nilpotent=True)
sage: L.is_nilpotent()
True
lie_group(name='G', **kwds)

Return the Lie group associated to self.

INPUT:

  • name – string (default: 'G'); the name (symbol) given to the Lie group

EXAMPLES:

We define the Heisenberg group:

sage: L = lie_algebras.Heisenberg(QQ, 1)
sage: G = L.lie_group('G'); G
Lie group G of Heisenberg algebra of rank 1 over Rational Field

We test multiplying elements of the group:

sage: p,q,z = L.basis()
sage: g = G.exp(p); g
exp(p1)
sage: h = G.exp(q); h
exp(q1)
sage: g*h
exp(p1 + q1 + 1/2*z)

We extend an element of the Lie algebra to a left-invariant vector field:

sage: X = G.left_invariant_extension(2*p + 3*q, name='X'); X
Vector field X on the Lie group G of Heisenberg algebra of rank 1 over Rational Field
sage: X.at(G.one()).display()
X = 2 d/dx_0 + 3 d/dx_1
sage: X.display()
X = 2 d/dx_0 + 3 d/dx_1 + (3/2*x_0 - x_1) d/dx_2
step()

Return the nilpotency step of self.

EXAMPLES:

sage: L = LieAlgebra(QQ, {('X','Y'): {'Z': 1}}, nilpotent=True)
sage: L.step()
2
sage: sc = {('X','Y'): {'Z': 1}, ('X','Z'): {'W': 1}}
sage: LieAlgebra(QQ, sc, nilpotent=True).step()
3