**CHEVIE** contains information about the unipotent conjugacy classes of a
connected reductive group over an algebraically closed field *k*, and
various invariants attached to them. The unipotent classes depend on the
characteristic of *k*; their classification differs when the characteristic
is not **good** (that is, when it divides one of the coefficients of the
highest root). In good characteristic, the unipotent classes are in
bijection with nilpotent orbits on the Lie algebra.

**CHEVIE** contains the following information attached to the class *C* of a
unipotent element *u*:

• its centralizer *C _{G}(u)*, characterized by its reductive part, its
group of components

• in good characteristic, its Dynkin-Richardson diagram.

• the Springer correspondence, attaching characters of the Weyl group
or relative Weyl groups to each character of *A(u)*.

The Dynkin-Richarson diagram is attached to a nilpotent element *e* of the
Lie algebra *g*. By the Jacobson-Morozov theorem there exists an *sl _{2}*
subalgebra of

0 | 1 |

0 | 0 |

h | 0 |

0 | h^{-1} |

Let *B* be the variety of all Borel subgroups and let *B _{u}* be the
subvariety of Borel subgroups containing the unipotent element

We describe now the Springer correspondence. Indecomposable locally
constant * G*-equivariant sheaves on

The Springer correspondence gives information on the character values of a
finite reductive groups as follows: assume that *k* is the algebraic
closure of a finite field *𝔽 _{q}* and that

Lusztig and Shoji have given an algorithm to compute the matrix
*P _{ψ,χ}*, which is implemented in

We illustrate these computations on some examples:

gap> W:=CoxeterGroup("A",3,"sc"); CoxeterGroup("A",3,"sc") gap> uc:=UnipotentClasses(W); UnipotentClasses( A3 ) gap> Display(uc); 1111<211<22<31<4 u |D-R dBu B-C C(u) A3() A1(2A1)/-1 .(A3)/I .(A3)/-I ________________________________________________________________ 4 |222 0 222 q^3.Z4 1:4 -1:2 I: -I: 31 |202 1 22. q^4.(q-1) 31 22 |020 2 2.2 q^4.A1.Z2 2:22 11:11 211 |101 3 2.. q^5.A1.(q-1) 211 1111 |000 6 ... A3 1111

In `CoxeterGroup("A",3,"sc")`

the `"sc"`

specifies that we are
working with the simply connected group, that is *sl _{n}*; another syntax for
the same group is

`RootDatum("sl",4)`

. The first column in the table
gives the name of the unipotent class, which here is a partition describing
the Jordan form. The partial order on unipotent classes given by Zariski
closure is given before the table. The column `D-R`

, displayed only in good
characteristic, gives the Dynkin-Richardson diagram for each class; the
column `dBu`

gives the dimension of the variety `B-C`

gives the Bala-Carter classification of `.`

at entries which do not correspond to the
Levi. The column `C(u)`

describes the group - using another vocabulary:
- a cyclic group of order 4 is given as
`Z4`

, and a symmetric group on 3 points would be given as`S3`

.

For instance, the first class `4`

has *C _{G}(u)^{0}* unipotent of dimension

`Z4`

, the cyclic group of order 4. The class `22`

has `A1`

and `Z2`

, that is the cyclic group of order 2. The
other classes have `31`

the reductive
part of
Then there is one column for each **Springer series**, giving for each class
the pairs `a:b`

where `a`

is the name of the character of *A(u)*
describing the local system involved and `b`

is the name of the character
of the (relative) Weyl group corresponding by the Springer correspondence.
At the top of the column is written the name of the relative Weyl group,
and in brackets the name of the Levi affording a cuspidal local system;
next, separated by a `/`

is a description of the central character
associated to the Springer series (omitted if this central character is
trivial): all local systems in a given Springer series have same
restriction to the center of * G*. To find what the picture becomes for
another algebraic group in the same isogeny class, for instance the adjoint
group, one simply discards the Springer series whose central character
becomes trivial on the center of

gap> Display(UnipotentClasses(CoxeterGroup("A",3))); 1111<211<22<31<4 u |D-R dBu B-C C(u) A3() ____________________________________ 4 |222 0 222 q^3 4 31 |202 1 22. q^4.(q-1) 31 22 |020 2 2.2 q^4.A1 22 211 |101 3 2.. q^5.A1.(q-1) 211 1111 |000 6 ... A3 1111

Here is another example:

gap> W:=CoxeterGroup("G",2);; gap> Display(UnipotentClasses(W)); 1<A1<~A1<G2(a1)<G2 u |D-R dBu B-C C(u) G2() .(G2) _________________________________________________________ G2 | 22 0 22 q^2 phi{1,0} G2(a1) | 20 1 20 q^4.S3 21:phi{1,3}' 3:phi{2,1} 111: ~A1 | 01 2 .2 q^3.A1 phi{2,2} A1 | 10 3 2. q^5.A1 phi{1,3}'' 1 | 00 6 .. G2 phi{1,6}

which illustrates that on class `G2(a1)`

there are two local systems in the
principal series of the Springer correspondence, and a further cuspidal
local system. Also, from the `B-C`

column, we see that that class is not in
a proper Levi, in which case the Bala-Carter diagram coincides with the
Dynkin-Richardson diagram.

The characteristics 2 and 3 are not good for `G2`

. To get the unipotent
classes and the Springer correspondence in bad characteristic, one gives a
second argument to the function `UnipotentClasses`

:

gap> Display(UnipotentClasses(W,3)); 1<A1,(~A1)3<~A1<G2(a1)<G2 u |dBu C(u) G2() .(G2) .(G2) .(G2) ________________________________________________ G2 | 0 q^2.Z3 1:phi{1,0} E3: E3^2: G2(a1) | 1 q^4.Z2 2:phi{2,1} 11: ~A1 | 2 q^6 phi{2,2} A1 | 3 q^5.A1 phi{1,3}'' (~A1)3 | 3 q^5.A1 phi{1,3}' 1 | 6 G2 phi{1,6}

The function `ICCTable`

gives the transition matrix between the functions
*X _{χ}* and

gap> Display(ICCTable(UnipotentClasses(W))); Coefficients of X_phi on Y_psi for G2 |G2 G2(a1)(21) G2(a1) ~A1 A1 1 _____________________________________________ Xphi{1,0} | 1 0 1 1 1 1 Xphi{1,3}' | 0 1 0 1 0 q^2 Xphi{2,1} | 0 0 1 1 1 P8 Xphi{2,2} | 0 0 0 1 1 P4 Xphi{1,3}'' | 0 0 0 0 1 1 Xphi{1,6} | 0 0 0 0 0 1

Here the row labels and the column labels show the two ways of indexing
local systems: the row labels give the character of the relative Weyl
group and the column labels give the class and the name of the local system
as a character of *A(u)*: for instance, `G2(a1)`

is the trivial local
system of the class `G2(a1)`

, while `G2(a1)(21)`

is the local system on
that class corresponding to the 2-dimensional character of *A(u)=A _{2}*.

`UnipotentClasses(`

`W`[,`p`])

`W` should be a `CoxeterGroup`

record for a Weyl group or `RootDatum`

describing a reductive algebraic group * G*. The function returns a record
containing information about the unipotent classes of

`group`

:

a pointer to`W`

`p`

:

the characteristic of the field for which the unipotent classes were computed. It is`0`

for any good characteristic.

`orderClasses`

:

a list describing the Hasse diagram of the partial order induced on unipotent classes by the closure relation. That is`.orderclasses[i]`

is the list of`j`

such that*C*and there is no class_{j}⊃_{≠}C_{i}*C*such that_{k}*C*._{j}⊃_{≠}C_{k}⊃_{≠}C_{i}

`classes`

:

a list of records holding information for each unipotent class (see below).

`springerSeries`

:

a list of records, each of which describes a Springer series of.**G**

The records describing individual unipotent classes have the following fields:

`name`

:

the name of the unipotent class.

`parameter`

:- a parameter describing the class (for example, a partition describing the Jordan form, for classical groups).

`Au`

:

the group*A(u)*.

`dynkin`

:

present in good characteristic; contains the Dynkin-Richardson diagram, given as a list of 0,1,2 describing the coefficient on the corresponding simple root.

`red`

:

the reductive part of*C*._{G}(u)

`dimBu`

:

the dimension of the variety*B*._{u}

The records for classes contain additional fields for certain groups: for
instance, the names given to classes by Mizuno in *E _{6}, E_{7}, E_{8}* or by
Shoji in

The records describing individual Springer series have the following fields:

`levi`

:

the indices of the reflections corresponding to the Levi subgroupwhere lives the cuspidal local system**L***ι*from which the Springer series is induced.

`relgroup`

:

The relative Weyl group*N*. The first series is the principal series for which_{G}(**L**,ι)/**L**`.levi=[]`

and`.relgroup=W`

.

`locsys`

:

a list of length`NrConjugacyClasses(.relgroup)`

, holding in`i`

-th position a pair describing which local system corresponds to the`i`

-th character of*N*. The first element of the pair is the index of the concerned unipotent class_{G}(**L**,ι)`u`

, and the second is the index of the corresponding character of*A(u)*.

`Z`

:

the central character associated to the Springer series, specified by its value on the generators of the centre.

gap> W:=CoxeterGroup("A",3,"sc");; gap> uc:=UnipotentClasses(W); UnipotentClasses( A3 ) gap> uc.classes; [ UnipotentClass(1111), UnipotentClass(211), UnipotentClass(22), UnipotentClass(31), UnipotentClass(4) ] gap> PrintRec(uc.classes[3]); rec( name := 22, Au := CoxeterGroup("A",1), dimBu := 2, dimunip := 4, dimred := 3, parameter := [ 2, 2 ], balacarter:= [ 1, 3 ], dynkin := [ 0, 2, 0 ], red := ReflectionSubgroup(CoxeterGroup("A",1), [ 1 ]), AuAction := A1, operations:= UnipotentClassOps ) gap> uc.orderClasses; [ [ 2 ], [ 3 ], [ 4 ], [ 5 ], [ ] ] gap> uc.springerSeries; [ rec( relgroup := A3, Z := [ 1 ], levi := [ ], locsys := [ [ 1, 1 ], [ 2, 1 ], [ 3, 2 ], [ 4, 1 ], [ 5, 1 ] ] ) , rec( relgroup := A1, Z := [ -1 ], levi := [ 1, 3 ], locsys := [ [ 3, 1 ], [ 5, 3 ] ] ), rec( relgroup := ., Z := [ E(4) ], levi := [ 1, 2, 3 ], locsys := [ [ 5, 2 ] ] ), rec( relgroup := ., Z := [ -E(4) ], levi := [ 1, 2, 3 ], locsys := [ [ 5, 4 ] ] ) ]

The `Display`

and `Format`

functions for unipotent classes accept all the
options of `FormatTable`

, `CharNames`

. Giving the option `mizuno`

(resp.
`shoji`

) uses the names given by Mizuno (resp. Shoji) for unipotent
classes. Moreover, there is also an option `fourier`

which gives the
correspondence tensored with the sign character of each relative Weyl
group, which is the correspondence obtained via a Fourier-Deligne transform
(here we assume that *p* is very good, so that there is a nondegenerate
invariant bilinear form on the Lie algebra, and also one can identify
nilpotent orbits with unipotent classes).

Here is how to display only the ordinary Springer correspondence of the
unipotent classes of `E6`

using the notations of Mizuno for the classes and
those of Frame for the characters of the Weyl group and of Spaltenstein for
the characters of `G2`

(this is convenient for checking our data with the
original paper of Spaltenstein):

gap> uc:=UnipotentClasses(CoxeterGroup("E",6));; gap> Display(uc,rec(columns:=[1..5],mizuno:=true,frame:=true, > spaltenstein:=true)); 1<A1<2A1<3A1<A2<A2+A1<A2+2A1<2A2+A1<A3+A1<D4(a1)<D4<D5(a1)<A5+A1<D5<E6\ (a1)<E6 A2+A1<2A2<2A2+A1 A2+2A1<A3<A3+A1 D4(a1)<A4<A4+A1<A5<A5+A1 A4+A1<D5(a1) u | D-R dBu B-C C(u) E6() _______________________________________________________________ E6 |222222 0 222222 q^6 1p E6(a1) |222022 1 222022 q^8 6p D5 |220202 2 22222. q^9.(q-1) 20p A5+A1 |200202 3 200202 q^12.Z2 11:15p 2:30p A5 |211012 4 2.2222 q^11.A1 15q D5(a1) |121011 4 22202. q^13.(q-1) 64p A4+A1 |111011 5 2222.2 q^15.(q-1) 60p D4 |020200 6 .2222. q^10.A2 24p A4 |220002 6 2222.. q^14.A1.(q-1) 81p D4(a1) |000200 7 .2202. q^18.(q-1)^2.S3 111:20s 3:80s 21:90s A3+A1 |011010 8 22.22. q^18.A1.(q-1) 60s 2A2+A1 |100101 9 222.22 q^21.A1 10s A3 |120001 10 2.22.. q^15.B2.(q-1) 81p' A2+2A1 |001010 11 222.2. q^24.A1.(q-1) 60p' 2A2 |200002 12 2.2.22 q^16.G2 24p' A2+A1 |110001 13 222... q^23.A2.(q-1) 64p' A2 |020000 15 2.2... q^20.(A2xA2) 11:15p' 2:30p' 3A1 |000100 16 22..2. q^27.A2xA1 15q' 2A1 |100001 20 22.... q^24.B3.(q-1) 20p' A1 |010000 25 2..... q^21.A5 6p' 1 |000000 36 ...... E6 1p'

`ICCTable(`

`uc`[,`seriesNo`[,`q`]])

This function gives the table of decompositions of the functions *
X _{u,φ}* in terms of the functions

`seriesNo`

(if omitted this defaults to `seriesNo=1`

which is
the principal series). The decomposition multiplicities are graded, and are
given as polynomials in one variable (specified by the argument `Indeterminate(Rationals)`

is assumed).

gap> W:=CoxeterGroup("A",3);; gap> uc:=UnipotentClasses(W);; gap> Display(ICCTable(uc)); Coefficients of X_phi on Y_psi for A3 |4 31 22 211 1111 ________________________ X4 |1 1 1 1 1 X31 |0 1 1 P2 P3 X22 |0 0 1 1 P4 X211 |0 0 0 1 P3 X1111 |0 0 0 0 1

In the above the multiplicities are given as products of cyclotomic
polynomials to display them more compactly. However the `Format`

or the
`Display`

of such a table can be controlled more precisely.

For instance, one can ask to not display the entries as products of cyclotomic polynomials:

gap> Display(ICCTable(uc),rec(CycPol:=false)); Coefficients of X_phi on Y_psi for A3 |4 31 22 211 1111 ___________________________ X4 |1 1 1 1 1 X31 |0 1 1 q+1 q^2+q+1 X22 |0 0 1 1 q^2+1 X211 |0 0 0 1 q^2+q+1 X1111 |0 0 0 0 1

Since `Display`

and `Format`

use the function FormatTable, all the
options of this function are also available. We can use this to restrict
the entries displayed to a given subset of the rows and columns:

gap> W:=CoxeterGroup("F",4);; gap> uc:=UnipotentClasses(W);; gap> show:=[13,24,22,18,14,9,11,19];; gap> Display(ICCTable(uc),rec(rows:=show,columns:=show)); Coefficients of X_phi on Y_psi for F4 |A1+~A1 A2 ~A2 A2+~A1 ~A2+A1 B2(11) B2 C3(a1)(11) ______________________________________________________________ Xphi{9,10} | 1 0 0 0 0 0 0 0 Xphi{8,9}'' | 1 1 0 0 0 0 0 0 Xphi{8,9}' | 1 0 1 0 0 0 0 0 Xphi{4,7}'' | 1 1 0 1 0 0 0 0 Xphi{6,6}' | P4 1 1 1 1 0 0 0 Xphi{4,8} | q^2 0 0 0 0 1 0 0 Xphi{9,6}'' | P4 P4 0 1 0 0 1 0 Xphi{4,7}' | q^2 0 P4 0 1 0 0 1

The function `ICCTable`

returns a record with various pieces of information
which can help further computations.

- .scalar:

this contains the table of multiplicities*P*of the_{ψ,χ}*X*on the_{ψ}*Y*. One should pay attention that by default, the table is not displayed in the same order as the stored_{χ}`.scalar`

, which is in order of the characters in the relative Weyl group; the table is transposed, then lines and rows are sorted bydimBu,class no,index of character in A(u)

while displayed.

- .group:

The group`W`.

- .relgroup:

The relative Weyl group for the Springer series.

- .series:

The index of the Springer series given for`W`.

- .dimBu:

The list of dim*B*for each local system_{u}*(u,φ)*in the series.

- .L:

The matrix of (unnormalized) scalar products of the functions*Y*with themselves, that is the_{ψ}*(φ,ψ)*entry is*∑*. This is thus a symmetric, block-diagonal matrix where the diagonal blocks correspond to geometric unipotent conjugacy classes. This matrix is obtained as a by-product of Lusztig's algorithm to compute_{g∈G(𝔽q)}Y_{φ}(g) Y_{ψ}(g)*P*._{ψ,χ}

`SpecialPieces(`

`uc`)

The special pieces forme a partition of the unipotent variety of a
reductive group * G* which was defined the first time in spalt82, chap.
III as the fibers of

Each piece is a union of unipotent conjugacy classes so is represented in
**CHEVIE** as a list of class numbers. Thus the list of special pieces is
returned as a list of lists of class numbers. The list is sorted by
increasing piece dimension, while each piece is sorted by decreasing class
dimension, so the special class is listed first.

gap> W:=CoxeterGroup("G",2); CoxeterGroup("G",2) gap> SpecialPieces(UnipotentClasses(W)); [ [ 1 ], [ 4, 3, 2 ], [ 5 ] ] gap> SpecialPieces(UnipotentClasses(W,3)); [ [ 1 ], [ 4, 3, 2, 6 ], [ 5 ] ]

The example above shows that the special pieces are different in characteristic 3.

`InducedLinearForm(`

`W`, `K`, h)

This routine can be used to find the Richardson-Dynkin diagram of the class
in the algebraic group * G* which contains a given unipotent class of a
reductive subgroup of maximum rank

It takes a linear form on the roots of `K`, defined by its value on the
simple roots (these values can define a Dynkin-Richardson diagram); then
extends this linear form to the roots of * G* by

gap> W:=CoxeterGroup("F",4);; gap> H:=ReflectionSubgroup(W,[1,3]);; gap> InducedLinearForm(W,H,[2,2]); [ 0, 1, 0, 0 ] gap> uc:=UnipotentClasses(W);; gap> Display(uc.classes[4]); A1+~A1: D-R0100 C=q^18.A1xA1

The example above shows that the class containing the regular class of the
Levi subgroup of type *A _{1}× ^{~} A_{1}* is the class

`A1+~A1`

.
gap3-jm

11 Mar 2019