[GAP Forum] IsPNilpotent for nonsolvable groups

Max Horn max at quendi.de
Sat Feb 4 18:36:37 GMT 2012


Dear Benjamin,


Am 03.02.2012 um 17:04 schrieb Benjamin Sambale:

> Dear GAP users,
> 
> I got the following error message:
> 
> IsPNilpotent(GL(3,2),2);
> Error, no method found! For debugging hints type ?Recovery from NoMethodFound
> Error, no 3rd choice method found for `HallSubgroupOp' on 2 arguments
> 
> So, it seems that IsPNilpotent doesn't work for nonsolvable groups, since it relies on HallSubgroup.

Yes, that's correct indeed. This limitation is documented for HallSubgroup (I assume you are aware of that), but it is not documented for IsPNilpotent, which is an oversight we should correct -- or  else we should indeed provide alternative methods that cover non-solvable groups.

> Wouldn't it be easier to use the following code?
> 
> IsPNilpotent:=function(G,p)
> if AsGroup(Filtered(G,x->Order(x) mod p<>0))=fail then return false; else return true; fi;
> end;

This code only can work for relatively small finite groups, e.g. not for GL(4,5) of order 116064000000. So I don't think we should use it. 

However, I agree that we can and should include more code to deal with such groups in GAP. I guess so far nobody had a real need for it. A refinement of the following could be done (coded from the top of my head; much better solutions may yet be possible, but at least this one can deal with GL(4,5):

MyIsPNilpotent := function(G,p)
 local cc, H;
 if Size(G) mod p <> 0 or IsAbelian(G) then return true; fi;
 cc := ConjugacyClasses(G);;
 cc := Filtered(cc, c -> Order(Representative(c)) mod p <> 0);;
 if Size(G) mod Sum(List(cc,Size)) <> 0 then return false; fi;
 H:=Subgroup(G, List(cc, Representative));
 H:=NormalClosure(G, H);
 return Size(H) mod p <> 0;
end;


Cheers,
Max



More information about the Forum mailing list