Iwahori Hecke Algebras

The Iwahori Hecke algebra is defined in [Iwahori1964]. In that original paper, the algebra occurs as the convolution ring of functions on a p-adic group that are compactly supported and invariant both left and right by the Iwahori subgroup. However Iwahori determined its structure in terms of generators and relations, and it turns out to be a deformation of the group algebra of the affine Weyl group.

Once the presentation is found, the Iwahori Hecke algebra can be defined for any Coxeter group. It depends on a parameter q which in Iwahori’s paper is the cardinality of the residue field. But it could just as easily be an indeterminate.

Then the Iwahori Hecke algebra has the following description. Let W be a Coxeter group, with generators (simple reflections) s1,,sn. They satisfy the relations s2i=1 and the braid relations

sisjsisj=sjsisjsi

where the number of terms on each side is the order of sisj.

The Iwahori Hecke algebra has a basis T1,,Tn subject to relations that resemble those of the si. They satisfy the braid relations and the quadratic relation

(Tiq)(Ti+1)=0.

This can be modified by letting q1 and q2 be two indeterminates and letting

(Tiq1)(Tiq2)=0.

In this generality, Iwahori Hecke algebras have significance far beyond their origin in the representation theory of p-adic groups. For example, they appear in the geometry of Schubert varieties, where they are used in the definition of the Kazhdan-Lusztig polynomials. They appear in connection with quantum groups, and in Jones’s original paper on the Jones polynomial.

Here is how to create an Iwahori Hecke algebra (in the T basis):

sage: R.<q> = PolynomialRing(ZZ)
sage: H = IwahoriHeckeAlgebra("B3",q)
sage: T = H.T(); T
Iwahori-Hecke algebra of type B3 in q,-1 over Univariate Polynomial Ring
 in q over Integer Ring in the T-basis
sage: T1,T2,T3 = T.algebra_generators()
sage: T1*T1
(q-1)*T[1] + q

If the Cartan type is affine, the generators will be numbered starting with T0 instead of T1.

You may convert a Weyl group element into the Iwahori Hecke algebra:

sage: W = WeylGroup("G2",prefix="s")
sage: [s1,s2] = W.simple_reflections()
sage: P.<q> = LaurentPolynomialRing(QQ)
sage: H = IwahoriHeckeAlgebra("G2",q)
sage: T = H.T()
sage: T(s1*s2)
T[1,2]