On 17 Sep 2014, at 13:57, buynnnm...@yahoo.co.jp wrote: > > myIsSolvable:=function ( x ) > local d; > d := DerivedSeries( x ); > return IsTrivial( d[Size( d )] ); > end > > > gap> List([1..30], x -> myIsSolvable(SymmetricGroup(x))) = List([1..30], x -> > IsSolvable(SymmetricGroup(x))); > true > > For Symmetric Group, the same results have been obtained. > So I'm going to try to do withmyIsSolvable function that uses the > DerivedSeries function. > > There was a difference of more than twice the run time to IsSolvable of > built-in and myIsSolvable Taking the profile. > > Built-in IsSolved Would has become the source code I hard to understand in > order to increase the execution speed? >
Performance is one consideration, of course. Another is making use of already computing information about the group when possible. Still another is computing data structures that are likely to be useful for further computations. The GAP library function, having found a group to be solvable will also have constructed a data structure called a Pcgs (PolyCyclic Generating System) which can be used to greatly speed up many further computations with the group. Steve _______________________________________________ Forum mailing list Forum@mail.gap-system.org http://mail.gap-system.org/mailman/listinfo/forum