This mail was not originally accepted by 'Miles' because of technical
problems:
Dear Mr. and Mrs. Forum,
I have been using Micheal Smith's Automorphism Group share
package quite a bit lately. It is a wonderful and welcome replacement for
a rickety old backtrack program I had been using. Much thanks to Micheal.
Here is my question: can someone tell me how to multiply cosets
of subgroups of automorphism groups? It seems that this was left out, but
it is probably not difficult to do. An example follows which illustrates
how the problem comes up when trying to calculate an intersection of
subgroups of an automorphism group.-- Peter Blanchard http://vega.math.ualberta.ca/~pblancha Dept. of Mathematical Sciences e-mail: pblancha@vega.math.ualberta.ca University of Alberta "Every day holds a wonder that's got to be seen, baby." ------- Carol KingExample:
gap> grp := SpecialAgGroup(DihedralGroup(AgWords,8)); Group( s, d1, d2 ) gap> autgrp := AutGroupSagGroup(grp); Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ) gap> t1 := Subgroup(autgrp,[autgrp.1]); Subgroup( Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ), [ Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]) ] ) gap> t2 := Subgroup(autgrp,[autgrp.2]); Subgroup( Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ), [ InnerAut(Group( s, d1, d2 ), d1) ] ) gap> Intersection(t1,t2); Error, product of <a> and <b> is not defined in <rec1> * <rec2> called from arg[1].operations.Stabilizer( arg[1], arg[2], arg[3] ) called from Stabilizer( H, Coset( G ), OnRight ) called from D.operations.Intersection( I, D ) called from Intersection( t1, t2 ) called from main loop brk> a; (Subgroup( Group( Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]), InnerAut(Group( s, d1, d2 ), d1), InnerAut(Group( s, d1, d2 ), s) ), [ Aut(Group( s, d1, d2 ), [ s*d1, d1, d2 ]) ] )*InnerAut(Group( s, d1, d2 ), IdAgWord)) brk> b; InnerAut(Group( s, d1, d2 ), d1) brk> quit; gap> LogTo();