GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%1%%2%A underl.tex AutPGrp documentation Bettina Eick3%A Eamonn O'Brien4%%56%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%7\Chapter{The underlying function}89Underlying the method installation for `AutomorphismGroup'10is the function `AutomorphismGroupPGroup'. This function is11intended for expert users who wish to influence the steps of12the algorithm. Note also that `AutomorphismGroup' will always13choose default values.1415\> AutomorphismGroupPGroup( <G> [,<flag>] ) F1617The input is a finite $p$-group as above and an optional <flag>18which can be true or false. Here the filters for <G> need not be19set, but they should be true for <G>. The possible values for <flag>20are considered later in Chapter "Influencing the algorithm". If21<flag> is not supplied, the algorithm proceeds similarly to the22method installed for `AutomorphismGroup', but it produces slightly23more detailed output. The output of the function is a record24which contains the following fields:2526\beginitems27`glAutos' & a set of automorphisms which together with `agAutos'28generate the automorphism group;2930`glOrder' & an integer whose product with the `agOrders' gives31the size of the automorphism group;3233`agAutos' & a polycyclic generating sequence for a soluble normal34subgroup of the automorphism group;3536`agOrder' & the relative orders corresponding to `agAutos';3738`one' & the identity element of the automorphism group;3940`group' & the underlying group <G>;4142`size' & the size of the automorphism group.43\enditems4445We do not return an automorphism group in the standard form46because we wish to distinguish between `agAutos' and `glAutos';47the latter act non-trivially on the Frattini quotient of <G>. This48hybrid-group description of the automorphism group permits more49efficient computations with it. The following function converts50the output of `AutomorphismGroupPGroup' to the output of51`AutomorphismGroup'.5253\> ConvertHybridAutGroup( <A> ) F5455\beginexample56gap> LoadPackage("autpgrp", false);57#I ------------ The AutPGrp package --------------58#I -- Computing automorphism groups of p-groups --59true6061gap> H := SmallGroup (729, 34);62<pc group of size 729 with 6 generators>6364gap> A := AutomorphismGroupPGroup(H);65rec( glAutos := [ ],66glOrder := 1,67agAutos := [ Pcgs([ f1, f2, f3, f4, f5, f6 ])68-> [ f1^2, f2, f3^2*f4, f4, f5^2*f6, f6 ],69Pcgs([ f1, f2, f3, f4, f5, f6 ])70-> [ f2^2, f1, f3*f5^2, f5^2, f4*f6^2, f6^2 ],71Pcgs([ f1, f2, f3, f4, f5, f6 ])72-> [ f1^2, f2^2, f3*f4^2*f5^2*f6, f4^2*f6, f5^2*f6, f6 ],73Pcgs([ f1, f2, f3, f4, f5, f6 ])74-> [ f1*f3, f2, f3*f5^2, f4*f6^2, f5, f6 ],75Pcgs([ f1, f2, f3, f4, f5, f6 ])76-> [ f1, f2*f3, f3*f4, f4, f5*f6, f6 ],77Pcgs([ f1, f2, f3, f4, f5, f6 ])78-> [ f1*f4, f2, f3*f6^2, f4, f5, f6 ],79Pcgs([ f1, f2, f3, f4, f5, f6 ])80-> [ f1, f2*f4, f3, f4, f5, f6 ],81Pcgs([ f1, f2, f3, f4, f5, f6 ])82-> [ f1*f5, f2, f3, f4, f5, f6 ],83Pcgs([ f1, f2, f3, f4, f5, f6 ])84-> [ f1, f2*f5, f3*f6, f4, f5, f6 ],85Pcgs([ f1, f2, f3, f4, f5, f6 ])86-> [ f1*f6, f2, f3, f4, f5, f6 ],87Pcgs([ f1, f2, f3, f4, f5, f6 ])88-> [ f1, f2*f6, f3, f4, f5, f6 ] ],89agOrder := [ 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3 ],90one := IdentityMapping( <pc group of size 729 with 6 generators> ),91group := <pc group of size 729 with 6 generators>,92size := 52488 )9394gap> ConvertHybridAutGroup( A );95<group of size 52488 with 11 generators>96\endexample9798Let <A> be the automorphism group of a $p$-group $G$ as computed by99`AutomorphismGroupPGroup'. Then the following function can compute100a pc group isomorphic to the solvable part of <A> stored in the record101component <A>.agGroup. This solvable part forms a subgroup of the102automorphism group which contains at least the automorphisms centralizing103the Frattini factor of $G$. The pc group facilitates various further104computations with <A>.105106\> PcGroupAutPGroup( <A> ) F107108computes a pc presentation for the solvable part of the automorphism109group <A> defined by <A>.agGroup. <A> is the output of the function110`AutomorphismGroupPGroup'.111112\beginexample113gap> H := SmallGroup (729, 34);;114gap> A := AutomorphismGroupPGroup(H);;115gap> B := PcGroupAutPGroup( A );116<pc group of size 52488 with 11 generators>117gap> I := InnerAutGroupPGroup( B );118Group([ f5, f4^2*f8, f6^2*f9^2, f11^2, f10^2, <identity> of ... ])119\endexample120121%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%122123124