  
  [1X3 [33X[0;0YNilpotent Orbits[133X[101X
  
  [33X[0;0YThis  chapter  contains functions for dealing with the nilpotent orbits of a
  semisimple  Lie algebra [22XK[122X under its adjoint group [22XG[122X. We refer to the book by
  Collingwood and McGovern, [CM93] (and the references therein) for an account
  of  the  theory  of  nilpotent  orbits.  A nilpotent orbit has two important
  attributes:  the  weighted  Dynkin diagram, and an [22Xsl_2[122X-triple. The weighted
  Dynkin  diagram  is  represented  by a list of integers in {0,1,2} of length
  equal  to  the  rank  of  the  Lie  algebra.  The i-th position in this list
  correponds  to  the  i-th node of the Dynkin diagram of the root system. The
  Dynkin  diagram  of the root system is described by the Cartan matrix of the
  root  system.  Now  in GAP this Cartan matrix can be somewhat different from
  the  more  usual  forms. This holds most particularly for type F4, where the
  enumeration  of  the  simple  roots is rather different from the one usually
  found.  So  when using the functions in this chapter one should keep this in
  mind.[133X
  
  [33X[0;0YEvery  nilpotent  orbit  has  an  [22Xsl_2[122X-triple,  that  is a triple [22X(y,h,x)[122X of
  elements  of  the  simple Lie algebra with [22X[x,y]=h[122X, [22X[h,x]=2x[122X, [22X[h,y]=-2y[122X. The
  nilpotent  orbit  corresponding  to this is the orbit of the element x under
  the action of the adjoint group.[133X
  
  [33X[0;0YLet  [22XP[122X  be  a  parabolic  subalgebra  of  [22XK[122X  (i.e.,  generated by the Cartan
  subalgebra  of  [22XK[122X, all positive root vectors, along with the negative simple
  root  vectors corresponding to a given subset of the basis of simple roots),
  [22XL[122X  the  corresponding Levi subalgebra (i.e., the reductive part of [22XP[122X), and [22XN[122X
  the  nilradical  of  [22XP[122X.  Let  [22XO_L[122X  be a nilpotent orbit in [22XL[122X. There exists a
  unique  nilpotent orbit [22XO_K[122X in [22XK[122X such that the intersection of [22XO_K[122X and [22XO_L +
  N[122X  is  dense in the latter. In this situation [22XO_K[122X is said to be [13Xinduced[113X from
  [22XO_L[122X. Nilpotent orbits in [22XK[122X which are not induced are said to be [13Xrigid[113X.[133X
  
  [33X[0;0YNow  consider  the  variety of all [22XG[122X-orbits in [22XK[122X of a given dimension [22Xd[122X. The
  irreducible  components  of  this  variety are called the [13Xsheets[113X of [22XK[122X. Every
  sheet has a unique nilpotent orbit. Moreover this nilpotent orbit is induced
  from  an orbit [22XO_L[122X, and [22XO_L[122X is rigid in [22XL[122X. So the sheets are parametrised by
  pairs [22X(L,O_L)[122X, where [22XL[122X is a Levi subalgebra, and [22XO_L[122X a rigid nilpotent orbit
  in  it.  This data can conveniently be given by a [13Xsheet diagram[113X: this is the
  Dynkin  diagram  of [22XK[122X, were the nodes that do [13Xnot[113X correspond to simple roots
  of  [22XL[122X  have label 2. So, leaving out the nodes with label 2, one obtains the
  Dynkin  diagram  of  [22XL[122X.  The  remaining  labels  in  the  sheet diagram then
  correspond  to the weighted Dynkin diagram of the nilpotent orbit [22XO_L[122X. Since
  this orbit is rigid, its weighted Dynki diagram has labels 0 or 1. From that
  it  follows  that one can recover [22XL[122X and [22XO_L[122X from the sheet diagram. The [13Xrank[113X
  of a sheet is defined as the dimension of the centre of [22XL[122X, obviously that is
  equal to the number of 2's in the sheet diagram.[133X
  
  
  [1X3.1 [33X[0;0YThe functions[133X[101X
  
  [1X3.1-1 NilpotentOrbit[101X
  
  [33X[1;0Y[29X[2XNilpotentOrbit[102X( [3XL[103X, [3Xwd[103X ) [32X operation[133X
  
  [33X[0;0YHere  [3XL[103X  is  a  simple Lie algebra and [3Xwd[103X a weighted Dynkin diagram (i.e., a
  list  containing  the  weights  of  the weighted Dynkin diagram, in the same
  order as the nodes of the Dynkin diagram of the root system of [3XL[103X; that order
  can  be  deduced  from  the  Cartan  matrix  of  the  same root system). The
  corresponding  nilpotent  orbit is returned. It is the responsibility of the
  user  to  make  sure  that  the  weighted  Dynkin  diagram  corresponds to a
  nilpotent orbit.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xo:= NilpotentOrbit( L, [1,2,0,0,0,1] );[127X[104X
    [4X[28X<nilpotent orbit in Lie algebra of type E6>[128X[104X
  [4X[32X[104X
  
  [1X3.1-2 NilpotentOrbits[101X
  
  [33X[1;0Y[29X[2XNilpotentOrbits[102X( [3XL[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3XL[103X  is  a semisimple Lie algebra. This function returns the list of all
  nilpotent  orbits of [3XL[103X. If [3XL[103X is simple of classical type, then the nilpotent
  orbits  correpond  to partitions (of [22Xn+1[122X for type [22XA_n[122X, of [22X2n+1[122X for type [22XB_n[122X,
  of  [22X2n[122X  for  type [22XC_n[122X and of [22X2n[122X for type [22XD_n[122X, see [CM93]). If [3XL[103X is of one of
  these  types  then  the  orbits returned by this function have the attribute
  [3XOrbitPartition[103X set, which returns the corresponding partition.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xorbs:= NilpotentOrbits(L);;[127X[104X
    [4X[25Xgap>[125X [27Xorbs[10];[127X[104X
    [4X[28X<nilpotent orbit in Lie algebra of type E6>[128X[104X
    [4X[25Xgap>[125X [27XLength(orbs);[127X[104X
    [4X[28X20[128X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("B",4,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xorbs:= NilpotentOrbits(L);;            [127X[104X
    [4X[25Xgap>[125X [27XOrbitPartition( orbs[10] );[127X[104X
    [4X[28X[ 5, 3, 1 ][128X[104X
  [4X[32X[104X
  
  [1X3.1-3 WeightedDynkinDiagram[101X
  
  [33X[1;0Y[29X[2XWeightedDynkinDiagram[102X( [3Xo[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3Xo[103X  is  a  nilpotent  orbit;  this function returns its weighted Dynkin
  diagram.[133X
  
  [1X3.1-4 WeightedDynkinDiagram[101X
  
  [33X[1;0Y[29X[2XWeightedDynkinDiagram[102X( [3XL[103X, [3Xx[103X ) [32X method[133X
  
  [33X[0;0YHere [3XL[103X is a semisimple Lie algebra, and [3Xx[103X a nilpotent element. This function
  returns the weighted Dynkin diagram of the orbit containing [3Xx[103X.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("B",3,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27XWeightedDynkinDiagram( L, L.1+L.9 ); [127X[104X
    [4X[28X[ 2, 0, 0 ][128X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals );;[127X[104X
    [4X[25Xgap>[125X [27XWeightedDynkinDiagram(L, L.1+L.6+L.20+2*L.32 : table:= true );[127X[104X
    [4X[28X[ 0, 0, 0, 1, 0, 0 ][128X[104X
  [4X[32X[104X
  
  [1X3.1-5 AmbientLieAlgebra[101X
  
  [33X[1;0Y[29X[2XAmbientLieAlgebra[102X( [3Xo[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3Xo[103X is a nilpotent orbit; this function returns the Lie algebra it lives
  in.[133X
  
  [1X3.1-6 SemiSimpleType[101X
  
  [33X[1;0Y[29X[2XSemiSimpleType[102X( [3Xo[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3Xo[103X  is  a  nilpotent  orbit;  this function returns the type of the Lie
  algebra it lives in.[133X
  
  [1X3.1-7 SL2Triple[101X
  
  [33X[1;0Y[29X[2XSL2Triple[102X( [3Xo[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3Xo[103X  is  a nilpotent orbit; this function returns an sl_2-triple [22X(y,h,x)[122X
  corresponding  to  [3Xo[103X.  For  the  exceptional  types the [22Xx[122X is as in the paper
  [Gra08]. For the classical types the [22Xx[122X is computed on the fly.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xorbs:= NilpotentOrbits(L);;[127X[104X
    [4X[25Xgap>[125X [27XSL2Triple( orbs[10] );[127X[104X
    [4X[28X[ (4)*v.51+(3)*v.53+(3)*v.56+v.59, (4)*v.73+(6)*v.74+(8)*v.75+(11)*v.76+([128X[104X
    [4X[28X    8)*v.77+(4)*v.78, v.15+v.17+v.20+v.23 ][128X[104X
  [4X[32X[104X
  
  [1X3.1-8 RandomSL2Triple[101X
  
  [33X[1;0Y[29X[2XRandomSL2Triple[102X( [3Xo[103X ) [32X operation[133X
  
  [33X[0;0YHere  [3Xo[103X  is  a  nilpotent  orbit; this function returns a random sl_2-triple
  [22X(x,h,y)[122X corresponding to [3Xo[103X. This means that every call (potentially) returns
  a different sl_2-triple.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xorbs:= NilpotentOrbits(L);;[127X[104X
    [4X[25Xgap>[125X [27XRandomSL2Triple( orbs[10] );[127X[104X
    [4X[28X[ (3)*v.49+(3)*v.50+v.51+(4)*v.59, (4)*v.73+(6)*v.74+(8)*v.75+(11)*v.76+([128X[104X
    [4X[28X    8)*v.77+(4)*v.78, v.13+v.14+v.15+v.23 ][128X[104X
    [4X[25Xgap>[125X [27XRandomSL2Triple( orbs[10] );[127X[104X
    [4X[28X[ (3)*v.49+(4)*v.54+(3)*v.56+v.57, (4)*v.73+(6)*v.74+(8)*v.75+(11)*v.76+([128X[104X
    [4X[28X    8)*v.77+(4)*v.78, v.13+v.18+v.20+v.21 ][128X[104X
  [4X[32X[104X
  
  [1X3.1-9 SL2Grading[101X
  
  [33X[1;0Y[29X[2XSL2Grading[102X( [3XL[103X, [3Xh[103X ) [32X operation[133X
  
  [33X[0;0YHere  [3XL[103X  is  a Lie algebra, and [3Xh[103X is an element of it, such that there is an
  sl_2  triple  of  which  it is the Cartan element (the system does not check
  that).  This  function  returns the grading of [3XL[103X in eigenspaces of [3Xh[103X. A list
  containing  three  lists  is  returned: the first list contains bases of the
  components  with  degrees  1,2,3,...  the  second  list  has  bases  of  the
  components  with degrees -1,-2,-3,..., the last list contains a basis of the
  zero component.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("F",4,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xorbs:= NilpotentOrbits(L);;[127X[104X
    [4X[25Xgap>[125X [27Xsl2:= RandomSL2Triple( orbs[6] );[127X[104X
    [4X[28X[ (2)*v.37+(2)*v.39+v.41, (3)*v.49+(4)*v.50+(6)*v.51+(8)*v.52, v.13+v.15+v.17 [128X[104X
    [4X[28X ][128X[104X
    [4X[25Xgap>[125X [27XSL2Grading( L, sl2[2] );[127X[104X
    [4X[28X[ [ [ v.3, v.5, v.7, v.8, v.9, v.11 ], [128X[104X
    [4X[28X      [ v.10, v.12, v.13, v.14, v.15, v.16, v.17, v.18, v.20 ], [128X[104X
    [4X[28X      [ v.19, v.21 ], [ v.22, v.23, v.24 ] ], [128X[104X
    [4X[28X  [ [ v.27, v.29, v.31, v.32, v.33, v.35 ], [128X[104X
    [4X[28X      [ v.34, v.36, v.37, v.38, v.39, v.40, v.41, v.42, v.44 ], [128X[104X
    [4X[28X      [ v.43, v.45 ], [ v.46, v.47, v.48 ] ], [128X[104X
    [4X[28X  [ v.1, v.2, v.4, v.6, v.25, v.26, v.28, v.30, v.49, v.50, v.51, v.52 ] ][128X[104X
  [4X[32X[104X
  
  [1X3.1-10 SL2Triple[101X
  
  [33X[1;0Y[29X[2XSL2Triple[102X( [3XL[103X, [3Xx[103X ) [32X operation[133X
  
  [33X[0;0YHere  [3XL[103X  is a simple Lie algebra, and [3Xx[103X is a nilpotent element of it. A list
  of  three elements is returned, forming an sl_2-triple, the last of which is
  equal to [3Xx[103X.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("F",4,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27XSL2Triple( L, L.1+L.20 );[127X[104X
    [4X[28X[ v.16+v.25, v.49, v.1+v.20 ][128X[104X
  [4X[32X[104X
  
  [1X3.1-11 InducedNilpotentOrbits[101X
  
  [33X[1;0Y[29X[2XInducedNilpotentOrbits[102X( [3XL[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3XL[103X  is  a  simple  Lie  algebra.  This function returns the list of all
  induced  nilpotent  orbits  of  [3XL[103X.  An  induced  orbit  is given by a record
  containing  two  fields:  [3Xsheetdiag[103X,  which is a diagram describing the Levi
  subalgebra  and  the  rigid  nilpotent  orbit in it from which the nilpotent
  orbit is induced, and [3Xnorbit[103X, which is the induced nilpotent orbit in [3XL[103X. The
  sheet  diagram is a labeled Dynkin diagram, and the labels are 0, 1 or 2. If
  we  take  the  Dynkin diagram and erase the nodes which have label 2 then we
  obtain the Dynkin diagram of the Levi subalgebra. Moreover, the labels 0 and
  1  on  that  diagram  give the rigid nilpotent orbit in the Levi subalgebra.
  From this pair the nilpotent orbit [3Xnorbit[103X is induced. It may happen that the
  same  nilpotent  orbit  is  induced  from  more  pairs  consisting of a Levi
  subalgebra  and  a  rigid  nilpotent  orbit  in  it.  In  that case the same
  nilpotent  orbit  appears  more  than  once  in  the  list, each time with a
  different  sheet  diagram attached. This function works for the Lie algebras
  of  exceptional  type  and  for the Lie algebras of type [22XA[122X regardless of the
  rank. It works for the Lie algebras of the other types up to rank 10.[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27Xs:= InducedNilpotentOrbits(L);;[127X[104X
    [4X[25Xgap>[125X [27Xs[19];[127X[104X
    [4X[28Xrec( norbit := <nilpotent orbit in Lie algebra of type E6>, [128X[104X
    [4X[28X  sheetdiag := [ 2, 0, 0, 1, 0, 2 ] )[128X[104X
    [4X[25Xgap>[125X [27XWeightedDynkinDiagram( s[19].norbit );[127X[104X
    [4X[28X[ 0, 0, 0, 2, 0, 0 ][128X[104X
  [4X[32X[104X
  
  [1X3.1-12 RigidNilpotentOrbits[101X
  
  [33X[1;0Y[29X[2XRigidNilpotentOrbits[102X( [3XL[103X ) [32X attribute[133X
  
  [33X[0;0YHere  [3XL[103X is a simple Lie algebra. This function returns the list of all rigid
  nilpotent orbits of [3XL[103X, [13Xexcept[113X the zero orbit (which is always rigid).[133X
  
  [4X[32X  Example  [32X[104X
    [4X[25Xgap>[125X [27XL:= SimpleLieAlgebra("E",6,Rationals);;[127X[104X
    [4X[25Xgap>[125X [27XRigidNilpotentOrbits(L);[127X[104X
    [4X[28X[ <nilpotent orbit in Lie algebra of type E6>, [128X[104X
    [4X[28X  <nilpotent orbit in Lie algebra of type E6>, [128X[104X
    [4X[28X  <nilpotent orbit in Lie algebra of type E6> ][128X[104X
    [4X[25Xgap>[125X [27XList( last, WeightedDynkinDiagram );[127X[104X
    [4X[28X[ [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ], [ 1, 0, 0, 1, 0, 1 ] ][128X[104X
  [4X[32X[104X
  
