/************************************************************** PARI/GP scipt to generate the files form*.*.txt from the file -FormesPoids1_15000.gp-. Call like 'gp -q -s 160000000 < printToFiles.gp'. **************************************************************/ all = read("FormesPoids1_15000.gp"); Praeambel = "This file contains the first 15000 nonzero Fourier coefficients\nof one of the 27 icosahedral form which were computed\nby Arnaud Jehanne (Universit\'e Bordeaux I) in 2007.\n\n(C) 2008, Arnaud Jehanne \n Nils-Peter Skoruppa \n==============================================================\n"; Write( s) = write( File, s); alias( "Print", "Write") { for( n=1, length(all), space = all[n]; level = space[2]; character = space[3]; for( j=4, length(space)-1, form = space[j]; name = form[1]; pol5 = subst( Pol(form[3][1],x), x, 1/x)*x^5; pol24 = subst( Pol(form[3][2],x), x, 1/x)*x^24; coeffVect = form[4] * [1, S, I, I*S]~; File = Str( "form."level"."character"."name".txt");print(File); Print( Str(Praeambel"\n")); Print( Str("form:\t\t"level"."character"."name)); Print( Str("level:\t\t"level)); Print( Str("character:\t"character)); Print( Str("Fixed field of the projective Galois representation:\n\t"pol5)); Print( Str("Fixed field of the Galois representation:\n\t"pol24)); Print( Str("Fourier coefficients ($I=\sqrt{-1}$, $S=\frac{-1+\sqrt 5}2$):")); Print( Str("\nl\ta(l)\n----------------------------")); for( l=1, length(coeffVect), if( 0 != coeffVect[l], Print( Str(l"\t"coeffVect[l])))) ) ) }