Skip to content

Commit

Permalink
FIX: wrong Gens of MatWreathProduct with Intransitive Top Group.
Browse files Browse the repository at this point in the history
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 5d9d66d
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 # 4663
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 5d9d66d

Please sign in to comment.