Lie Algebras With Basis#
AUTHORS:
Travis Scrimshaw (07-15-2013): Initial implementation
- class sage.categories.lie_algebras_with_basis.LieAlgebrasWithBasis(base_category)#
Bases:
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) # optional - sage.groups sage: L = LieAlgebra(associative=S) # optional - sage.groups sage: x = L.gen(3) # optional - sage.groups sage: y = L.gen(1) # optional - sage.groups sage: x.lift() # optional - sage.groups b3 sage: y.lift() # optional - sage.groups b1 sage: x * y # optional - sage.groups b1*b3 + b4 - b5
- to_vector(order=None)#
Return the vector in
g.module()
corresponding to the elementself
ofg
(whereg
is the parent ofself
).Implement this if you implement
g.module()
. Seesage.categories.lie_algebras.LieAlgebras.module()
for how this is to be done.EXAMPLES:
sage: L = LieAlgebras(QQ).FiniteDimensional().WithBasis().example() # optional - sage.modules sage: L.an_element().to_vector() # optional - sage.modules (0, 0, 0)
Todo
Doctest this implementation on an example not overshadowed.
- Graded#
alias of
GradedLieAlgebrasWithBasis
- class ParentMethods#
Bases:
object
- bracket_on_basis(x, y)#
Return the bracket of basis elements indexed by
x
andy
wherex < y
. If this is not implemented, then the method_bracket_()
for the elements must be overwritten.EXAMPLES:
sage: L = LieAlgebras(QQ).WithBasis().example() # optional - sage.combinat sage: L.bracket_on_basis(Partition([3,1]), Partition([2,2,1,1])) # optional - sage.combinat 0
- dimension()#
Return the dimension of
self
.EXAMPLES:
sage: L = LieAlgebras(QQ).FiniteDimensional().WithBasis().example() # optional - sage.combinat sage: L.dimension() # optional - sage.combinat 3
sage: L = LieAlgebra(QQ, 'x,y', {('x','y'): {'x':1}}) # optional - sage.combinat sage.modules sage: L.dimension() # optional - sage.combinat sage.modules 2
- from_vector(v, order=None, coerce=False)#
Return the element of
self
corresponding to the vectorv
inself.module()
.Implement this if you implement
module()
; see the documentation ofsage.categories.lie_algebras.LieAlgebras.module()
for how this is to be done.EXAMPLES:
sage: L = LieAlgebras(QQ).FiniteDimensional().WithBasis().example() # optional - sage.combinat sage: u = L.from_vector(vector(QQ, (1, 0, 0))); u # optional - sage.combinat (1, 0, 0) sage: parent(u) is L # optional - sage.combinat 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() # optional - sage.combinat sage: L.module() # optional - sage.combinat 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) # optional - sage.combinat sage.modules sage: PBW = L.pbw_basis() # optional - sage.combinat sage.modules
- 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) # optional - sage.combinat sage.modules sage: PBW = L.pbw_basis() # optional - sage.combinat sage.modules
- example(gens=None)#
Return an example of a Lie algebra as per
Category.example
.EXAMPLES:
sage: LieAlgebras(QQ).WithBasis().example() # optional - sage.combinat 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()) # optional - sage.combinat An example of a Lie algebra: the abelian Lie algebra on the generators indexed by Compositions of non-negative integers over Rational Field