Finding relations for finite matrix groups in GAP

250 Views Asked by At

Given two invertible $n \times n$ integer matrices A and B I want to look at the group $G$ generated by $A$ and $B$ inside $Gl_n(\mathbb{Z})$ with GAP. My goal is the see relations for A and B with the help of GAP in concrete examples.

Here is a concerete example: $A=[ [ 0, 0, 0, -1 ], [ 0, 0, 1, 1 ], [ 0, 1, 0, 1 ], [ -1, -1, -1, -1 ] ]$ $B=[ [ 0, 0, 0, 1 ], [ 0, 0, 1, 0 ], [ 0, 1, 0, 0 ], [ 1, 0, 0, 0 ] ]$ (I wrote the matrices in GAP notation).

Then I can obtain the group $G$ in GAP via: G:=Group(A,B); I can even find the isomorphism class of $G$ in GAP via the command StructureDescription(G); to see that in this example $G$ is isomorphic to $D_{12}$.

Question: How can I find in GAP a description for a given group $G$ of the minimal relations that describe $G$ for the generators $A$ and $B$?

There are relations such as $(AB)^2=1$ but I can not see them in GAP since GAP displays A and B as matrices, but I want to see the relations "abstractly" for example as $(AB)^2=1$ and not written out as matrices where it is hard/impossible to see what the relations between A and B are.

In the example some relations would be $A^6=1$,$B^2=1$ and $(AB)^2=1$ (found by hand) but there can be more and I want to see them all in GAP in this form or at least some minimal relations.

1

There are 1 best solutions below

3
On BEST ANSWER

The following GAP computation works, although it has just come up with the same relations as the ones that you had already calculated. To be honest, I am not completely sure what is that you are trying to compute. What do you mean by a "minimal relation" for example?

gap> A:=[[0,0,0,-1], [0,0,1,1], [0,1,0,1],[-1,-1,-1,-1]];
  [ [ 0, 0, 0, -1 ], [ 0, 0, 1, 1 ], [ 0, 1, 0, 1 ], [ -1, -1, -1, -1 ] ]
gap> B:=[[0,0,0,1],[0,0,1,0],[0,1,0,0], [1,0,0,0]];
  [ [ 0, 0, 0, 1 ], [ 0, 0, 1, 0 ], [ 0, 1, 0, 0 ], [ 1, 0, 0, 0 ] ]
gap> G:=Group(A,B);
  <matrix group with 2 generators>
gap> Size(G);
  12
gap> isfp := IsomorphismFpGroup(G);
  CompositionMapping( [ (2,4)(3,6), (1,2,3,5,6,4), (1,3,6)(2,5,4) ] -> 
  [ F1, F2, F3 ], CompositionMapping( 
  [ (1,2)(3,4)(5,6,7,9,10,8), (3,4)(6,8)(7,10) ] -> 
  [ (1,2,3,5,6,4), (2,4)(3,6) ], <action isomorphism> ) )
gap> F := Image(isfp);
  <fp group on the generators [ F1, F2, F3 ]>
gap> FF := Subgroup(F, [Image(isfp,A), Image(isfp,B)]);
  Group([ F2, F1 ])
gap> pres := PresentationSubgroupMtc(F, FF);
  <presentation with 2 gens and 3 rels of total length 12>
gap> TzPrintRelators(pres);
  #I  1. _x2^2
  #I  2. (_x2*_x1^-1)^2
  #I  3. _x1^6