Dear Stephen Linton, Thank you very much for your help!
Thanks to you very much , it is now very easy to see the source of the built-in Methods. I try it immediately in the way that you taught me. With best regards ----- Original Message ----- > From: Stephen Linton <steve.lin...@st-andrews.ac.uk> > To: buynnnm...@yahoo.co.jp > Cc: GAP Forum <fo...@gap-system.org> > Date: 2014/9/17, Wed 06:53 > Subject: Re: [GAP Forum] Is there a simple way to view the source of the > function (ex. IsSolvable)? > >T he thing is that IsSolvable is not really a single function, it is an > Operation. > > An Operation in GAP is a collection of functions called Methods that can be > used > to compute the > result for different kinds of objects. > > You can get the actual Method applied to particular objects via > “ApplicableMethod”. For instance: > > gap> g := SymmetricGroup(5); > Sym( [ 1 .. 5 ] ) > gap> ApplicableMethod(IsSolvableGroup,[g]); > function( G ) ... end > gap> f := last; > function( G ) ... end > gap> Print(f); > function ( G ) > local pcgs; > pcgs := TryPcgsPermGroup( G, false, false, true ); > if IsPcgs( pcgs ) then > SetIndicesEANormalSteps( pcgs, pcgs!.permpcgsNormalSteps ); > SetIsPcgsElementaryAbelianSeries( pcgs, true ); > if not HasPcgs( G ) then > SetPcgs( G, pcgs ); > fi; > if not HasPcgsElementaryAbelianSeries( G ) then > SetPcgsElementaryAbelianSeries( G, pcgs ); > fi; > return true; > else > return false; > fi; > return; > end > gap> FilenameFunc(f); > "/Users/sal/HG/gap/lib/grpperm.gi" > gap> StartlineFunc(f); > 1221 > > So the Method that would apply to this particular group is found in > grpperm.gi > starting at line 1221 (in my development version of GAP). > > Steve > > > > On 16 Sep 2014, at 22:29, buynnnm...@yahoo.co.jp wrote: > >> Dear GAP forum, >> >> Because I would like to read the source of IsSolvable function, I was able > to find by looking at the source of GAP4 using grep. >> >> Source of IsSolvable is defined in the "lib/grp.gi" and > "lib/grp.gd". >> Noticing that easy to find if grep function name the files whose name ends > with .gd, and went to examine the function So who is called from IsSolved > function. ( DerivedSeries, DerivedSubgroup, ClosureSubgroupNC, ClosureGroup, > NormalClosure, TrivialSubgroup ,Comm ....) >> >> >> However, this procedure is troublesome. >> >> >> I tried looking for using the http://www.gap-system.org/search.html the > reference manual. >> >> I found FilenameFunc function in > http://www.gap-system.org/Manuals/doc/ref/chap5.html. >> >> But I got following output. >> >> gap> FilenameFunc(IsSolvable); >> fail >> >> So, I would like to know how to see source of functions (ex. IsSolvable) > more easier. >> Or I would like to know how to get path of the file the function has been > defined. >> >> Does anyone have any idea how I can do it more easizer. >> >> >> With best regards >> >> >> _______________________________________________ >> Forum mailing list >> Forum@mail.gap-system.org >> http://mail.gap-system.org/mailman/listinfo/forum > _______________________________________________ Forum mailing list Forum@mail.gap-system.org http://mail.gap-system.org/mailman/listinfo/forum