Thanks a lot, it really helped me!! On Mon, May 20, 2019 at 2:16 PM Thomas Breuer <s...@math.rwth-aachen.de> wrote:
> Dear GAP Forum, > > Divyanshu Thakur wrote: > > > Hello, > > There are 2-methods for the computation of Composition Series: > > 1) In lib/grpprmcs.gi using Pcgs > > 2) In lib/grp.gi using Derived Series > > > > And, GAP by default uses the 1st method so, Is there some way > > we can force the computation via the 2nd implementation > > defined in grp.gi. > > First of all, the method in 'lib/grp.gi' can compute composition series > only for solvable groups. > The method in 'lib/grpprmcs.gi' can compute composition series > also for nonsolvable permutation groups; > only a very short first part of the code deals with pcgs. > > Second, more 'CompositionSeries' methods may be applicable, > depending on the group for which one wants to compute a > composition series. > For example, there is another pcgs based method which does not > require the group to be a permutation group. > > The two methods mentioned in the question can compute a composition series > of a solvable permutation group, > and in this case the method in 'lib/grpprmcs.gi' is indeed prefered > by GAP. > If you want to use a particular method in your code then you can > call the method directly instead of the operation 'CompositionSeries', > for example as follows. > > gap> g:= SymmetricGroup( 4 );; > gap> meth:= ApplicableMethod( CompositionSeries, [ g ], 1, "all" ); > #I Searching Method for CompositionSeries with 1 arguments: > #I Total: 10 entries > #I Method 4: ``CompositionSeries: for a permutation group'', value: 58 > #I Skipped: > #I Method 7: ``CompositionSeries: using DerivedSubgroup'', value: 44 > #I Skipped: > #I Method > 10 > : ``CompositionSeries: default method requiring categories and > checking \ > properties'', value: 0 > #I Skipped: > [ function( Gr ) ... end, function( grp ) ... end, > function( <1 unnamed arguments> ) ... end ] > gap> meth[2]( g ); > [ Sym( [ 1 .. 4 ] ), Alt( [ 1 .. 4 ] ), Group([ (1,4)(2,3), (1,2)(3,4) > ]), > Group([ (1,2)(3,4) ]), Group(()) ] > > Note, however, that such methods may in general delegate to other methods > instead of computing the required result. > > If you want to give the method in 'lib/grp.gi' a higher preference > for the whole GAP session then you can explicitly install this method > a second time, with higher rank. > Here is an example. > > gap> InstallMethod( CompositionSeries, "install again", > > [ IsPermGroup ], meth[2] ); > gap> meth:= ApplicableMethod( CompositionSeries, [ g ], 1, "all" ); > #I Searching Method for CompositionSeries with 1 arguments: > #I Total: 11 entries > #I Method 4: ``CompositionSeries: install again'', value: 60 > #I Skipped: > #I Method 5: ``CompositionSeries: for a permutation group'', value: 58 > #I Skipped: > #I Method 8: ``CompositionSeries: using DerivedSubgroup'', value: 44 > #I Skipped: > #I Method > 11 > : ``CompositionSeries: default method requiring categories and > checking \ > properties'', value: 0 > #I Skipped: > [ function( grp ) ... end, function( Gr ) ... end, function( grp ) ... > end, > function( <1 unnamed arguments> ) ... end ] > > All the best, > Thomas > > > _______________________________________________ > Forum mailing list > Forum@gap-system.org > https://mail.gap-system.org/mailman/listinfo/forum > -- Divyanshu Thakur <https://www.linkedin.com/in/divyanshu132/> _______________________________________________ Forum mailing list Forum@gap-system.org https://mail.gap-system.org/mailman/listinfo/forum