Lie Algebras With Basis#

AUTHORS:

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

class sage.categories.lie_algebras_with_basis.LieAlgebrasWithBasis(base_category)#

Bases: sage.categories.category_with_axiom.CategoryWithAxiom_over_base_ring

Category of Lie algebras with a basis.

class ElementMethods#

Bases: object

lift()#

Lift self to the universal enveloping algebra.

EXAMPLES:

sage: S = SymmetricGroup(3).algebra(QQ)
sage: L = LieAlgebra(associative=S)
sage: x = L.gen(3)
sage: y = L.gen(1)
sage: x.lift()
b3
sage: y.lift()
b1
sage: x * y
b1*b3 + b4 - b5
to_vector(order=None)#

Return the vector in g.module() corresponding to the element self of g (where g is the parent of self).

Implement this if you implement g.module(). See sage.categories.lie_algebras.LieAlgebras.module() for how this is to be done.

EXAMPLES:

sage: L = LieAlgebras(QQ).FiniteDimensional().WithBasis().example()
sage: L.an_element().to_vector()
(0, 0, 0)

Todo

Doctest this implementation on an example not overshadowed.

Graded#

alias of sage.categories.graded_lie_algebras_with_basis.GradedLieAlgebrasWithBasis

class ParentMethods#

Bases: object

bracket_on_basis(x, y)#

Return the bracket of basis elements indexed by x and y where x < y. If this is not implemented, then the method _bracket_() for the elements must be overwritten.

EXAMPLES:

sage: L = LieAlgebras(QQ).WithBasis().example()
sage: L.bracket_on_basis(Partition([3,1]), Partition([2,2,1,1]))
0
dimension()#

Return the dimension of self.

EXAMPLES:

sage: L = LieAlgebras(QQ).FiniteDimensional().WithBasis().example()
sage: L.dimension()
3
sage: L = LieAlgebra(QQ, 'x,y', {('x','y'): {'x':1}})
sage: L.dimension()
2
from_vector(v, order=None, coerce=False)#

Return the element of self corresponding to the vector v in self.module().

Implement this if you implement module(); see the documentation of sage.categories.lie_algebras.LieAlgebras.module() for how this is to be done.

EXAMPLES:

sage: L = LieAlgebras(QQ).FiniteDimensional().WithBasis().example()
sage: u = L.from_vector(vector(QQ, (1, 0, 0))); u
(1, 0, 0)
sage: parent(u) is L
True
module()#

Return an \(R\)-module which is isomorphic to the underlying \(R\)-module of self.

See sage.categories.lie_algebras.LieAlgebras.module() for an explanation.

EXAMPLES:

sage: L = LieAlgebras(QQ).WithBasis().example()
sage: L.module()
Free module generated by Partitions over Rational Field
pbw_basis(basis_key=None, **kwds)#

Return the Poincare-Birkhoff-Witt basis of the universal enveloping algebra corresponding to self.

EXAMPLES:

sage: L = lie_algebras.sl(QQ, 2)
sage: PBW = L.pbw_basis()
poincare_birkhoff_witt_basis(basis_key=None, **kwds)#

Return the Poincare-Birkhoff-Witt basis of the universal enveloping algebra corresponding to self.

EXAMPLES:

sage: L = lie_algebras.sl(QQ, 2)
sage: PBW = L.pbw_basis()
example(gens=None)#

Return an example of a Lie algebra as per Category.example.

EXAMPLES:

sage: LieAlgebras(QQ).WithBasis().example()
An example of a Lie algebra: the abelian Lie algebra on the
 generators indexed by Partitions over Rational Field

Another set of generators can be specified as an optional argument:

sage: LieAlgebras(QQ).WithBasis().example(Compositions())
An example of a Lie algebra: the abelian Lie algebra on the
 generators indexed by Compositions of non-negative integers
 over Rational Field