KazhdanLusztigPolynomial( W, y, w [, ly, lw ] )
returns the Kazhdan-Lusztig polynomial in the indeterminate
X(Rationals) corresponding to the elements y and w (given as
permutations) of the Coxeter group W. The optional variables ly and
lw contain the length of y and w, respectively. The above form for
the input has been chosen for efficiency reasons. If one prefers to give
as input just two reduced expressions, one can define a new function as
follows (for example):
gap> klpol := function( W, x, y)
> return KazhdanLusztigPolynomial( W, PermCoxeterWord( W, x ),
> PermCoxeterWord( W, y ), Length( x ), Length( y ) );
> end;
function ( W, x, y ) ... end
We use this function in the following example where we compute the polynomials P_{1,w} for all elements w in the Coxeter group of type A_3.
gap> q := X( Rationals );; q.name := "q";;
gap> W := CoxeterGroup( "B", 3 );;
gap> el := CoxeterWords( W );
[ [ ], [ 3 ], [ 2 ], [ 1 ], [ 3, 2 ], [ 2, 1 ], [ 2, 3 ], [ 1, 3 ],
[ 1, 2 ], [ 2, 1, 2 ], [ 3, 2, 1 ], [ 2, 3, 2 ], [ 2, 1, 3 ],
[ 1, 2, 1 ], [ 1, 3, 2 ], [ 1, 2, 3 ], [ 3, 2, 1, 2 ],
[ 2, 1, 2, 3 ], [ 2, 3, 2, 1 ], [ 2, 1, 3, 2 ], [ 1, 2, 1, 2 ],
[ 1, 3, 2, 1 ], [ 1, 2, 1, 3 ], [ 1, 2, 3, 2 ], [ 3, 2, 1, 2, 3 ],
[ 2, 1, 2, 3, 2 ], [ 2, 3, 2, 1, 2 ], [ 2, 1, 3, 2, 1 ],
[ 1, 3, 2, 1, 2 ], [ 1, 2, 1, 2, 3 ], [ 1, 2, 1, 3, 2 ],
[ 1, 2, 3, 2, 1 ], [ 2, 3, 2, 1, 2, 3 ], [ 2, 1, 2, 3, 2, 1 ],
[ 2, 1, 3, 2, 1, 2 ], [ 1, 3, 2, 1, 2, 3 ], [ 1, 2, 1, 2, 3, 2 ],
[ 1, 2, 1, 3, 2, 1 ], [ 1, 2, 3, 2, 1, 2 ], [ 2, 1, 2, 3, 2, 1, 2 ],
[ 2, 1, 3, 2, 1, 2, 3 ], [ 1, 2, 3, 2, 1, 2, 3 ],
[ 1, 2, 1, 2, 3, 2, 1 ], [ 1, 2, 1, 3, 2, 1, 2 ],
[ 2, 1, 2, 3, 2, 1, 2, 3 ], [ 1, 2, 1, 2, 3, 2, 1, 2 ],
[ 1, 2, 1, 3, 2, 1, 2, 3 ], [ 1, 2, 1, 2, 3, 2, 1, 2, 3 ] ]
gap> List( el, w -> klpol( W, [], w ) );
[ q^0, q^0, q^0, q^0, q^0, q^0, q^0, q^0, q^0, q^0, q^0, q^0, q^0,
q^0, q^0, q^0, q^0, q^0, q^0, q + 1, q^0, q^0, q^0, q^0, q + 1,
q^0, q^0, q + 1, q^0, q^0, q + 1, q + 1, q^0, q + 1, q^0, q + 1,
q^0, q^2 + 1, q + 1, q^2 + q + 1, q + 1, q + 1, q^0, q^0, q^2 + 1,
q^0, q + 1, q^0 ]
The set of Kazhdan--Lusztig polynomials that were found during this
computation is contained in the record component klpol (as lists of
coefficients):
gap> W.klpol;
[ [ 1, 1 ], [ 1 ], [ 1, 0, 1 ], [ 1, 1, 1 ] ]
Thus, we have found four different Kazhdan-Lusztig polynomials, namely 1+q, 1, 1+q^2 and 1+q+q^2.
This function requires the package "chevie" (see RequirePackage).
GAP 3.4.4