> < ^ Date: Thu, 16 Dec 1999 09:22:40 +0100 (CET)
> < ^ From: Thomas Breuer <Thomas.Breuer@Math.RWTH-Aachen.DE >
< ^ Subject: Re: ConjugatorAutomorphism

Dear GAP Forum,

Mathias Kratzer wrote

in Chapter 35, Section 5 the GAP4-manual says:

> * ConjugatorAutomorphism( G, g ) O
>
> creates for g in the same Family as the elements of G
> the automorphism of G defined by h |--> h^{elm} for all h\in G .
~~~~~~~~~~~~~~~~~~~~~
Reading these lines I guess that 'ConjugatorAutomorphism' was imple-
mented to sort of generalize the function 'InnerAutomorphism': The
latter one only provides access to automorphisms of a group G which
are induced by elements of G; by means of the first one you can also
construct "conjugations" by elements of e. g. a supergroup of G.

Of course, the mapping h |--> h^g, for g \in S, S a supergroup of G,
is an automorphism of G if and only if G is invariant under conjuga-
tion by g.
Surprisingly, the manual does not keep its readers aware of this fact
at all, and --- confer the example below --- 'ConjugatorAutomorphism'
does not even give you a warning let alone an error message, when you
try to induce an automorphism from an element which violates the
invariance condition stated above:

gap> G := Group( [ (1,2,3,4) ] );
Group([ (1,2,3,4) ])
gap> phi := ConjugatorAutomorphism( G, (1,2) );
^(1,2)
gap> eltsG := Elements( G );
[ (), (1,2,3,4), (1,3)(2,4), (1,4,3,2) ]
gap> List(eltsG, elt -> elt^phi);
[ (), (1,3,4,2), (1,4)(2,3), (1,2,4,3) ]
gap> IsConjugatorAutomorphism(phi);
true
gap>


Would the function 'ConjugatorAutomorphism' not better be called 'Con-
jugatorISOmorphism'? Or is there anything I've just misunderstood?

Indeed GAP does currently not check whether the second argument <g> of
ConjugatorAutomorphism' normalizes the first argument <G>.
This causes the following problem.

gap> G:= Group( [ (1,2,3,4) ] );;
gap> phi:= ConjugatorAutomorphism( G, (1,2) );
^(1,2)
gap> Source( phi );
Group([ (1,2,3,4) ])
gap> Range( phi );
Group([ (1,2,3,4) ])


So the mapping phi' erroneously assumes that it maps G' to G'.

This bug will be fixed in the next version of GAP,
in the sense that ConjugatorAutomorphism' will check
that the mapping to be constructed is in fact an automorphism.
Additionally, a new function ConjugatorIsomorphism' will be
introduced which deals with the general case.
(And `ConjugatorAutomorphismNC' will allow one to omit the check.)

Thanks for the bug report and the hint to introduce the
more general function.

Kind regards,
Thomas

> < [top]