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

### Dicyclic Groups

#### 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)], ]);

// 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>
```