Bill Allombert
2018-09-18 13:42:44 UTC
Dear GAP Forum,
I wrote some number theory program that incidentely produces a
polycyclic presentation for a group of order 128.
After exporting to GAP syntax, GAP tells me the order is 64 instead.
After exporting to Magma syntax, Magma tells me the group is
SmallGroup(128,924) as expected.
Is my GAP syntax below correct for a polycyclic presentation
(with all relatives orders equal to 2) ?
F:=FreeGroup(7);;
H:=F/[(F.1)^-2,
(F.2)^-2*F.1,
(F.3)^-2,
(F.4)^-2*F.1*F.2*F.3,
(F.5)^-2*F.1*F.2*F.3*F.4,
(F.6)^-2*F.2*F.4,
(F.7)^-2*F.1*F.2,
Comm(F.1,F.2),Comm(F.1,F.3),Comm(F.1,F.4),Comm(F.1,F.5),Comm(F.1,F.6),Comm(F.1,F.7),
Comm(F.2,F.3),Comm(F.2,F.4),Comm(F.2,F.5),Comm(F.2,F.6)*F.1,Comm(F.2,F.7),
Comm(F.3,F.4),Comm(F.3,F.5),Comm(F.3,F.6)*F.1,Comm(F.3,F.7)*F.1,
Comm(F.4,F.5),Comm(F.4,F.6)*F.1,Comm(F.4,F.7)*F.1*F.2*F.3,
Comm(F.5,F.6)*F.1*F.2,Comm(F.5,F.7)*F.1*F.2*F.4,
Comm(F.6,F.7)*F.1*F.2*F.3*F.4];
Size(H);
I found a smaller example where GAP and Magma disagree:
GAP:
F:=FreeGroup(4);;
H:=F/[(F.1)^-2,(F.2)^-2*F.1,(F.3)^-2,(F.4)^-2*F.2,Comm(F.1,F.2),Comm(F.1,F.3),Comm(F.1,F.4),Comm(F.2,F.3)*F.1,Comm(F.2,F.4),Comm(F.3,F.4)*F.2];
IdGroup(H);
[ 16, 8 ]
Magma:
Comm := function(a,b) return a*b*a^-1*b^-1; end function;
F:=FreeGroup(4);;
H:=quo<F|(F.1)^-2,(F.2)^-2*F.1,(F.3)^-2,(F.4)^-2*F.2,Comm( F.1,F.2),Comm(F.1,F.3),Comm(F.1,F.4),Comm(F.2,F.3)*F.1,Comm(F.2,F.4),Comm(F.3, F.4)*F.2>;
IdentifyGroup(H);
<16, 7>
(I tried both GAP 4.8.6 and 4.9.3)
Cheers,
Bill
I wrote some number theory program that incidentely produces a
polycyclic presentation for a group of order 128.
After exporting to GAP syntax, GAP tells me the order is 64 instead.
After exporting to Magma syntax, Magma tells me the group is
SmallGroup(128,924) as expected.
Is my GAP syntax below correct for a polycyclic presentation
(with all relatives orders equal to 2) ?
F:=FreeGroup(7);;
H:=F/[(F.1)^-2,
(F.2)^-2*F.1,
(F.3)^-2,
(F.4)^-2*F.1*F.2*F.3,
(F.5)^-2*F.1*F.2*F.3*F.4,
(F.6)^-2*F.2*F.4,
(F.7)^-2*F.1*F.2,
Comm(F.1,F.2),Comm(F.1,F.3),Comm(F.1,F.4),Comm(F.1,F.5),Comm(F.1,F.6),Comm(F.1,F.7),
Comm(F.2,F.3),Comm(F.2,F.4),Comm(F.2,F.5),Comm(F.2,F.6)*F.1,Comm(F.2,F.7),
Comm(F.3,F.4),Comm(F.3,F.5),Comm(F.3,F.6)*F.1,Comm(F.3,F.7)*F.1,
Comm(F.4,F.5),Comm(F.4,F.6)*F.1,Comm(F.4,F.7)*F.1*F.2*F.3,
Comm(F.5,F.6)*F.1*F.2,Comm(F.5,F.7)*F.1*F.2*F.4,
Comm(F.6,F.7)*F.1*F.2*F.3*F.4];
Size(H);
I found a smaller example where GAP and Magma disagree:
GAP:
F:=FreeGroup(4);;
H:=F/[(F.1)^-2,(F.2)^-2*F.1,(F.3)^-2,(F.4)^-2*F.2,Comm(F.1,F.2),Comm(F.1,F.3),Comm(F.1,F.4),Comm(F.2,F.3)*F.1,Comm(F.2,F.4),Comm(F.3,F.4)*F.2];
IdGroup(H);
[ 16, 8 ]
Magma:
Comm := function(a,b) return a*b*a^-1*b^-1; end function;
F:=FreeGroup(4);;
H:=quo<F|(F.1)^-2,(F.2)^-2*F.1,(F.3)^-2,(F.4)^-2*F.2,Comm( F.1,F.2),Comm(F.1,F.3),Comm(F.1,F.4),Comm(F.2,F.3)*F.1,Comm(F.2,F.4),Comm(F.3, F.4)*F.2>;
IdentifyGroup(H);
<16, 7>
(I tried both GAP 4.8.6 and 4.9.3)
Cheers,
Bill