[GAP Forum] subalgebras of simple lie algebras

Scott H. Murray murray at maths.usyd.edu.au
Tue Dec 11 03:44:59 GMT 2007


Dear R.N.,

Here is a subalgebra of type D4D4 in E8:

gap> L := SimpleLieAlgebra("E",8,Rationals);
<Lie algebra of dimension 248 over Rationals>
gap> chev := ChevalleyBasis(L);;
gap> chev := Concatenation( chev[1], chev[2] );;
gap> M := Subalgebra(L, List(
> [ 2, 3, 4, 5, 7, 8, 97, 61, 122, 123, 124, 125, 127, 128, 217, 181 ],
> i -> chev[i] ) );
<Lie algebra over Rationals, with 16 generators>
gap> SemiSimpleType(M);
"D4 D4"


Dynkin (1952) gives a classification of semisimple subalgebras of simple
Lie algebras.  He uses extended Dynkin diagrams, and that is how I
found D4D4.  The Magma code used is attached.  I don't know how to do the
whole computation in GAP -- I was able to copy the result over to GAP
because the two systems use the same bases for Lie algebras.

F4G2 cannot be a rational subalgebra of E8(Q).  Taking subdiagrams of
extended Dynkin diagrams repeatedly never gives an F4 or a G2, unless you
start with an F4 or G2 respectively.  It might be a subalgebra over an
extension of the rationals.  For example, F4 is a subalgebra of E6 over
Q(sqrt(2)) [see table 24 in Dynkin's paper].

Deriziotis showed that all the rational subalgebras gotten by Dynkin's
classification can be found as centralisers of semisimple elements -- I
assume this is how the documentation example works.

All the best,
Scott.

-------------------------------------------------------
Scott H. Murray, Dept of Mathematics, Univ of Sydney
Email:    murray at maths.usyd.edu.au
Homepage: http://www.maths.usyd.edu.au:8000/u/murray/
Phone:    +61 2 9351-3881
-------------------------------------------------------



On Mon, 10 Dec 2007, R.N. Tsai wrote:

> Dear gap-forum,
>
>   Is there a way to look for subalgebras of certain type in a simple lie
> algebra. Interestingly enough the example in the documentation is
> very close to what I'm looking for :
>
>   gap> L:= SimpleLieAlgebra( "E", 8, Rationals );;
> gap> b:= BasisVectors( Basis( L ) );;
> gap> K:= LieCentralizer( L, Subalgebra( L, [ b[61]+b[79]+b[101]+b[102] ] ) );
> <Lie algebra of dimension 102 over Rationals>
> gap> lev:= LeviMalcevDecomposition(K);;
> gap> SemiSimpleType( lev[1] );
> "B3 A1"
>
>   I need to find "F4 G2" and "D4 D4" types in E8. Any suggestions or references
> where the particular example in the docs came from would be very helpful.
>
>   Thanks,
>
>   R.N.
>
>
> ---------------------------------
> Never miss a thing.   Make Yahoo your homepage.
> _______________________________________________
> Forum mailing list
> Forum at mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum
>
>
-------------- next part --------------


highestNegRts := function( R )
  sc, h := SimplyConnectedVersion( R );
  return { RootPosition(R,h(Root(C,2*NumPosRoots(C)))) : 
    C in DirectSumDecomposition(sc) };
end function;

maxlSubs := function( R )
  n := Rank( R );
  rts := [1..n] cat Setseq(highestNegRts( R ));
  return [sub< R | Seqset( Remove( rts, i ) ) > : i in [1..n] ];
end function;

R := RootDatum("E8");

allsubs := maxlSubs( R );
allsubs;
allsubs := allsubs[[1,6,7,8]];
allsubs := &cat[ maxlSubs(S) : S in allsubs ];
for i in [1..#allsubs] do print i, CartanName(allsubs[i]); end for;
allsubs := allsubs[[1,5,8,17,31]];
allsubs := &cat[ maxlSubs(S) : S in allsubs ];
for i in [1..#allsubs] do print i, CartanName(allsubs[i]); end for;
S := allsubs[5];          
L := LieAlgebra(R,Rationals());                         
A, B  := ChevalleyBasis(L);     
chev := A cat B;
pos := [ RootPosition( R, Root(S,i) ) : i in [1..8] ]; 
pos cat:= [ Negative( R, r ) : r in pos ];
pos;
M := sub< L | chev[pos] >;
SemisimpleType(M);



> highestNegRts := function( R )
function>   sc, h := SimplyConnectedVersion( R );
function>   return { RootPosition(R,h(Root(C,2*NumPosRoots(C)))) : 
function|return>     C in DirectSumDecomposition(sc) };
function> end function;
> 
> maxlSubs := function( R )
function>   n := Rank( R );
function>   rts := [1..n] cat Setseq(highestNegRts( R ));
function>   return [sub< R | Seqset( Remove( rts, i ) ) > : i in [1..n] ];
function> end function;
> 
> R := RootDatum("E8");
> allsubs := maxlSubs( R );
> allsubs;
[
    Root datum of dimension 8 of type D8 ,
    Root datum of dimension 8 of type A8 ,
    Root datum of dimension 8 of type A1 A7 ,
    Root datum of dimension 8 of type A2 A1 A5 ,
    Root datum of dimension 8 of type A4 A4 ,
    Root datum of dimension 8 of type D5 A3 ,
    R: Root datum of dimension 8 of type E6 A2 ,
    Root datum of dimension 8 of type E7 A1 
]
> allsubs := allsubs[[1,6,7,8]];
> allsubs := &cat[ maxlSubs(S) : S in allsubs ];
> for i in [1..#allsubs] do print i, CartanName(allsubs[i]); end for;
1 D8 
2 D8 
3 A1 A1 D6 
4 A3 D5 
5 D4 D4 
6 D5 A3 
7 D6 A1 A1 
8 D8 
9 D5 A3 
10 D5 A3 
11 A1 A3 A3 A1 
12 A3 A1 A1 A3 
13 D5 A3 
14 D5 A3 
15 D5 A3 
16 D5 A3 
17 E6 A2 
18 A5 A2 A1 
19 A1 A5 A2 
20 A2 A2 A2 A2 
21 A5 A1 A2 
22 E6 A2 
23 E6 A2 
24 E6 A2 
25 D6 A1 A1 
26 A7 A1 
27 A2 A5 A1 
28 A3 A1 A3 A1 
29 A5 A2 A1 
30 D6 A1 A1 
31 E7 A1 
32 E7 A1 
> allsubs := allsubs[[1,5,8,17,31]];
> allsubs := &cat[ maxlSubs(S) : S in allsubs ];
> for i in [1..#allsubs] do print i, CartanName(allsubs[i]); end for;
1 D8 
2 D8 
3 A1 A1 D6 
4 A3 D5 
5 D4 D4 
6 D5 A3 
7 D6 A1 A1 
8 D8 
9 D4 D4 
10 D4 D4 
11 A1 A1 A1 D4 A1 
12 D4 D4 
13 D4 D4 
14 D4 A1 A1 A1 A1 
15 D4 D4 
16 D4 D4 
17 D8 
18 D8 
19 A1 A1 D6 
20 A3 D5 
21 D4 D4 
22 D5 A3 
23 D6 A1 A1 
24 D8 
25 E6 A2 
26 A5 A2 A1 
27 A1 A5 A2 
28 A2 A2 A2 A2 
29 A5 A1 A2 
30 E6 A2 
31 E6 A2 
32 E6 A2 
33 D6 A1 A1 
34 A7 A1 
35 A2 A5 A1 
36 A3 A1 A3 A1 
37 A5 A2 A1 
38 D6 A1 A1 
39 E7 A1 
40 E7 A1 
>
> S := allsubs[5];          
> L := LieAlgebra(R,Rationals());                                 
> A, B  := ChevalleyBasis(L);     
> chev := A cat B;
> pos := [ RootPosition( R, Root(S,i) ) : i in [1..8] ]; 
> pos cat:= [ Negative( R, r ) : r in pos ];
> pos;
[ 2, 3, 4, 5, 7, 8, 97, 61, 122, 123, 124, 125, 127, 128, 217, 181 ]
> M := sub< L | chev[pos] >;
> SemisimpleType(M);
D4 D4 
>


More information about the Forum mailing list