[GAP Forum] wreath product factorization

Familie Höfling B.Hoefling at tu-bs.de
Tue Sep 20 08:58:27 BST 2005


Dear Roman, dear forum members,


> I am much more interested in question 2. StructureDescription and  
> DirectFactorsOfGroup would be what I am looking for in the case of  
> direct products, but they seem to crash or give incomplete results  
> quite easily (I am running the latest version of GAP):
>
> gap> G := DirectProduct( CyclicGroup(2) , CyclicGroup(3) ,  
> SymmetricGroup(4) );;
> gap> DirectFactorsOfGroup(G);
>
>

I cannot reproduce this problem with GAP 4.4.6. Could you send an e- 
mail with the full session transcript (including the GAP banner) to  
support at gap-system.org?


> gap> G := DirectProduct( CyclicGroup(2) , CyclicGroup(3) ,  
> CyclicGroup(4) );;
> gap> StructureDescription(G);
> "C12 x C2"
>     --> incomplete decomposition
>
>

This is exactly what StructureDescription is supposed to do - see the  
GAP manual. (It does not claim to return a decomposition into  
directly indecomposable factors, but of course, you can read it off  
the above).


> Also, I am more interested in similar decompositions of wreath  
> products. Since my groups are small (at most a few thousand  
> elements) I could maybe write this myself, by looping over the  
> "small groups" database and trying all wreath products until I find  
> one that is isomorphic to the group I want to decompose. Is this  
> reasonable?
>
>

Are you looking for wreath products of permutation groups, or wreath  
products of an abstract group and a permutation group? Wreath  
products of permutation groups can easily be recognized by looking at  
their block structure, see `Blocks' in the GAP reference manual. In  
general, a transitive permutation group G embeds in the wreath  
product (action of block stabilizer on block) wr (action of G on  
orbit of block), and you can easily check equality by comparing orders.

In the abstract case, the situation is much more complicated.  
Checking for group isomorphisms usually isn't very efficient, so if  
you have too many candidate groups to check against, this may not be  
too efficient. Instead, to look for a wreath product decomposition of  
an abstract group G, I would recommend to proceed as follows. Compute  
the normal subgroups of G and and check them for a suitable base  
group B. For B to be a base group, we need an integer n dividing | 
G:B|, such that |G:B| divides n!, and such that |B| is an n-th power.  
We then look for a normal subgroup K of B with |K|^n = |B|, whose G- 
orbit has length n, and whose normal closure in G is B. In addition,  
one has to check whether B has a complement C in G, and whether the  
point stabilizer in C of K acts trivially on K. Then you have G = K  
wr C. (If the  action of the point stabilizer of K is nontrivial, you  
have a twisted wreath product.) All group actions are by conjugation,  
of course.

Cheers,

Burkhard.







More information about the Forum mailing list