Difference between revisions of "ApCoCoA-1:OrdinaryTetrahedron groups"

From ApCoCoAWiki
Line 80: Line 80:
 
   <ncpoly>((z*x^(3-1))^(3))-1</ncpoly>
 
   <ncpoly>((z*x^(3-1))^(3))-1</ncpoly>
 
   </basis>
 
   </basis>
   <Comment>The LLexGb has 140 elements</Comment>
+
   <Comment>The partial LLex Gb has 140 elements</Comment>
 
   <Comment>Ordinary_Tetrahedron_group_3</Comment>
 
   <Comment>Ordinary_Tetrahedron_group_3</Comment>
 
   </FREEALGEBRA>
 
   </FREEALGEBRA>

Revision as of 16:37, 14 March 2014

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>