If the coefficient ring R of a Lie algebra L is a Euclidean domain, then submodules and ideals can be constructed in Magma; if R is a field then quotients can be constructed in Magma. Note that left, right, and two-sided ideals are identical in a Lie algebra.
Creates the subalgebra S of the Lie algebra L that is generated by the elements defined by A, where A is a list of one or more items of the following types:As well as the subalgebra S itself, the constructor returns the inclusion homomorphism f : S -> L.
- (a)
- An element of L;
- (b)
- A set or sequence of elements of L;
- (c)
- A subalgebra or ideal of L;
- (d)
- A set or sequence of subalgebras or ideals of L.
Creates the ideal I of the Lie algebra L generated by the elements defined by A, where A is a list of one or more items of the following types:As well as the ideal I itself, the constructor returns the inclusion homomorphism f : I -> L.
- (a)
- An element of L;
- (b)
- A set or sequence of elements of L;
- (c)
- A subalgebra or ideal of L;
- (d)
- A set or sequence of subalgebras or ideals of L.
Forms the quotient algebra L / I, where I is the two-sided ideal of L generated by the elements defined by A, where A is a list of one or more items of the following types:As well as the quotient L/I itself, the constructor returns the natural homomorphism f : L -> L/I.
- (a)
- An element of L;
- (b)
- A set or sequence of elements of L;
- (c)
- A subalgebra or ideal of L;
- (d)
- A set or sequence of subalgebras or ideals of L.
The quotient of the Lie algebra L by the ideal closure of the subalgebra S.
> L := MatrixLieAlgebra( Rationals(), 2 ); > Dimension(L); 4 > I := ideal< L | L!Matrix([[1,0],[0,1]]) >; > Dimension(I); 1 > K := L/I; > Dimension(K); 3 > SemisimpleType( K ); A1
Given a Lie algebra L and an ideal I of L, the quotient L/I is constructed. As second return value, the natural homomorphism f : L -> L/I is returned.As third return value, a function g is returned. This g takes an element y ∈I and returns an x ∈L and a vector space V such that f(x + v) = y for all v ∈V. As fourth return value, a function h is returned. This h takes an element y ∈I and returns the subalgebra of L generated by x and V, with x and V as above.
> R := RootDatum("G2"); > L := LieAlgebra(R, GF(3)); > pos,neg,cart := StandardBasis(L); > shrt := [ i : i in [1..NumPosRoots(R)] | IsShortRoot(R, i) ]; > shrt; [ 1, 3, 4 ] > I := ideal<L | pos[shrt]>; > _, str1 := ReductiveType(I); str1; The 7-dim simple constituent of a Lie algebra of type A2So apparently I is isomorphic to the 7-dimensional simple constituent of a Lie algebra of type A2. We will now use QuotientWithPullback to construct L/I.
> LI, proj, pb, pbsub := QuotientWithPullback(L, I); > _, str2 := ReductiveType(LI); str2; The 7-dim simple constituent of a Lie algebra of type A2So apparently I simeq L/I! Finally, we will demonstrate the use of the additional return values. First, we verify that an element of I maps to 0 in L/I:
> proj(pos[1]); (0 0 0 0 0 0 0)And then we consider the preimage in L of a randomly chosen element of L/I.
> y := LI![0,1,1,1,1,0,1]; > y; (0 1 1 1 1 0 1) > x, V := pb(y); > x; (0 1 0 0 1 0 0 1 0 1 0 0 0 1) > #V; 2187 > assert #V eq #I; > {* proj(x + v) eq y : v in V *}; {* true^^2187 *}So indeed x + v is a preimage of y for all v ∈V.
> M := pbsub(y); > M, M meet I; Lie Algebra of dimension 8 with base ring GF(3) Lie Algebra of dimension 7 with base ring GF(3) > _,str3 := ReductiveType(M); > str3; Twisted Lie algebra of type 2A2 [Ad]