Skip to content

Commit

Permalink
FIX: wrong Generators of Matrix Wreath Product with Intransitive To…
Browse files Browse the repository at this point in the history
…p Group.

It was implicitely assumed that the top group is transitive,
resulting in insufficient generators for the base group of the matrix wreath product
if the top group was given intransitive.

Add test to `testbugfix`.
  • Loading branch information
FriedrichRober committed Sep 22, 2021
1 parent f1db257 commit cc55e1f
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
5 changes: 3 additions & 2 deletions lib/gprdmat.gi
Original file line number Diff line number Diff line change
Expand Up @@ -253,7 +253,7 @@ end);
DeclareGlobalFunction("MatWreathProduct");

InstallGlobalFunction(MatWreathProduct,function(A,B)
local f,n,m,Agens,Bgens,emb,i,j,a,g,dim,rans,range;
local f,n,m,Agens,Bgens,emb,i,j,a,g,dim,rans,range,orbs;
f:=DefaultFieldOfMatrixGroup(A);
n:=DimensionOfMatrixGroup(A);
m:=LargestMovedPoint(B);
Expand All @@ -271,7 +271,8 @@ local f,n,m,Agens,Bgens,emb,i,j,a,g,dim,rans,range;
od;
emb[j]:=Agens;
od;
Agens:=emb[1];
orbs := OrbitsDomain(B);
Agens := Concatenation(List(orbs, orb -> emb[orb[1]]));

Bgens:=List(GeneratorsOfGroup(B),
x->KroneckerProduct(PermutationMat(x,m,f),One(A)));
Expand Down
6 changes: 6 additions & 0 deletions tst/testbugfix/2021-09-22-MatWreathProduct.tst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Generators of Matrix Wreath Product with Intransitive Top Group # 4664
gap> K := GL(3,2);;
gap> H := Group((1,2,3)(4,5));;
gap> G := WreathProduct(K, H);;
gap> Size(Group(GeneratorsOfGroup(G))) = 802966929408;
true

0 comments on commit cc55e1f

Please sign in to comment.