ApCoCoA-1:Hecke groups
From ApCoCoAWiki
Description
The Hecke groups has the following representation:
H(lambda_q) = <x,y | x^2=(xy)^q=1, for q >= 3>
Reference
GROWTH IN HECKE GROUPS, MARTIN KREUZER AND GERHARD ROSENBERGER
Computation
/*Use the ApCoCoA package ncpoly.*/ // Define the variable q of the Hecke group MEMORY.Q := 4; // y is invers to z, x is invers to itself (that follows directly from the first relation) Use ZZ/(2)[x,y,z]; NC.SetOrdering("LLEX"); Define CreateRelationsHecke() Relations:=[]; // add the invers relation of y and z Append(Relations,[[y,z],[1]]); Append(Relations,[[z,y],[1]]); // add the relation x^2 = 1 Append(Relations,[[x,x],[1]]); // add the relation (xy)^q = 1 RelationBuffer1:=[]; For Index0 := 1 To MEMORY.Q Do Append(RelationBuffer1,x); Append(RelationBuffer1,y); EndFor; Append(Relations,[RelationBuffer1,[1]]); Return Relations; EndDefine; Relations:=CreateRelationsHecke(); Gb:=NC.GB(Relations);