84 Representations of Iwahori-Hecke algebras

Let W be a finite Coxeter group with generators {s1, ..., sn}, and H = H(W, R, {qi}) a corresponding Iwahori-Hecke algebra over the ring R as defined in chapter Iwahori-Hecke algebras. We shall now describe functions for dealing with representations and characters of H.

The fact that the algebra H is given by a presentation makes it particularly easy to work with representations. Assume we are given any set of matrices M1,...,Mn ∈ Rd x d. The fact that H is given by generators and defining relations immediately implies that there is a (unique) representation ρ:H → Rd x d such that ρ(Tsi)=Mi for all i, if and only if the matrices Mi satisfy the same relations as those for the generators Tsi of H.

A general approach for the construction of representations is in terms of W-graphs, see KL79, p.165. Any such W-graph carries a representation of H. Note that, for these purposes, it is necessary to assume that the parameters of H are squares of some elements of the ground ring. The simplest example, the standard W-graph defined in KL79, Ex.~6.2 yields a `deformation' of the natural reflection representation of W. This can be produced in CHEVIE using the function HeckeReflectionRepresentation.

Another possibility to construct W-graphs is by using the Kazhdan-Lusztig theory of left cells (see KL79); see the following chapter for more details.

In a similar way as the ordinary character table of the finite Coxeter group W is defined, one also has a character table for the Iwahori-Hecke algebra H in the case when the ground ring A is a field such H is split and semisimple. The generic choice for such a ground ring is the rational function field K=\overlineQ(v1, ...,vn) where the parameters of the corresponding algebra HK are given by qi=vi2 for all i.

By Tits' Deformation Theorem (see CR87, Sec.~68, for example), the algebra HK is (abstractly) isomorphic to the group algebra of W over K. Moreover, we have a bijection between the irreducible characters of HK and W, given as follows. Let χ be an irreducible character of HK. Then we have χ(Tw) ∈ A where A=\overlineZ[v1,...,vn] and \overlineZ denotes the ring of algebraic integers in \overlineQ. We can find a ring homomorphism f : A → \overlineQ such that f(a)=a for all a ∈ \overlineZ and f(vi)=1 for i=1,...,n. Then it turns out that the function χf : w → f(χ(Tw)) is an irreducible character of W, and the assignment χ → χf defines a bijection between the irreducible characters of HK and W.

Now this bijection does depend on the choice of f. But one should keep in mind that this only plays a role in the case where W is a non-crystallographic Coxeter group. In all other cases, as is well-known, the character table of W is rational; moreover, the values of the irreducible characters of HK at basis elements Tw lie in the ring Z[v1,...,vn].

The character table of HK is defined to be the square matrix (χ(Tw)) where χ runs over the irreducible characters of HK and w runs over a set of representatives of minimal length in the conjugacy classes of W. The character tables of Iwahori-Hecke algebras (in this sense) are known for all types: the table for type A was first computed by Starkey (see the description of his work in Car86); then different descriptions with different proofs were given in Ram91 and Pfe94b. The tables for the non crystallographic types I2(m), H3, H4 can be constructed from the explicit matrix representations given in CR87, Sec.~67C, Lus81 and AL82, respectively. For the classical types B and D see HR94 and Pfe96. The tables for the remaining exceptional types were computed in Gec94, Gec95 and GM97.

If H is an Iwahori-Hecke algebra over an arbitrary ground ring R as above, then the GAP function CharTable applied to the corresponding record returns a character table record which is build up in exactly the same way as for the finite Coxeter group W itself but where the record component irreducibles contains the character values which are obtained from those of the generic multi-parameter algebra HK by specializing the indeterminates vi to the variables in sqrtParameters.

Subsections

  1. HeckeReflectionRepresentation
  2. CheckHeckeDefiningRelations
  3. CharTable for Hecke algebras
  4. Representations for Hecke algebras
  5. HeckeCharValues
  6. HeckeClassPolynomials
  7. PoincarePolynomial
  8. SchurElements for Iwahori-Hecke algebras
  9. SchurElement for Iwahori-Hecke algebras
  10. GenericDegrees
  11. LowestPowerGenericDegrees for Hecke algebras
  12. HeckeCharValuesGood

84.1 HeckeReflectionRepresentation

HeckeReflectionRepresentation( W )

returns a list of matrices which give the reflection representation of the Iwahori-Hecke algebra corresponding to the Coxeter group W. The function Hecke must have been applied to the record W.

    gap> v:= X( Rationals );;  v.name := "v";;
    gap> H := Hecke(CoxeterGroup( "B", 2) , v^2, v);
    Hecke(CoxeterGroup("B",2),v^2,v)
    gap> ref:= HeckeReflectionRepresentation( H );
    [ [ [ -v^0, 0*v^0 ], [ -v^2, v^2 ] ], 
      [ [ v^2, -2*v^0 ], [ 0*v^0, -v^0 ] ] ] 

    gap> H := Hecke( CoxeterGroup( "H", 3 ));;  
    gap> HeckeReflectionRepresentation( H );
    [ [ [ -1, 0, 0 ], [ -1, 1, 0 ], [ 0, 0, 1 ] ], 
      [ [ 1, E(5)+2*E(5)^2+2*E(5)^3+E(5)^4, 0 ], [ 0, -1, 0 ], 
          [ 0, -1, 1 ] ], [ [ 1, 0, 0 ], [ 0, 1, -1 ], [ 0, 0, -1 ] ] ]

This function requires the package "chevie" (see RequirePackage).

84.2 CheckHeckeDefiningRelations

CheckHeckeDefiningRelations( H , t )

returns true or false, according to whether a given set t of matrices corresponding to the standard generators of the Coxeter group Group(H) defines a representation of the Iwahori-Hecke algebra H or not.

    gap> H := Hecke(CoxeterGroup( "F", 4 ));;
    gap> r := HeckeReflectionRepresentation( H );;
    gap> CheckHeckeDefiningRelations( H, r );
    true 

This function requires the package "chevie" (see RequirePackage).

84.3 CharTable for Hecke algebras

CharTable( H )

CharTable returns the character table record of the Iwahori-Hecke algebra H. This is basically the same as the character table of a Coxeter group described earlier with the exception that the component irreducibles contains the matrix of the values of the irreducible characters of the generic Iwahori-Hecke algebra specialized at the parameters in the component parameter of H. Thus, if all these parameters are equal to 1 ∈ Q then the component irreducibles just contains the ordinary character table of the underlying Coxeter group.

The function CharTable first recognizes the type of H, then calls special functions for each type involved in H and finally forms the direct product of all these tables.

    gap> W := CoxeterGroup( "G", 2 );;
    gap> u := X( Rationals );;  u.name := "u";;
    gap> v := X( LaurentPolynomialRing( Rationals ) );; v.name := "v";;
    gap> u := u * v^0;;
    gap> H := Hecke( W, [ u^2, v^2 ], [ u, v ] );
    Hecke(CoxeterGroup("G",2),[ (u^2), v^2 ],[ (u), v ])
    gap> Display( CharTable( H ) );
    H(G2)
    
               2   2          2     2        1       1        2
               3   1          .     .        1       1        1

                 A_0       ~A_1   A_1      G_2     A_2 A_1+~A_1
              2P A_0        A_0   A_0      A_2     A_2      A_0
              3P A_0       ~A_1   A_1 A_1+~A_1     A_0 A_1+~A_1
 
    phi{1,0}       1        v^2   u^2   u^2v^2  u^4v^4   u^6v^6
    phi{1,6}       1         -1    -1        1       1        1
    phi{1,3}'      1        v^2    -1     -v^2     v^4     -v^6
    phi{1,3}''     1         -1   u^2     -u^2     u^4     -u^6
    phi{2,1}       2      v^2-1 u^2-1       uv -u^2v^2 -2u^3v^3
    phi{2,2}       2      v^2-1 u^2-1      -uv -u^2v^2  2u^3v^3

As mentioned before, the record components classparam, classnames and irredinfo contain canonical labels and parameters for the classes and the characters (see the introduction to chapter Classes and representations for reflection groups and also ChevieCharInfo). For direct products, sequences of such canonical labels of the individual types are given.

We can also have character tables for algebras where the parameters are not necessarily indeterminates:

    gap> H1 := Hecke( W, [ E(6)^2, E(6)^4 ],[ E(6), E(6)^2 ] );
    Hecke(CoxeterGroup("G",2),[ E(3), E(3)^2 ],[ -E(3)^2, E(3) ])
    gap> ct := CharTable( H1 );
    CharTable( "H(G2)" )
    gap> Display( ct );
    H(G2)

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

		  A_0          ~A_1           A_1      G_2  A_2 A_1+~A_1
	       2P A_0           A_0           A_0      A_2  A_2      A_0
	       3P A_0          ~A_1           A_1 A_1+~A_1  A_0 A_1+~A_1

    phi{1,0}        1          E3^2            E3        1    1        1
    phi{1,6}        1            -1            -1        1    1        1
    phi{1,3}'       1          E3^2            -1    -E3^2   E3       -1
    phi{1,3}''      1            -1            E3      -E3 E3^2       -1
    phi{2,1}        2 (-3-ER(-3))/2 (-3+ER(-3))/2       -1   -1        2
    phi{2,2}        2 (-3-ER(-3))/2 (-3+ER(-3))/2        1   -1       -2

    gap> RankMat( ct.irreducibles );
    5 

The last result tells us that the specialized character table is no more invertible.

Character tables of Iwahori--Hecke algebras were introduced in GP93; see also the introduction to this chapter for further information about the origin of the various tables.

This function requires the package "chevie" (see RequirePackage).

84.4 Representations for Hecke algebras

Representations( H, l )

This function returns the list of representations of the Iwahori-Hecke algebra H. Each representation is returned as a list of the matrix images of the generators Ts.

If there is a second argument, it must be a list of indices, and only the representations with these indices in the list of all representations are returned.

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

This function requires the package "chevie" (see RequirePackage).

84.5 HeckeCharValues

HeckeCharValues( T [,irreds])

T is an element of an Iwahori-Hecke algebra (expressed in any basis) and irreds is a set of irreducible characters of the algebra (given as vectors). HeckeCharValues returns the values of irreds on the element T (the method used is to convert to the T basis, and then use HeckeClassPolynomials). If irreds is not given, all character values are returned.

    gap> q := X( Rationals );; q.name := "q";;
    gap> H := Hecke( CoxeterGroup( "B", 2 ), q ^ 2, q );;
    gap> HeckeCharValues( Basis( H, "C'" )( 1, 2, 1 ) );
    [ 0*q^0, q + q^(-1), 0*q^0, q^3 + 2*q + 2*q^(-1) + q^(-3), 
      -q - q^(-1) ] 

See also HeckeClassPolynomials.

This function requires the package "chevie" (see RequirePackage).

84.6 HeckeClassPolynomials

HeckeClassPolynomials( h [, reps] )

returns the class polynomials of the Hecke element h of the Hecke algebra H with respect to representatives reps of minimal length in the conjugacy classes of the Coxeter group Group(H).

If absent, reps is taken as WordsClassRepresentatives(Group(H)). These polynomials have the following property. Given the class polynomials p corresponding to h and the matrix X of the values of the irreducible characters of the Iwahori-Hecke algebra on Tw (for w in reps), then the product X*p is the list of values of the irreducible characters on the element h of the Iwahori-Hecke algebra.

    gap> u := X( Rationals );; u.name := "u";;
    gap> W := CoxeterGroup( "A", 3 );
    CoxeterGroup("A",3)
    gap> H := Hecke( W, u );; 
    gap> h := Basis( H, "T" )( LongestCoxeterElement( W ) );
    T(1,2,1,3,2,1)
    gap> cp := HeckeClassPolynomials( h );
    [ 0*u^0, 0*u^0, u^2, u^3 - 2*u^2 + u, u^3 - u^2 + u - 1 ]
    gap> CharTable( H ).irreducibles * cp;
    [ u^0, -u^2, 2*u^3, -u^4, u^6 ] 

So, the entries in this list are the values of the irreducible characters on the basis element corresponding to the longest element in the Coxeter group.

The class polynomials were introduced in GP93.

This function requires the package "chevie" (see RequirePackage).

84.7 PoincarePolynomial

PoincarePolynomial( H )

The Poincaré polynomial of the Hecke algebra H, which is equal to SchurElements(H)[ind] where ind is the position of the 1-dimensional index representation in the character table of H, that is, the representation which maps Tsi to the corresponding parameter qi.

    gap> q := X( Rationals );; q.name := "q";;
    gap> W := CoxeterGroup( "G", 2 );; H := Hecke( W, q );
    Hecke(CoxeterGroup("G",2),q)
    gap> PoincarePolynomial( H );
    q^6 + 2*q^5 + 2*q^4 + 2*q^3 + 2*q^2 + 2*q + 1 

This function requires the package "chevie" (see RequirePackage).

84.8 SchurElements for Iwahori-Hecke algebras

SchurElements( H )

returns the list of constants Sχ arising from the Schur relations for the irreducible characters χ of the Iwahori-Hecke algebra H, that is δw,1=∑χ χ(Tw)/Sχ where δ is the Kronecker symbol.

The element Sχ also equal to P/Dχ where P is the Poincare polynomial and Dχ is the generic degree of χ. Note, however, that this only works if Dχ ≠ 0. (We can have Dχ=0 if the parameters of H are suitably chosen roots of unity, for example.) The ordering of the Schur elements corresponds to the ordering of the characters as returned by the function CharTable.

    gap> u := X( Rationals );; u.name := "u";;
    gap> v := X( LaurentPolynomialRing( Rationals ) );; v.name := "v";;
    gap> W := CoxeterGroup("G",2);;
    gap> schur := SchurElements( Hecke( W, [ u ^ 2, v ^ 2 ]));
    #warning: u*v chosen as 2nd root of (u\^2)*v\^2
    [ (u^6 + u^4)*v^6 + (u^6 + 2*u^4 + u^2)*v^4 + (u^4 + 2*u^2 + 1)*v^
        2 + (u^2 + 1), (1 + u^(-2)) + (1 + 2*u^(-2) + u^(-4))*v^(
        -2) + (u^(-2) + 2*u^(-4) + u^(-6))*v^(-4) + (u^(-4) + u^(-6))*v^(
        -6), (u^(-4) + u^(-6))*v^6 + (u^(-2) + 2*u^(-4) + u^(-6))*v^4 + (
        1 + 2*u^(-2) + u^(-4))*v^2 + (1 + u^(-2)), 
      (u^2 + 1) + (u^4 + 2*u^2 + 1)*v^(-2) + (u^6 + 2*u^4 + u^2)*v^(
        -4) + (u^6 + u^4)*v^(-6), (2*u^0)*v^2 + (2*u - 2*u^(-1))*v + (2*u^
        2 - 2 + 2*u^(-2)) + (-2*u + 2*u^(-1))*v^(-1) + (2*u^0)*v^(-2), 
      (2*u^0)*v^2 + (-2*u + 2*u^(-1))*v + (2*u^2 - 2 + 2*u^(-2)) + (2*u - 
        2*u^(-1))*v^(-1) + (2*u^0)*v^(-2) ] 

The Poincaré polynomial is just the Schur element corresponding to the trivial (or index) representation:

    gap> schur[PositionId(W)];
    (u^6 + u^4)*v^6 + (u^6 + 2*u^4 + u^2)*v^4 + (u^4 + 2*u^2 + 1)*v^
    2 + (u^2 + 1)

(note that the trivial character is not always the first character, which is why we use PositionId) For further information about generic degrees and connections with the representation theory of finite groups of Lie type, see BC72 and Car85.

This function requires the package "chevie" (see RequirePackage).

84.9 SchurElement for Iwahori-Hecke algebras

SchurElement( H, phi )

returns the Schur element (see Schur Elements for Iwahori-Hecke algebras) of the Iwahori-Hecke algebra H for the irreducible character of H of parameter phi (see CharParams in section Appendix -- utility functions of CHEVIE).

    gap> u := X( Rationals );; u.name := "u";;
    gap> v := X( LaurentPolynomialRing( Rationals ) );; v.name := "v";;
    gap> H := Hecke( CoxeterGroup( "G", 2 ), [ u , v]);
    Hecke(CoxeterGroup("G",2),[ u, v ])
    gap> SchurElement( H, [ [ 1, 3, "'" ] ] );
    (u^(-2) + u^(-3))*v^3 + (u^(-1) + 2*u^(-2) + u^(-3))*v^2 + 
    (1 + 2*u^(-1) + u^(-2))*v + (1 + u^(-1))

This function requires the package "chevie" (see RequirePackage).

84.10 GenericDegrees

We do not have a function for the generic degrees of an Iwahori-Hecke algebra since they are not always defined (for example, if the parameters of the algebra are roots of unity). If we have a generic multi-parameter Iwahori-Hecke algebra H then the generic degrees are certainly defined, and they can be computed with the command:

List( SchurElements( H ), x -> PoincarePolynomial( H ) / x );

(See PoincarePolynomial and SchurElement.)

84.11 LowestPowerGenericDegrees for Hecke algebras

LowestPowerGenericDegrees( H )

H should be an Iwahori-Hecke algebra all of whose parameters are powers of the same indeterminate. LowestPowerGenericDegrees returns a list holding the a-function for all irreducible characters of this algebra, that is, for each character χ, the valuation of the Schur element of χ. The ordering of the result corresponds to the ordering of the characters in CharTable(H). 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(Rationals);;q.name:="q";;
    gap> H:=Hecke(CoxeterGroup("B",4),[q^2,q]);
    Hecke(CoxeterGroup("B",4),[ q^2, q, q, q ])
    gap> LowestPowerGenericDegrees(H);
    [ 7, 6, 7, 12, 20, 3, 5, 3, 7, 6, 13, 2, 3, 10, 1, 4, 2, 7, 0, 3 ]

This function requires the package "chevie" (see RequirePackage).

84.12 HeckeCharValuesGood

HeckeCharValuesGood( H, w )

Let H be a Hecke algebra for the Coxeter group CoxeterGroup(H), let w be a good element of CoxeterGroup(H) in the sense of GM97 (the representatives of conjugacy classes stored in CHEVIE are such elements), and let d be the order of w.

HeckeCharValuesGood computes the values of the irreducible characters of the Iwahori-Hecke algebra HW on Twd. The point is that the character table of the Hecke algebra is not used, and that all the eigenvalues of Twd are monomials in H.parameters, so this can be used to find the absolute value of the eigenvalues of Tw, a step towards computing the character table of the Hecke algebra.

    gap> q:=X(Rationals);;q.name:="q";;
    gap> H:=Hecke(CoxeterGroup("B",4),[q^2,q]);
    Hecke(CoxeterGroup("B",4),[ q^2, q, q, q ])
    gap> HeckeCharValuesGood( H, [ 1, 2, 3 ] );
    [ q^12, 4*q^12, 3*q^12 + 3*q^8, 3*q^8 + 1, q^0, 2*q^18 + q^12,
      6*q^12, 2*q^18 + 3*q^16 + 3*q^12, 3*q^12 + 3*q^8 + 2*q^6,
      3*q^16 + 3*q^8, 2*q^6 + 1, 2*q^18, 3*q^16 + 3*q^12, 2*q^6,
      q^24 + 2*q^18, 4*q^12, q^24 + 3*q^16, q^12 + 2*q^6, q^24, q^12 ]

This function requires the package "chevie" (see RequirePackage). Previous Up Next
Index

GAP 3.4.4
April 1997