This section describes functions for working with the classification of solvable Lie algebras of dimension 2, 3, and 4, and the classification of nilpotent Lie algebras having dimensions 3,4,5, and 6. The classification of solvable Lie algebras is taken from [dG05], and applies to algebras over any base field. The classification of nilpotent Lie algebras is taken from [dG07]. It lists the nilpotent Lie algebras over any base field, with the exception of fields of characteristic 2, when the dimension is 6.
The functions described here fall into two categories: functions for creating the Lie algebras of the classification, and a function for identifying a given solvable Lie algebra of dimension 2,3,4 or a given nilpotent Lie algebra of dimension 3,4,5,6 as a member of the list.
First we describe the classifications, in order to define names for the Lie algebras that occur. We then describe the functions for working with them in Magma.
We denote a solvable Lie algebra of dimension n by Lnk, where k ranges between 1 and the number of classes of solvable Lie algebras of dimension n. If the class depends on a parameter, say a, then we denote the Lie algebra by Lnk(a). In such cases we also state conditions under which Lnk(a) is isomorphic to Lnk(b) (if there are any). We list the nonzero commutators only. The field over which the Lie algebra is defined is denoted by F. Here is the list of classes of solvable Lie algebras having dimension not greater than 4:
Over general fields the lists are not "precise" in the sense that some classes that depend up on a parameter have an associated isomorphism condition, but not a precise parametrization of the Lie algebras in that class. However, for algebras over finite fields we are able to give a precise list, by restricting the parameter values in some cases. In this section we describe how this is done. Here F will be a finite field of size q with primitive root γ.
We denote a nilpotent Lie algebra of dimension r by Nrk, where k ranges between 1 and the number of classes of nilpotent Lie algebras of dimension r. If the class depends on a parameter, say a, then we denote the Lie algebra by Nrk(a). The complete list of isomorphism classes of nilpotent Lie algebras having dimensions 3, 4, 5 and 6, where in dimension 6 we exclude base fields of characteristic 2 are as follows:
This function returns the solvable Lie algebra Lnk over the field F. The multiplication table is exactly the same as that given in the classification of solvable algebras above, where the basis element xi corresponds to the i-th basis element of the Lie algebra returned.pars: SeqEnum Default: [ ]If the Lie algebra Lnk depends on one or more parameters, then the parameter pars specifies the parameter values corresponding to the Lie algebra which is required.
> F<a>:= RationalFunctionField( Rationals() ); > K:= SolvableLieAlgebra( F, 3, 3 : pars:= [a] ); > K.3*K.1; (0 1 0) > K.3*K.2; (a 1 0)
This function returns the nilpotent Lie algebra Nrk over the field F. The multiplication table is exactly the same as that given in the classification of nilpotent algebras above, where the basis element xi corresponds to the i-th basis element of the Lie algebra returned.pars: SeqEnum Default: [ ]If the Lie algebra Nrk depends upon one or more parameters, then the parameter pars specifies the parameter values corresponding to the Lie algebra which is required.
> F<a>:= RationalFunctionField( Rationals() ); > K:= NilpotentLieAlgebra( F, 6, 19 : pars:= [a^3] ); > K.3*K.5; ( 0 0 0 0 0 a^3)
Given a finite field F and d an integer equal to 2, 3 or 4, this function returns a sequence containing all solvable Lie algebras of dimension d over the field F.
Given a finite field F and d an integer equal to 3, 4, 5 or 6, this function returns a sequence containing all nilpotent Lie algebras of dimension d over the field F. If the dimension is 6 then the characteristic of F may not be 2.
Given a solvable Lie algebra L of dimension 2, 3, or 4, this function returns data that identifies L with the isomorphic algebra in the classification of solvable Lie algebras. (SLAC stands for Solvable Lie Algebras Classification.) Three objects are returned: a string, a sequence and a map.The string gives the name of the Lie algebra as it occurs in the classification, with information about the field and the parameters.
The sequence contains the parameters of the Lie algebra in the classification to which L is isomorphic.
The map is an isomorphism from L to the corresponding Lie algebra contained in the classification.
Given a nilpotent Lie algebra L of dimension 3, 4, 5 or 6 this function returns data that identifies L with the isomorphic algebra in the classification of nilpotent Lie algebras. (NLAC stands for Nilpotent Lie Algebras Classification.) Three objects are returned: a string giving the name of the algebra N in the classification, a sequence giving the parameters for N, and the isomorphism mapping L to N.
Given an isomorphism f as returned by either IdDataSLAC or IdDataNLAC, this function returns the matrix of that isomorphism. The row convention is used, i.e., the i-th row contains the coordinates of the image of the i-th basis element of the domain of f.
> F<a>:= RationalFunctionField( Rationals() ); > T:= [ <1,2,2,1>, <1,2,3,a>, <1,4,4,a>, <2,1,2,-1>, <2,1,3,-a>, <4,1,4,-a> ]; > L:= LieAlgebra< F, 4 | T >; > s,p,f:= IdDataSLAC( L ); > s; L4_6( Univariate rational function field over Rational Field Variables: a, 0, -a/(a^2 + 2*a + 1) ) > p; [ 0, -a/(a^2 + 2*a + 1) ] > MatrixOfIsomorphism( f ); [0 (-a - 1)/(a - 1) (-a - 1)/(a - 1) (a^2 + 2*a + 1)/(a^2 - a)] [0 -1/(a - 1) -a/(a - 1) (a + 1)/(a - 1)] [0 -1/(a^2 - 1) -a/(a^2 - 1) a/(a - 1)] [1/(a + 1) 0 0 0]So generically, the Lie algebra is isomorphic to L46( 0, - a/(a2 + 2a + 1)). We see that the parameters are not defined if a= - 1. Furthermore, the isomorphism is not defined if a=∓ 1, or a=0. We investigate those cases.
> a:= 1; > T:= [ <1,2,2,1>, <1,2,3,a>, <1,4,4,a>, <2,1,2,-1>, <2,1,3,-a>, <4,1,4,-a> ]; > L:= LieAlgebra< Rationals(), 4 | T >; > s,p,f:= IdDataSLAC( L ); > s; L4_3( Rational Field, 0 ) > MatrixOfIsomorphism( f ); [ 0 1 1 0] [ 0 0 -1 1] [ 0 0 0 1] [ 1 0 0 0] > a:= -1; > T:= [ <1,2,2,1>, <1,2,3,a>, <1,4,4,a>, <2,1,2,-1>, <2,1,3,-a>, <4,1,4,-a> ]; > L:= LieAlgebra< Rationals(), 4 | T >; > s,p,f:= IdDataSLAC( L ); > s; L4_7( Rational Field, 0, 1 ) > MatrixOfIsomorphism( f ); [ 0 1/2 1/2 1/2] [ 0 1/2 -1/2 -1/2] [ 0 1/2 -1/2 1/2] [ 1 0 0 0] > a:= 0; > T:= [ <1,2,2,1>, <1,2,3,a>, <1,4,4,a>, <2,1,2,-1>, <2,1,3,-a>, <4,1,4,-a> ]; > L:= LieAlgebra< Rationals(), 4 | T >; > s,p,f:= IdDataSLAC( L ); > s; L4_4( Rational Field ) > MatrixOfIsomorphism( f ); [ 0 0 1 0] [ 0 1 0 -1] [ 0 1 0 0] [ 1 0 0 0]We see that for a=1 the Lie algebra is isomorphic to L43(0), and the isomorphism is defined over any field. If a= - 1, then the Lie algebra is isomorphic to L47( 0, 1 ). However, the isomorphism is not defined if the characteristic of the field is 2. But then we are back in the case a=1. Finally, for a=0 the Lie algebra is isomorphic to L44.
> L:= LieAlgebra( "G2", Rationals() ); > x,y,h:= ChevalleyBasis( L ); > x; [ (0 0 0 0 0 0 0 0 1 0 0 0 0 0), (0 0 0 0 0 0 0 0 0 1 0 0 0 0), (0 0 0 0 0 0 0 0 0 0 1 0 0 0), (0 0 0 0 0 0 0 0 0 0 0 1 0 0), (0 0 0 0 0 0 0 0 0 0 0 0 1 0), (0 0 0 0 0 0 0 0 0 0 0 0 0 1) ]So we see that the positive part is spanned by basis vectors L.i with i=9, 10, 11, 12, 13 and 14. So
> K:= sub< L | [ L.i : i in [9,10,11,12,13,14] ] >; > name,pp,f:= IdDataNLAC( K ); > name; N6_16( Rational Field ) > MatrixOfIsomorphism( f ); [ 1 0 0 0 0 0] [ 0 1 0 0 0 0] [ 0 0 1 0 0 0] [ 0 0 0 1/2 0 0] [ 0 0 0 0 1/6 0] [ 0 0 0 0 0 1/6] > L:= LieAlgebra( "G2", GF(3) ); > K:= sub< L | [ L.i : i in [9,10,11,12,13,14] ] >; > name,pp,f:= IdDataNLAC( K ); > name; N6_19( Finite field of size 3, 0 )We see that in characteristic 3 L is isomorphic to a Lie algebra from a different class.