All examples below are with CHEVIE.PrintHecke="".
Hecke( a )
returns the Hecke algebra of which a is an element.
a * b
The multiplication  of two elements given  in the T  basis  of the same
Iwahori-Hecke algebra is defined,  returning a Hecke element expressed in
the T basis.
    gap> q := X( Rationals );; q.name := "q";;
    gap> H := Hecke( CoxeterGroup( "A", 2 ), q );
    Hecke(CoxeterGroup("A", 2),[ q, q ],[  ])
    gap> T := Basis( H, "T" );
    function ( arg ) ... end
    gap> ( T() + T( 1 ) ) * ( T() + T( 2 ) );
    T()+T(1)+T(2)+T(1,2)
    gap> T( 1 ) * T( 1 );
    qT()+(q-1)T(1)
    gap> T( 1, 1 ); # the same
    qT()+(q-1)T(1) 
a ^ i
A element of the  T basis with a  coefficient whose inverse is still  a
Laurent polynomial in q   can be raised  to  an integral, positive   or
negative, power, returning another element of  the algebra.  An arbitrary
element of the algebra can only be raised to a positive power.
    gap> ( q * T( 1, 2 ) ) ^ -1;
    (q^-1-2q^-2+q^-3)T()+(-q^-2+q^-3)T(1)+(-q^-2+q^-3)T(2)+q^-3T(2,1)
    gap> ( T( 1 ) + T( 2 ) ) ^ -1;
    Error, negative exponent implemented only for single T_w in
    <rec1> ^ <rec2> called from
    main loop
    brk> 
    gap> ( T( 1 ) + T( 2 ) ) ^ 2;
    2qT()+(q-1)T(1)+(q-1)T(2)+T(1,2)+T(2,1) 
a / b
This is equivalent to a* b^{-1}.
a + b
a - b
Elements of the  algebra  expressed in  the  T  basis can be   added or
subtracted, giving other elements of the algebra.
    gap> T( 1 ) + T();
    T()+T(1)
    gap> T( 1 ) - T( 1 );
    0 
Normalize( a ) 
normalizes the element a; in particular, terms with zero coefficient are removed.
    gap> h := T( [ PermCoxeterWord( CoxeterGroup( H ), [ 1 ] ),() ], 
    >                                                     [ 0, q^100 ] );
    q^100T()+0T(1)
    gap> Normalize( h );
    gap> h;
    q^100T() 
Print( a )
prints the element a, using the form initialized in CHEVIE.PrintHecke.
String( a )
provides a  string  containing  the same  result  that  is  printed  with
Print.
Coefficient( a, w )
Returns the coefficient of the Hecke element a on the basis element T_w. Here w can be given either as a Coxeter word or as a permutation.
AlphaInvolution( a )
This implements the involution on the algebra defined by T_wmapsto T_{w^{-1}}.
    gap> AlphaInvolution( T( 1, 2 ) );
    T(2,1) 
BetaInvolution( a )
This is only defined if all the parameters of the Iwahori-Hecke algebra are equal, and they are either equal to 1 or all sqrtParameters are bound. If v is the square root of the first parameter, it implements the involution on the algebra defined by vmapsto v^{-1} and T_wmapsto v^{-l(w_0)}T_{w_0w}.
AltInvolution( a )
This is only defined if all the parameters of the Iwahori-Hecke algebra are equal, and they are either equal to 1 or all sqrtParameters are bound. If v is the square root of the first parameter, it implements the involution on the algebra defined by vmapsto -v^{-1} and T_wmapsto(-v^{-2})^{l(w)}T_w. Essentially it corresponds to tensoring with the sign representation.
Frobenius(WF)( a )
The Frobenius of a Coxeter Coset associated to CoxeterGroup(Hecke(a))
can be applied to a. For more details see chapter Coxeter cosets.
These functions require the package "chevie" (see RequirePackage).
Previous Up Top Next
Index
GAP 3.4.4