On 11 May 2011, at 15:07, 刘建军 wrote: > Deat GAP Forum, > > For a p-group $G$. The attibute "Omega(G,p)"(37.14) can be used when > $G$ is abelian. > Let $G$ be a finite non-abelian p-group. > Is there a method to get the subgroup that is generated by all elements of > $G$ of order p? > > Best Wishes > Jianjun Liu
Dear Jianjun Liu, dear Forum, There is no efficient general implementation but of course a naive approach may work dependently on the order and the representation of the group: compute conjugacy classes of elements, take a union of those of elements of order $p$ and generate a subgroup. Of course, it will have highly superfluous number of generators, but still you may be able to do operate with it and refine its generators to get rid of redundancies: gap> G:=SmallGroup(512,213); <pc group of size 512 with 9 generators> gap> IsAbelian(G); false gap> cc:=Filtered(ConjugacyClasses(G),c->Order(Representative(c))=2); [ f9^G, f8^G, f8*f9^G, f7^G, f7*f8^G, f4^G, f4*f8^G, f3*f5*f6^G, f3*f5*f6*f8^G ] gap> g:=Union(cc); [ f4, f7, f8, f9, f4*f7, f4*f8, f4*f9, f7*f8, f7*f9, f8*f9, f3*f5*f6, f4*f7*f8, f4*f7*f9, f4*f8*f9, f7*f8*f9, f3*f5*f6*f7, f3*f5*f6*f8, f3*f5*f6*f9, f4*f7*f8*f9, f3*f5*f6*f7*f8, f3*f5*f6*f7*f9, f3*f5*f6*f8*f9, f3*f5*f6*f7*f8*f9 ] gap> H:=Subgroup(G,g); <pc group with 23 generators> gap> Size(H); 32 gap> IdGroup(H); [ 32, 46 ] gap> MinimalGeneratingSet(H); [ f4, f7, f8, f3*f5*f6 ] gap> StructureDescription(H); "C2 x C2 x D8" Hope this helps, Alexander _______________________________________________ Forum mailing list Forum@mail.gap-system.org http://mail.gap-system.org/mailman/listinfo/forum