how to check if there is an automorphism mapping between two conjugacy class

204 Views Asked by At

Let $G\le S_n$ be a permutation group and suppose that $C_1,C_2$ are two distinct conjugacy classes that have the same cardinality and is represented by a permutation of the same cycle-type. My question is whether one can (maybe by using GAP?) determine if a (non-inner) $G$-automorphism exists that maps $C_1$ to $C_2$?

1

There are 1 best solutions below

3
On BEST ANSWER

Generically, you can do so in GAP with RepresentativeAction, trying to find an element in the automorphism group that maps a representative of one conjugacy class to one in the other class. (It will return fail if no such automorphism exists.) For example:

gap> g:=AlternatingGroup(6);;
gap> au:=AutomorphismGroup(g);
<group with 4 generators>
gap> RepresentativeAction(au,(1,2,3),(1,2,3)(4,5,6));
[ (2,3)(4,5), (1,2,3,4)(5,6) ] -> [ (1,3)(4,5), (1,6)(2,3,4,5) ]

Not that this calculates an orbit under the automorphism group, which can be costly in terms of memory and runtime. In larger examples it could be more efficient (i.e. faster and using less memory) to represent $G\rtimes Aut(G)$ as a permutation group and do the search there using the backtrack functionality for permutation groups, and then pull back the conjugating permutation to an automorphism:

gap> sdp:=SemidirectProduct(au,g);
gap> embau:=Embedding(sdp,1);;
gap> embg:=Embedding(sdp,2);;
gap> elms:=[(1,2,3),(1,2,3)(4,5,6)];;
gap> elmsim:=List(elms,x->ImagesRepresentative(embg,x));
gap> rep:=RepresentativeAction(Image(embau),elmsim[1],elmsim[2]);;
gap> PreImagesRepresentative(embau,rep);
[ (1,2,3,4,5), (4,5,6) ] -> [ (1,6,3,2,5), (1,3,2)(4,5,6) ]