GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
gap> RequirePackage("carat");
true
gap> names := [];
[ ]
gap> GROUPS := [];
[ ]
gap> R := CaratReadBravaisFile("ordnung.16/(2)^2(8)^2/group.1082");
rec(
generators := [ [ [ 0, -1, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0,
-1, 0, 0 ], [ 0, -1, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, -1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, -1 ]
] ], size := 16 )
gap> P1 := Group(R.generators);
<matrix group with 3 generators>
gap> Append(names,["ordnung.16/(2)^2(8)^2/words.group.1082"]);
gap> Append(GROUPS,[P1]);
gap> R := CaratReadBravaisFile("ordnung.4/(2)^2(16)^2/min.203");
rec(
generators := [ [ [ 0, 1, 0, 0, 0, 0 ], [ -1, 0, 0, 0, 0, 0 ], [ 0, 0, 0,
-1, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, -1 ] ] ], size := 4 )
gap> P2 := Group(R.generators);
<matrix group with 1 generators>
gap> Append(names,["ordnung.4/(2)^2(16)^2/words.min.203"]);
gap> Append(GROUPS,[P2]);
gap> R := CaratReadBravaisFile("ordnung.8/(2)^2(16)^2/group.1083");
rec(
generators := [ [ [ 0, 1, 0, 0, 0, 0 ], [ -1, 0, 0, 0, 0, 0 ], [ 0, 1, 0,
-1, 0, 0 ], [ -1, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, -1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, -1 ]
] ], size := 8 )
gap> P3 := Group(R.generators);
<matrix group with 2 generators>
gap> Append(names,["ordnung.8/(2)^2(16)^2/words.group.1083"]);
gap> Append(GROUPS,[P3]);
gap> R := CaratReadBravaisFile("ordnung.8/(2)^2(8)^2/group.1084");
rec(
generators := [ [ [ 0, -1, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0,
-1, 0, 0 ], [ 0, -1, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, 1 ] ]
], size := 8 )
gap> P4 := Group(R.generators);
<matrix group with 2 generators>
gap> Append(names,["ordnung.8/(2)^2(8)^2/words.group.1084"]);
gap> Append(GROUPS,[P4]);
gap> R := CaratReadBravaisFile("ordnung.8/(2)^2(8)^2/group.1085");
rec(
generators := [ [ [ 0, -1, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0,
-1, 0, 0 ], [ 0, -1, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, -1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, 1 ] ]
], size := 8 )
gap> P5 := Group(R.generators);
<matrix group with 2 generators>
gap> Append(names,["ordnung.8/(2)^2(8)^2/words.group.1085"]);
gap> Append(GROUPS,[P5]);
gap> Print(GROUPS,"\n");
[ Group(
[ [ [ 0, -1, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0, -1, 0, 0 ],
[ 0, -1, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ], [ 0, 0, 0, 0, 0, -1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, -1 ]
] ]),
Group([ [ [ 0, 1, 0, 0, 0, 0 ], [ -1, 0, 0, 0, 0, 0 ], [ 0, 0, 0, -1, 0, 0 ]
, [ 0, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, -1 ] ] ]),
Group([ [ [ 0, 1, 0, 0, 0, 0 ], [ -1, 0, 0, 0, 0, 0 ],
[ 0, 1, 0, -1, 0, 0 ], [ -1, 0, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, -1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, -1 ]
] ]),
Group([ [ [ 0, -1, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0, -1, 0, 0 ]
, [ 0, -1, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, 1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, 1 ] ]
]),
Group([ [ [ 0, -1, 0, 0, 0, 0 ], [ 1, 0, 0, 0, 0, 0 ], [ 1, 0, 0, -1, 0, 0 ]
, [ 0, -1, 1, 0, 0, 0 ], [ 0, 0, 0, 0, 1, 0 ],
[ 0, 0, 0, 0, 0, -1 ] ],
[ [ 1, 0, 0, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0 ], [ 0, 0, 1, 0, 0, 0 ],
[ 0, 0, 0, 1, 0, 0 ], [ 0, 0, 0, 0, -1, 0 ], [ 0, 0, 0, 0, 0, 1 ] ]
]) ]
gap> Print(names,"\n");
[ "ordnung.16/(2)^2(8)^2/words.group.1082",
"ordnung.4/(2)^2(16)^2/words.min.203",
"ordnung.8/(2)^2(16)^2/words.group.1083",
"ordnung.8/(2)^2(8)^2/words.group.1084",
"ordnung.8/(2)^2(8)^2/words.group.1085" ]
gap> Size(GROUPS);
5
gap> Size(names);
5
gap> Read("../../TGROUPS.GAP");
gap> for i in [1..Size(GROUPS)] do
> SubgroupWords(GROUPS[i], names[i]);
> od;
[ x2*x3, x2, x1^2 ]
[ x2*x3, x1, x1^2 ]
[ x2*x3, x1*x2, x1^2 ]
[ x2, x1, x1^2 ]
[ x1*x2*x3, x2, x1^2 ]
[ x3, x1, x1^2 ]
[ x1*x2*x3, x1*x2, x1^2 ]
[ x1^2 ]
[ x2, x1^2 ]
[ x1, x1^2 ]
[ x1*x2, x1^2 ]
[ x2, x1^2 ]
[ x1, x1^2 ]
[ x1*x2, x1^2 ]
[ x2, x1^2 ]
[ x1, x1^2 ]
[ x1*x2, x1^2 ]
gap> LogTo();