Underlying the method installation for AutomorphismGroup
is the function AutomorphismGroupPGroup. This function is
intended for expert users who wish to influence the steps of 
the algorithm.  Note also that AutomorphismGroup will always
choose default values.
AutomorphismGroupPGroup( G [,flag] ) F
The input is a finite p-group as above and an optional flag 
which can be true or false. Here the filters for G need not be 
set, but they should be true for G. The possible values for flag
are considered later in Chapter Influencing the algorithm. If 
flag is not supplied, the algorithm proceeds similarly to the 
method installed for AutomorphismGroup, but it produces slightly 
more detailed output.  The output of the function is a record 
which contains the following fields:
glAutos agAutos
            generate the automorphism group;
glOrder agOrders gives
            the size of the automorphism group;
agAutos 
agOrder agAutos;
one     
group   
size    
We do not return an automorphism group in the standard form 
because we wish to distinguish between agAutos and glAutos; 
the latter act non-trivially on the Frattini quotient of G. This
hybrid-group description of the automorphism group permits more 
efficient computations with it. The following function converts
the output of AutomorphismGroupPGroup to the output of 
AutomorphismGroup.
ConvertHybridAutGroup( A ) F
gap> RequirePackage("autpgrp");
#I ------------ The AutPGrp package --------------
#I -- Computing automorphism groups of p-groups -- 
true
gap> H := SmallGroup (729, 34);
<pc group of size 729 with 6 generators>
gap> A := AutomorphismGroupPGroup(H);
rec( glAutos := [  ], 
     glOrder := 1, 
     agAutos := [ Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1^2, f2, f3^2*f4, f4, f5^2*f6, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f2^2, f1, f3*f5^2, f5^2, f4*f6^2, f6^2 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1^2, f2^2, f3*f4^2*f5^2*f6, f4^2*f6, f5^2*f6, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1*f3, f2, f3*f5^2, f4*f6^2, f5, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ])
                    -> [ f1, f2*f3, f3*f4, f4, f5*f6, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1*f4, f2, f3*f6^2, f4, f5, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1, f2*f4, f3, f4, f5, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1*f5, f2, f3, f4, f5, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1, f2*f5, f3*f6, f4, f5, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1*f6, f2, f3, f4, f5, f6 ], 
                  Pcgs([ f1, f2, f3, f4, f5, f6 ]) 
                    -> [ f1, f2*f6, f3, f4, f5, f6 ] ], 
     agOrder := [ 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3 ], 
     one     := IdentityMapping( <pc group of size 729 with 6 generators> ), 
     group   := <pc group of size 729 with 6 generators>, 
     size    := 52488 )
gap> ConvertHybridAutGroup( A );
<group of size 52488 with 11 generators>
Let A be the automorphism group of a p-group G as computed by 
AutomorphismGroupPGroup. Then the following function can compute 
a pc group isomorphic to the solvable part of A stored in the record 
component A.agGroup. This solvable part forms a subgroup of the
automorphism group which  contains at least the automorphisms centralizing
the Frattini factor of G. The pc group facilitates various further
computations with A.
PcGroupAutPGroup( A ) F
computes a pc presentation for the solvable part of the automorphism
group A defined by A.agGroup. A is the output of the function
AutomorphismGroupPGroup.
gap> H := SmallGroup (729, 34);; gap> A := AutomorphismGroupPGroup(H);; gap> B := PcGroupAutPGroup( A ); <pc group of size 52488 with 11 generators> gap> I := InnerAutGroupPGroup( B ); Group([ f5, f4^2*f8, f6^2*f9^2, f11^2, f10^2, <identity> of ... ])
[Up] [Previous] [Next] [Index]
AutPGrp manual