‣ FindMatchingFiles ( pkg, dirs, extns ) | ( function ) |
‣ CreateDirIfMissing ( str ) | ( function ) |
These functions have been transferred from package AutoDoc where they were named AutoDoc_FindMatchingFiles
and AutoDoc_CreateDirIfMissing
.
FindMatchingFiles
scans the given (by name) subdirectories of a package directory for files with one of the given extensions, and returns the corresponding filenames, as paths relative to the package directory.
CreateDirIfMissing
checks whether the given directory exists and, if not, attempts to create it. In either case true
is returned.
Warning: this function relies on the undocumented library function CreateDir
, so use it with caution.
gap> FindMatchingFiles( "utils", [ "/", "tst" ], [ "g", "txt" ] ); [ "/LICENSE.txt", "/PackageInfo.g", "/init.g", "/makedoc.g", "/read.g", "tst/testall.g" ] gap> CreateDirIfMissing( "/Applications/gap/temp/" ); true
‣ Log2HTML ( filename ) | ( function ) |
This function has been transferred from package RCWA.
This function converts the GAP logfile filename
to HTML. The extension of the input file must be *.log
. The name of the output file is the same as the one of the input file except that the extension *.log
is replaced by *.html
. There is a sample CSS file in utils/doc/gaplog.css
, which you can adjust to your taste.
gap> LogTo("mar2.log"); gap> FindMatchingFiles( "utils", [""], ["g"] ); [ "/PackageInfo.g", "/init.g", "/makedoc.g", "/read.g" ] gap> LogTo(); gap> Log2HTML( "mar2.log" ); gap> FindMatchingFiles( "utils", [""], ["html", "log"] ); [ "/mar2.html", "/mar2.log" ]
‣ IntOrOnfinityToLaTeX ( n ) | ( function ) |
This function has been transferred from package ResClasses.
IntOrInfinityToLaTeX(n)
returns the LaTeX string for n.
gap> IntOrInfinityToLaTeX( 10^3 ); "1000" gap> IntOrInfinityToLaTeX( infinity ); "\\infty"
‣ LaTeXStringFactorsInt ( n ) | ( function ) |
This function has been transferred from package RCWA.
It returns the prime factorization of the integer n as a string in LaTeX format.
gap> LaTeXStringFactorsInt( Factorial(12) ); "2^{10} \\cdot 3^5 \\cdot 5^2 \\cdot 7 \\cdot 11"
‣ PrintApplicableMethod ( arg ) | ( function ) |
This function combines calls to ApplicableMethod
, FilenameFunc
, StartlineFunc
and EndlineFunc
and prints the location of the file containing the method found, and a listing of that method. In its simplest form it is called as PrintApplicableMethod(f,L)
for a function f
and a list of parameters L
. Alternatively, it is called as PrintApplicableMethod(f,L,0,n)
and then prints the method returned by ApplicableMethod(f,L,0,n)
.
gap> PrintApplicableMethod( IsCyclic, [ Group((1,2,3),(4,5)) ] ); this method is contained in lines [30,36] of file: /Applications/gap/gapdev/lib/grp.gi function ( G ) if Length( GeneratorsOfGroup( G ) ) = 1 then return true; else return TRY_NEXT_METHOD; fi; return; end gap> PrintApplicableMethod( IsCyclic, [ Group((1,2,3),(4,5)) ], 0, 2 ); this method is contained in lines [41,63] of file: /Applications/gap/gapdev/lib/grp.gi function ( G ) if HasGeneratorsOfGroup( G ) and Length( GeneratorsOfGroup( G ) ) = 1 then SetMinimalGeneratingSet( G, GeneratorsOfGroup( G ) ); return true; elif not IsCommutative( G ) then return false; elif IsFinite( G ) then return ForAll( Set( FactorsInt( Size( G ) ) ), function ( p ) return Index( G, SubgroupNC( G, List( GeneratorsOfGroup( G ), function ( g ) return g ^ p; end ) ) ) = p; end ); else return AbelianInvariants( G ) = [ 0 ]; fi; return; end
‣ ConvertToMagmaInputString ( arg ) | ( function ) |
The function ConvertToMagmaInputString( obj [, str] )
attempts to output a string s
which can be read into MAGMA [BCP97] so as to produce the same group in that computer algebra system. In the second form the user specifies the name of the resulting object, so that the output string has the form "str := ..."
. When obj
is a permutation group, the operation PermGroupToMagmaFormat(obj)
is called. This function has been taken from other.gi
in the main library where it was called MagmaInputString
. When obj
is a pc-group, the operation PcGroupToMagmaFormat(obj)
is called. This function was private code of Max Horn. When obj
is a matrix group over a finite field, the operation MatrixGroupToMagmaFormat(obj)
is called. This function is a modification of private code of Frank Lübeck.
Hopefully code for other types of group will be added in due course.
These functions should be considered experimental, and more testing is desirable.
gap> ConvertToMagmaInputString( Group( (1,2,3,4,5), (3,4,5) ) ); "PermutationGroup<5|(1,2,3,4,5),\n(3,4,5)>;\n" gap> ConvertToMagmaInputString( Group( (1,2,3,4,5) ), "c5" ); "c5:=PermutationGroup<5|(1,2,3,4,5)>;\n" gap> ConvertToMagmaInputString( SmallGroup( 24, 12 ) ); "PolycyclicGroup< f1,f2,f3,f4 |\nf1^2,\nf2^3,\nf3^2,\nf4^2,\nf2^f1 = f2^2,\nf3\ ^f1 = f4,\nf3^f2 = f4,\nf4^f1 = f3,\nf4^f2 = f3*f4\n>;\n" gap> ConvertToMagmaInputString( CyclicGroup( IsPcGroup, 7 ), "c7" ); "c7:=PolycyclicGroup< f1 |\nf1^7\n>;\n" gap> M := GL(2,5);; Size(M); 480 gap> s1 := ConvertToMagmaInputString( M ); "F := GF(5);\nP := GL(2,F);\ngens := [\nP![2,0,0,1],\nP![4,1,4,0]\n];\nsub<P |\ gens>;\n" gap> Print( s1 ); F := GF(5); P := GL(2,F); gens := [ P![2,0,0,1], P![4,1,4,0] ]; sub<P | gens>; gap> n1 := [ [ Z(9)^0, Z(9)^0 ], [ Z(9)^0, Z(9) ] ];; gap> n2 := [ [ Z(9)^0, Z(9)^3 ], [ Z(9)^4, Z(9)^2 ] ];; gap> N := Group( n1, n2 );; Size( N ); 5760 gap> s2 := ConvertToMagmaInputString( N, "gpN" );; gap> Print( s2 ); F := GF(3^2); P := GL(2,F); w := PrimitiveElement(F); gens := [ P![ 1, 1, 1,w^1], P![ 1,w^3, 2,w^2] ]; gpN := sub<P | gens>;
generated by GAPDoc2HTML