ApCoCoA-1:Hecke groups

From ApCoCoAWiki
Revision as of 03:32, 22 September 2013 by Xiu (talk | contribs) (→‎Computation)

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);