90 Cyclotomic Hecke algebras

The cyclotomic Hecke algebras (Hecke algebras for complex reflection groups) are deformations of the group algebras, generalizing those for real reflection groups (see the next chapter on Iwahori-Hecke algebras).

Their general definition is as a quotient of the algebra of the braid group. We assume now that W is a finite reflection group in the complex vector space V since the theory for infinite groups has not yet been investigated in sufficient generality. The braid group associated is the fundamental group Π1 of the space (V-H∈ H H)/W, where H is the set of reflection hyperplanes of W. This group is generated by braid reflections, elements which by the natural map from the braid group to the reflection group project to distinguished reflections. All braid reflections which map to a given W-orbit of reflections are conjugate. For each such orbit let s be a representative of the orbit, let e be the order of the image of s in W, and let us,0,...,us,e-1 be indeterminates. The generic Hecke algebra is the ℤ[us,i± 1]s,i-algebra quotient of the braid group algebra by the relations (s-us,0)...(s-us,e-1)=0, and in general a cyclotomic Hecke algebra is any algebra obtained from this generic algebra by specializing some of the parameters.

The quotient of the Hecke algebra obtained by us,i`E(e)^i` is isomorphic to the group algebra of W. It is actually conjectured that over a suitable ring (such as the algebraic closure of the field of fractions ℚ(us,i)s,i ) the Hecke algebra is itself isomorphic to the group algebra of W over the same ring (this conjecture has been proven for imprimitive groups and most exceptional groups of rank 2 or 3, see MM10 for references; in addition it is well known to hold for real reflection groups; in the missing cases the ingredient lacking is to show that the dimension of the Hecke algebra is `Size(W)`).

The cyclotomic Hecke algebras can also been defined in terms of presentations. The braid group is presented by homogeneous relations, called braid relations, described in BMR98 and BM03 (some were obtained using the VKCURVE package of GAP3). Further, these relations are such that the reflection group is presented by the same relations, plus relations describing the order of the generating reflections, called the order relations. This allows to define the Hecke algebra by the same presentation as W, with the order relations replaced by a deformed version. Specifically, for each orbit of reflection hyperplanes of W, let us chose a distinguished reflection s of W, that is a reflection with a non-trivial eigenvalue of minimal argument (i.e., of the form `E(e)` where e is the order of s; then any reflection around an hyperplane of the same orbit is a conjugate of a power of s). Let then us,0,...,us,e-1 be indeterminates. The generic Hecke algebra is the ℤ[us,i± 1]s,i-algebra H with generators Ts in bijection with the generators of W, presented by the braid relations and the deformed order relations (Ts-us,0)...(Ts-us,e-1)=0 for each s as above.

Ariki, Koike and Malle have computed character tables for some of these algebras, including all those for 2-dimensional reflection groups, see BM93 and Mal96; CHEVIE contains models of each representation and character tables for real reflection groups, for imprimitive groups and for primitive groups of dimension 2 and 3 (these last representations have been computed in MM10) and for G29 and G33. Further there are some partial lists of representations and partial character tables for the remaining groups G31,G32 and G34.

A refinement of the conjecture that H has the same dimension as W is that there exists a set {bw}w∈ W of elements of the Braid group such that b1=1 and bw maps to w by the natural quotient map, such that their images Tw form a basis of the Hecke algebra. It is further conjectured that these can be chosen such that the linear form t defined by t(Tw)=0 if w ≠ 1 and t(1)=1 is a symmetrizing form for the symmetric algebra H. This is well known for all real reflection groups and has been proved in MM98 for imprimitive reflection groups and in MM10 for most primitive groups of dimension 2 and 3. Then for each irreducible character χ of H we define the Schur element Sχ associated to χ by the condition that for any element T of H we have t(T)=∑χ χ(T)/Sχ. It can be shown that the Schur elements are Laurent polynomials, and they do not depend on the choice of a basis having the above property. Malle has the computed these Schur elements, assuming the above conjectures; they are in the CHEVIE data.

90.1 Hecke

`Hecke( G, para )`

`Hecke( rec )`

returns the cyclotomic Hecke algebra corresponding to the complex reflection group G (see the introduction). The following forms are accepted for para: if para is a single value, it is replicated to become a list of same length as the number of generators of W. Otherwise, para should be a list of the same length as the number of generators of W, with possibly unbound entries (which means it can also be a list of lesser length). There should be at least one entry bound for each orbit of reflections, and if several entries are bound for one orbit, they should all be identical. Now again, an entry for a reflection of order e can be either a single value or a list of length `e`. If it is a list, it is interpreted as the list [u0,...,ue-1] of parameters for that reflection. If it is a single value q, it is interpreted as the partly specialized list of parameters `[q,E(e),...,E(e-1)]` (thus the convention is upwardly compatible with that for Coxeter groups, and `Hecke(G,1)` is the group algebra of G over the cyclotomic field ℚ({E(e)}e) where e runs over the orders of the generating reflections).

```    gap> G := ComplexReflectionGroup(4);
ComplexReflectionGroup(4)
gap> v := X( Cyclotomics );; v.name := "v";;
gap> CH := Hecke( G, v );
Hecke(G4,v)
gap> CH.parameter;
[ [ v, E(3), E(3)^2 ], [ v, E(3), E(3)^2 ] ]```

Here the single parameter `v` is interpreted as `[v,v]` which is in turn interpreted according to the above rules as `[[v,E(3),E(3)^2],[v,E(3),E(3)^2]]`.

The second form of the function `Hecke` takes as an argument a record which has a field `hecke` and returns the value of this field. This is used to return the Hecke algebra of objects derived from Hecke algebras, such as Hecke elements in various bases.

90.2 Operations for cyclotomic Hecke algebras

`Group`:

returns the complex reflection group from which the cyclotomic Hecke algebra was generated.

`Print`:

prints the cyclotomic Hecke algebra in a compact form. use `FormatGAP` for a form which can be read back into GAP3.

```    gap> G := ComplexReflectionGroup( 4 );
ComplexReflectionGroup(4)
gap> v := X( Cyclotomics );; v.name := "v";;
gap> CH := Hecke( G, v );
Hecke(G4,v)
gap> FormatGAP(CH);
"Hecke(ComplexReflectionGroup(4),v)"```

`CharTable`:

returns the character table for some types of cyclotomic Hecke algebras, namely those of imprimitive type and the primitive reflection groups numbered `G(4)` to `G(30)` in the Shephard-Todd classification, as well as `G(33)`. This is a record with exactly the same components as for the corresponding complex reflection group but where the component `irreducibles` contains the values of the irreducible characters of the algebra on certain basis elements Tw where w runs over the elements in the component `classtext`. Thus, the values are now polynomials in the parameters of the algebra. There are partial tables for the remaining groups `G(31)`, `G(32)`, `G(34)`.

```    gap> Display( CharTable( CH ) );
H(G4)

2 3     3   2     1        1      1            1
3 1     1   .     1        1      1            1

.     z 212    12      z12      1           1z
2P .     .   z     1        1    z12          z12
3P .     z 212     z        .      .            z
5P .     z 212    1z        1    z12           12

phi{1,0}    1   v^6 v^3   v^2      v^8      v          v^7
phi{1,4}    1     1   1  E3^2     E3^2     E3           E3
phi{1,8}    1     1   1    E3       E3   E3^2         E3^2
phi{2,5}    2    -2   .     1       -1     -1            1
phi{2,3}    2 -2v^3   . E3^2v -E3^2v^4 v+E3^2 -v^4-E3^2v^3
phi{2,1}    2 -2v^3   .   E3v   -E3v^4   v+E3   -v^4-E3v^3
phi{3,2}    3  3v^2  -v     .        .    v-1      v^3-v^2
```

90.3 SchurElements

`SchurElements( H )`

returns the list Schur elements for the (cyclotomic) Hecke algebra H (see the introduction for their definition).

```    gap> v:=X(Cyclotomics);;v.name:="v";;
gap> H:=Hecke(ComplexReflectionGroup(4),v);
Hecke(G4,v)
gap> SchurElements(H);
[ v^8 + 2*v^7 + 3*v^6 + 4*v^5 + 4*v^4 + 4*v^3 + 3*v^2 + 2*v + 1,
(2*E(3)-2*E(3)^2) + (-2*E(3)-10*E(3)^2)*v^(-1) + 12*v^(-2) + (
-10*E(3)-2*E(3)^2)*v^(-3) + (-2*E(3)+2*E(3)^2)*v^(-4),
(-2*E(3)+2*E(3)^2) + (-10*E(3)-2*E(3)^2)*v^(-1) + 12*v^(-2) + (
-2*E(3)-10*E(3)^2)*v^(-3) + (2*E(3)-2*E(3)^2)*v^(-4),
2 + 2*v^(-1) + 4*v^(-2) + 2*v^(-3) + 2*v^(-4),
(-2*E(3)-E(3)^2)*v^3 + (-4*E(3)-2*E(3)^2)*v^2 + 3*v + (
-2*E(3)-4*E(3)^2) + (-E(3)-2*E(3)^2)*v^(-1),
(-E(3)-2*E(3)^2)*v^3 + (-2*E(3)-4*E(3)^2)*v^2 + 3*v + (
-4*E(3)-2*E(3)^2) + (-2*E(3)-E(3)^2)*v^(-1),
v^2 + 2*v + 2 + 2*v^(-1) + v^(-2) ]
gap> List(last,CycPol);
[ P2^2P3P4P6, 2ER(-3)v^-4P2^2P'3P'6, -2ER(-3)v^-4P2^2P"3P"6,
2v^-4P3P4, (3-ER(-3))/2v^-1P2^2P'3P"6, (3+ER(-3))/2v^-1P2^2P"3P'6,
v^-2P2^2P4 ]```

90.4 SchurElement

`SchurElement( H, phi )`

returns the Schur element (see `SchurElements`) of the Cyclotomic Hecke algebra H for the irreducible character of H of parameter phi (see `CharParams` in section CHEVIE utility functions);

```    gap> v := X( Cyclotomics );; v.name := "v";;
gap> W:=ComplexReflectionGroup(4);;
gap> H := Hecke( W, v);
Hecke(G4,v)
gap> SchurElement( H, [ [ 2, 5] ] );
2 + 2*v^(-1) + 4*v^(-2) + 2*v^(-3) + 2*v^(-4)```

90.5 FactorizedSchurElements

`FactorizedSchurElements( H )`

Let H be a (cyclotomic) Hecke algebra for the complex reflection group W, whose parameters are all (Laurent) monomials in some variables x1,...,xn, and let K be the field of definition of W. Then Maria Chlouveraki has shown that the Schur elements of H then take the particular form M∏Φ Φ(MΦ) where Φ runs over a list of K-cyclotomic polynomials, and M and MΦ are (Laurent) monomials (in possibly some fractional powers) of the variables xi. The function `FactorizedSchurElements` returns a data structure which shows this factorization. In CHEVIE, the parameters of H must be `Mvp` (see Mvp).

```    gap> x:=Mvp("x");;y:=Mvp("y");;
gap> H:=Hecke(ComplexReflectionGroup(4),[[1,x,y]]);
Hecke(G4,[[1,x,y]])
gap> FactorizedSchurElements(H);
[ x^-4y^-4P1P6(x)P1P6(y)P2(xy), P1P6(x)P1P6(xy^-1)P2(x^2y^-1),
-x^-4y^5P1P6(y)P2(xy^-2)P1P6(xy^-1),
-x^-1yP1(x)P1(y)P6(xy^-1)P2(xy),
-x^-4yP1(x)P6(y)P1(xy^-1)P2(x^2y^-1),
x^-1y^-1P6(x)P1(y)P2(xy^-2)P1(xy^-1),
x^-2yP2(xy^-2)P2(xy)P2(x^2y^-1) ]```

90.6 FactorizedSchurElement

`FactorizedSchurElement( H, phi )`

returns the FactorizedSchur element (see `FactorizedSchurElements`) of the Cyclotomic Hecke algebra H for the irreducible character of H of parameter phi (see `CharParams` in section CHEVIE utility functions);

```    gap> W:=ComplexReflectionGroup(4);;
gap> H := Hecke( W, [[1,x,y]]);
Hecke(G4,[[1,x,y]])
gap> FactorizedSchurElement( H, [ [ 2, 5] ] );
-x^-1yP1(x)P1(y)P6(xy^-1)P2(xy)```

90.7 Functions and operations for FactorizedSchurElements

In CHEVIE, a `FactorizedSchurElement` representing a Schur element of the form M∏Φ Φ(MΦ) is a record with a field `.factor` which holds the monomial M, and a field `.vcyc` which holds a list of record describing each factor in the product. An element of `.vcyc` representing a term Φ(MΦ) is itself record with fields `.monomial` holding MΦ, and a field `.pol` holding a `CycPol` (see CycPol) representing Φ. A monomial is an `Mvp` with a single term.

The arithmetic operations `*` and `/` work for `FactorizedSchurElements`:

```    gap> W:=ComplexReflectionGroup(4);;
gap> H := Hecke( W, [[1,x,y]]);
Hecke(G4,[[1,x,y]])
gap> p:=FactorizedSchurElement( H, [ [ 2, 5] ] );
-x^-1yP1(x)P1(y)P6(xy^-1)P2(xy)
gap> p*p;
x^-2y^2P1^2(x)P1^2(y)P6^2(xy^-1)P2^2(xy)
gap> l:=FactorizedSchurElements(H);;
gap> List(l,x->l/x);
[ 1, x^-4y^-4P1P6(y)P2(xy), -y^-9P1P6(x)P2(xy), -x^-3y^-5P6(x)P6(y),
-y^-5P6(x)P1(y)P2(xy), x^-3y^-3P1(x)P6(y)P2(xy),
x^-2y^-5P1P6(x)P1P6(y) ]```

They also have `Print` and `String` methods, as well as the following methods:

`Value`:
this function works as for `Mvp`s, and partially or completely evaluates the given element keeping as much as possible the factorized form.

```    gap> W:=ComplexReflectionGroup(4);;
gap> H := Hecke( W, [[1,x,y]]);
Hecke(G4,[[1,x,y]])
gap> p:=FactorizedSchurElement( H, [ [ 2, 5] ] );
-x^-1yP1(x)P1(y)P6(xy^-1)P2(xy)
gap> Value(p,["x",E(3)]);
(3-ER(-3))/2y^-1P1P2P'6^2(y)
gap> Value(last,["y",2]);
-9ER(-3)/2```

`Expand`:
this function expands the element, converting it to an `Mvp`.

```    gap> Expand(p);
1-x^-1y+x^-1y^2-xy^-1+2xy-xy^3-2x^2-2y^2+x^2y^-1+x^2y^2+x^3+y^3-x^3y```

90.8 LowestPowerGenericDegrees for cyclotomic Hecke algebras

`LowestPowerGenericDegrees( H )`

H should be an Hecke algebra all of whose parameters are monomials in the same indeterminate. `LowestPowerGenericDegrees` returns a list holding, for each character χ, the opposite of the valuation of the Schur element of χ (for an Hecke algebra of a Coxeter group this is Lusztig's a-function). One should note that this function first computes explicitly the Schur elements, so for a one-parameter algebra, `LowestPowerGenericDegrees(Group(H))` may be much faster.

```    gap> q:=X(Cyclotomics);;q.name:="q";;
gap> H:=Hecke(ComplexReflectionGroup(6),[q^2,q^4]);
Hecke(G6,[q^2,q^4])
gap> LowestPowerGenericDegrees(H);
[ 0, 10, 10, 2, 28, 28, 18, 4, 4, 18, 4, 4, 6, 12 ]```

90.9 HighestPowerGenericDegrees for cyclotomic Hecke algebras

`HighestPowerGenericDegrees( H )`

H should be an Hecke algebra all of whose parameters are monomials in the same indeterminate. `HighestPowerGenericDegrees` returns a list holding, for each character χ, the degree of the Poincar'e polynomial minus the degree of the Schur element of χ (for an Hecke algebra of a Coxeter group this is Lusztig's A-function). One should note that this function first computes explicitly the Schur elements, so for a one-parameter algebra, `HighestPowerGenericDegrees(Group(H))` may be much faster.

```    gap> q:=X(Cyclotomics);;q.name:="q";;
gap> H:=Hecke(ComplexReflectionGroup(6),[q^2,q^4]);
Hecke(G6,[q^2,q^4])
gap> HighestPowerGenericDegrees(H);
[ 0, 38, 38, 22, 44, 44, 42, 32, 32, 42, 32, 32, 34, 36 ]```

90.10 HeckeCentralMonomials

`HeckeCentralMonomials( HW )`

Returns the scalars by which the central element Tπ acts on irreducible representations of HW. Here, for an irreducible group, π is the generator of the center of the pure braid group, which is also z|Z| where z is the generator of the center of the braid group and |Z| the order of the center of W. In the case of an Iwahori-Hecke algebra, Tπ is thus Tw02.

```    gap> v := X( Cyclotomics );; v.name := "v";;
gap> H := Hecke( CoxeterGroup( "H", 3 ),  v );;
gap> HeckeCentralMonomials( H );
[ v^0, v^30, v^12, v^18, v^10, v^10, v^20, v^20, v^15, v^15 ]```

90.11 Representations for cyclotomic Hecke algebras

`Representations( H[, l])`

This function returns the list of representations of the algebra H. Each representation is returned as a list of the matrix images of the generators. This function is only partially implemented for the Hecke algebras of the groups G31, G32 and G34: we have 48 representations out of 59 for type G31, 30 representations out of 102 for type G32 and 38 representations out of 169 for type G34.

If there is a second argument l, it must be a list of indices (resp. a single index), and only the representations with these indices (resp. that index) in the list of all representations are returned.

```    gap> W:=ComplexReflectionGroup(4);;
gap> q:=X(Cyclotomics);;q.name:="q";;
gap> H:=Hecke(W,q);
Hecke(G4,q)
gap> Representations(H);
[ [ [ [ q ] ], [ [ q ] ] ], [ [ [ E(3)*q^0 ] ], [ [ E(3)*q^0 ] ] ],
[ [ [ E(3)^2*q^0 ] ], [ [ E(3)^2*q^0 ] ] ],
[ [ [ E(3)*q^0, 0*q^0 ], [ -E(3)*q^0, E(3)^2*q^0 ] ],
[ [ E(3)^2*q^0, E(3)^2*q^0 ], [ 0*q^0, E(3)*q^0 ] ] ],
[ [ [ q, 0*q^0 ], [ -q, E(3)^2*q^0 ] ],
[ [ E(3)^2*q^0, E(3)^2*q^0 ], [ 0*q^0, q ] ] ],
[ [ [ q, 0*q^0 ], [ -q, E(3)*q^0 ] ],
[ [ E(3)*q^0, E(3)*q^0 ], [ 0*q^0, q ] ] ],
[ [ [ E(3)^2*q^0, 0*q^0, 0*q^0 ],
[ (E(3)^2)*q + (E(3)^2), E(3)*q^0, 0*q^0 ],
[ E(3)*q^0, q^0, q ] ],
[ [ q, -q^0, E(3)*q^0 ], [ 0*q^0, E(3)*q^0,
(-E(3)^2)*q + (-E(3)^2) ], [ 0*q^0, 0*q^0, E(3)^2*q^0 ]
] ] ]```

The models implemented for imprimitive types G(de,e,n) for n>2 and de>1, excepted for G(3,3,3), G(3,3,4), G(3,3,5) and G(4,4,3), involve rational fractions, so work only with `Mvp` parameters for H.

```    gap> W:=ComplexReflectionGroup(6,6,3);;
gap> H:=Hecke(W,Mvp("x"));
Hecke(G663,x)
gap> Representations(H,6);
[ [ [ -1, 0, 0 ], [ 0, -1/2+1/2x, -1/2-1/2x ],
[ 0, -1/2-1/2x, -1/2+1/2x ] ],
[ [ -1, 0, 0 ], [ 0, -1/2+1/2x, 1/2+1/2x ],
[ 0, 1/2+1/2x, -1/2+1/2x ] ],
[ [ (-x+x^2)/(1+x), (1+x^2)/(1+x), 0 ],
[ 2x/(1+x), (-1+x)/(1+x), 0 ], [ 0, 0, -1 ] ] ]```

90.12 HeckeCharValues for cyclotomic Hecke algebras

`HeckeCharValues( H, w)`

Let W be the group for which H is a Hecke algebra. w should be a word in the generators of W. The function returns the values of the irreducible characters of H on the image in H of the braid group element defined by the word w, whenever possible. It first test if w is a known representative of a conjugacy class in `ChevieClassInfo(W).classtext`. Then, if W is a Coxeter group, it returns `HeckeCharValues` on the element of the `"T"` basis defined by w. Finally, it tries to compute the matrix of w in the various representations using `Representations`.

```    gap> W:=ComplexReflectionGroup(4);;
gap> q:=X(Cyclotomics);;q.name:="q";;
gap> H:=Hecke(W,q);
Hecke(G4,q)
gap> HeckeCharValues(H,[1,2,1,2,1,2]);
[ q^6, q^0, q^0, -2*q^0, -2*q^3, -2*q^3, 3*q^2 ]```

gap3-jm
11 Mar 2019