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)[source]¶
- Bases: - CategoryWithAxiom_over_base_ring- Category of finite dimensional nilpotent Lie algebras with basis. - class ParentMethods[source]¶
- Bases: - object- is_nilpotent()[source]¶
- Return - Truesince- selfis nilpotent.- EXAMPLES: - sage: L = LieAlgebra(QQ, {('x','y'): {'z': 1}}, nilpotent=True) # needs sage.combinat sage.modules sage: L.is_nilpotent() # needs sage.combinat sage.modules True - >>> from sage.all import * >>> L = LieAlgebra(QQ, {('x','y'): {'z': Integer(1)}}, nilpotent=True) # needs sage.combinat sage.modules >>> L.is_nilpotent() # needs sage.combinat sage.modules True 
 - lie_group(name='G', **kwds)[source]¶
- 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) # needs sage.combinat sage.modules sage: G = L.lie_group('G'); G # needs sage.combinat sage.modules sage.symbolic Lie group G of Heisenberg algebra of rank 1 over Rational Field - >>> from sage.all import * >>> L = lie_algebras.Heisenberg(QQ, Integer(1)) # needs sage.combinat sage.modules >>> G = L.lie_group('G'); G # needs sage.combinat sage.modules sage.symbolic Lie group G of Heisenberg algebra of rank 1 over Rational Field - We test multiplying elements of the group: - sage: # needs sage.combinat sage.modules sage.symbolic 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) - >>> from sage.all import * >>> # needs sage.combinat sage.modules sage.symbolic >>> p, q, z = L.basis() >>> g = G.exp(p); g exp(p1) >>> h = G.exp(q); h exp(q1) >>> 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 # needs sage.combinat sage.modules sage.symbolic Vector field X on the Lie group G of Heisenberg algebra of rank 1 over Rational Field sage: X.at(G.one()).display() # needs sage.combinat sage.modules sage.symbolic X = 2 ∂/∂x_0 + 3 ∂/∂x_1 sage: X.display() # needs sage.combinat sage.modules sage.symbolic X = 2 ∂/∂x_0 + 3 ∂/∂x_1 + (3/2*x_0 - x_1) ∂/∂x_2 - >>> from sage.all import * >>> X = G.left_invariant_extension(Integer(2)*p + Integer(3)*q, name='X'); X # needs sage.combinat sage.modules sage.symbolic Vector field X on the Lie group G of Heisenberg algebra of rank 1 over Rational Field >>> X.at(G.one()).display() # needs sage.combinat sage.modules sage.symbolic X = 2 ∂/∂x_0 + 3 ∂/∂x_1 >>> X.display() # needs sage.combinat sage.modules sage.symbolic X = 2 ∂/∂x_0 + 3 ∂/∂x_1 + (3/2*x_0 - x_1) ∂/∂x_2 - See also 
 - step()[source]¶
- Return the nilpotency step of - self.- EXAMPLES: - sage: # needs sage.combinat sage.modules 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 - >>> from sage.all import * >>> # needs sage.combinat sage.modules >>> L = LieAlgebra(QQ, {('X','Y'): {'Z': Integer(1)}}, nilpotent=True) >>> L.step() 2 >>> sc = {('X','Y'): {'Z': Integer(1)}, ('X','Z'): {'W': Integer(1)}} >>> LieAlgebra(QQ, sc, nilpotent=True).step() 3