I have the following setup:
gap> a := X(Rationals,"a");; b := X(Rationals,"b");;c := X(Rationals,"c");;
gap> M := [ [ 1, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ],
> [ -b, -a, -1, -a, -1, 0 ], [ -a, -1, 0, -1, 0, 0 ],
> [ b, a, 1, 0, 0, 0 ], [ 0, 0, 0, b, a, 1 ] ]*a^0;;
gap> N := [ [ 1, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ],
> [ -b, -a, -1, -a, -1, 0 ], [ 0, 1, 0, 0, 0, 0 ],
> [ 0, 0, 0, 0, 1, 0 ], [ c, 0, 0, 0, -a, -1 ] ]*a^0;;
gap> G := Group(M,N);
<matrix group with 2 generators>
gap> IsGroup(G);
true
gap> Order(M); Order(N);
3
2
gap> Comm(M,N);
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 0, 0, 1, 0, 0 ],
[ -b, -a, -1, -a, -1, 0 ], [ -a, -1, 0, -1, 0, 0 ],
[ b, a, 1, 0, 0, 0 ], [ 0, 0, 0, b, a, 1 ] ]
So some functions on matrix groups seem to work but others don't, like "List", "Size", "IsSolvable", "DerivedSubgroup", etc.. They all break on the same line 3928 in "matrix.gi" (in my version). There, a function tries to verify if all the matrix entries concerned are in the same coefficient field, but it fails. Indeed if I try "a in Field([a]); " I get a method not found (2nd choice) error. There is no problem with the group itself, but I have to create the set manually. The set is closed for product and taking of the inverse. The group should be isomorphic to $S_3$.