ApCoCoA-1:OrdinaryTetrahedron groups

From ApCoCoAWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Description

An Ordinary Tetrahedron group is a group with a representation of the form

 G(e_1,e_2,e_3,f_1,f_2,f_3) = <x,y,z | x^{e_1} = y^{e_2} = z^{e_3} = (xy^{-1})^{f_1} = (yz^{-1})^{f_2} = (zx^{-1})^{f_3} = 1>

Reference

Edjvet, Rosenberger, Stille, Thomas, "On certain generalized tetrahedon groups", Computational And Geometric Aspects Of Modern Algebra.

Computation

 /*Use the ApCoCoA package ncpoly.*/
 
 // Variables of Ordinary Tetrahedon group
 MEMORY.E1:=3;
 MEMORY.E2:=3;
 MEMORY.E3:=3;
 MEMORY.F1:=3;
 MEMORY.F2:=3;
 MEMORY.F3:=3;
   
 Use ZZ/(2)[x,y,z];
 NC.SetOrdering("LLEX");
 
 Define CreateRelationsDicyclic()
   Relations:=[];
   If MEMORY.E1 < 2 Or MEMORY.E2 < 2 Or MEMORY.E3 < 2 Or MEMORY.F1 < 2 Or MEMORY.F2 < 2 Or MEMORY.F3 < 2 Then
     Output:="Wrong Input! Please check that E_i and F_i are greater than 1";
     Print(Output);  		
   Else
     // add the relations x^{e_1} = 1, y^{e_2} = 1 and z^{e_3} = 1
     Append(Relations,[[x^(MEMORY.E1)],[1]]);
     Append(Relations,[[y^(MEMORY.E2)],[1]]);
     Append(Relations,[[z^(MEMORY.E3)],[1]]);
    	
     // add the relation (xy^{-1})^{f_1}
     RelationA:=[];
     For Index1 := 1 To MEMORY.F1 Do
       Append(RelationA,x);
       Append(RelationA,y^(MEMORY.E2-1));
     EndFor;
     Append(Relations,[RelationA,[1]]);
 
     // add the relation (yz^{-1})^{f_2}
     RelationB:=[];
     For Index2 := 1 To MEMORY.F2 Do
       Append(RelationB,y);
       Append(RelationB,z^(MEMORY.E3-1));
     EndFor;
     Append(Relations,[RelationB,[1]]);
 
     // add the relation (zx^{-1})^{f_3}
     RelationC:=[];
     For Index3 := 1 To MEMORY.F3 Do
       Append(RelationC,z);
       Append(RelationC,x^(MEMORY.E1-1));
     EndFor;
       Append(Relations,[RelationC,[1]]);
   EndIf;  
 
   Return Relations;
 EndDefine;
 
 Relations:=CreateRelationsDicyclic();
 Relations;
 
 If Size(Relations) > 0 Then
   Gb:=NC.GB(Relations,31,1,100,1000);	
   Size(Gb);	
 EndIf;

Example in Symbolic Data Format

 <FREEALGEBRA createdAt="2014-03-02" createdBy="strohmeier">
 	<vars>x,y,z</vars>
 	<uptoDeg>15</uptoDeg>
 	<basis>
 	<ncpoly>x^3-1</ncpoly>
 	<ncpoly>y^3-1</ncpoly>
 	<ncpoly>z^3-1</ncpoly>
 	<ncpoly>((x*y^(3-1))^(3))-1</ncpoly>
 	<ncpoly>((y*z^(3-1))^(3))-1</ncpoly>
 	<ncpoly>((z*x^(3-1))^(3))-1</ncpoly>
 	</basis>
 	<Comment>The partial LLex Gb has 140 elements</Comment>
 	<Comment>Ordinary_Tetrahedron_group_3</Comment>
 </FREEALGEBRA>