A braid element bb corresponding to the Coxeter group W is
represented as a record with fields pw0
, elm
and operations
which
contains the operations described below. All examples below are with
CHEVIE.PrintBraid="Deligne"
.
b1 * b2
The multiplication of two braid elements is defined, if they are braid elements of the same group, returning a braid element.
gap> W := CoxeterGroup( "A", 2 );; gap> a := Braid( W )( [1] ); 1 gap> b := Braid( W )( [2] ); 2 gap> a * b; 12
b1 ^ i
A braid element can be raised to an integral, positive or negative, power, returning a braid element.
gap> ( a * b ) ^ 4; w0^2.12 gap> ( a * b ) ^ -1; w0^-1.2
b1 ^ b2
This returns b_1^{-1}b_2b_1.
gap> a ^ b; w0^-1.21.12
b1 / b2
This returns b_1b_2^{-1}.
gap> a / b; w0^-1.2.21
CoxeterGroup( b )
This function returns the Coxeter group for which b is a braid element.
gap> CoxeterGroup( a ); CoxeterGroup("A", 2)
String( b )
Print( b )
String
returns a display form of the element b, and Print
prints
the result of String
. The way elements are printed depends on the
global variable CHEVIE.PrintBraid
. If set to "GAP"
, the elements
are printed in a form which can be read in back by the function
Braid(W)
. If set to "Deligne"
(resp. "Charney"
) the Deligne
(resp. Charney) normal form (as explained in the introduction) is
printed:
gap> CHEVIE.PrintBraid := "GAP";; gap> ( a * b ) ^ -1; B([ 2 ],-1) gap> CHEVIE.PrintBraid := "Charney";; gap> ( a * b ) ^ -1; (12)^-1. gap> CHEVIE.PrintBraid := "Deligne";; gap> ( a * b ) ^ -1; w0^-1.2
Frobenius( WF )( b )
The Frobenius of a Coxeter coset associated to CoxeterGroup(b)
can be applied to b. See the Chapter on Coxeter cosets.
This function requires the package "chevie" (see RequirePackage).
GAP 3.4.4