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

From ApCoCoAWiki
Line 44: Line 44:
 
   // The order of the dicyclic group
 
   // The order of the dicyclic group
 
   Sum(It);
 
   Sum(It);
 +
 +
====Example in Symbolic Data Format====
 +
  <FREEALGEBRA createdAt="2014-03-02" createdBy="strohmeier">
 +
  <vars>a,b</vars>
 +
  <basis>
 +
  <ncpoly>a^(2*5)-1</ncpoly>
 +
  <ncpoly>a^5-b*b</ncpoly>
 +
  <ncpoly>b*b*b*a*b-a^(2*5-1)</ncpoly>
 +
  </basis>
 +
  <Comment>Dicyclic_group_5</Comment>
 +
  </FREEALGEBRA>

Revision as of 16:56, 11 March 2014

Description

The dicyclic groups are non-abelian groups with order 4n. For n = 2 the dicyclic group is isomporphic to the quarternion group Q. Note that every element of this groups can be written uniquely as a^k x^j for 0 < k < 2n and j = 0 or 1.

 Dic(n) = <a,b | a^{2n} = 1, a^{n} = b^{2}, b^{-1}ab = a^{-1}>

Reference

Coxeter, H. S. M., "7.1 The Cyclic and Dicyclic groups", Regular Complex Polytopes, Cambridge University, 1974.

Computation

 /*Use the ApCoCoA package ncpoly.*/
 
 // Number of Dicyclic group (note that  the order is 4N)
 MEMORY.N:=5;
 
 Use ZZ/(2)[a,b];
 NC.SetOrdering("LLEX");
 
 Define CreateRelationsDicyclic()
   Relations:=[];
    
   // Add the relation a^{2n} = 1
   Append(Relations, [[a^(2*MEMORY.N)], [1]]);
    
   // Add the relation a^{n} = b^2
   Append(Relations, [[a^(MEMORY.N)], [-b,b]]);
  
   // Add the relation b^{-1}ab = a^{-1}
   Append(Relations, [[b^(3),a,b],[a^(2*MEMORY.N-1)]]);
 
   Return Relations;
 EndDefine;
 
 Relations:=CreateRelationsDicyclic();
 Relations;
 
 // Compute a Groebner basis
 Gb:=NC.GB(Relations);
 Gb;
 
 // Compute the values of the Hilbert-Dehn function
 NC.HF(Gb);
 // The order of the dicyclic group
 Sum(It);

Example in Symbolic Data Format

 <FREEALGEBRA createdAt="2014-03-02" createdBy="strohmeier">
 	<vars>a,b</vars>
 	<basis>
 	<ncpoly>a^(2*5)-1</ncpoly>
 	<ncpoly>a^5-b*b</ncpoly>
 	<ncpoly>b*b*b*a*b-a^(2*5-1)</ncpoly>
 	</basis>
 	<Comment>Dicyclic_group_5</Comment>
 </FREEALGEBRA>