/* This code can be loaded, or copied and paste using cpaste, into Sage. It will load the data associated to the HMF, including the field, level, and Hecke and Atkin-Lehner eigenvalue data. */ P. = PolynomialRing(QQ) g = P([1, 5, -4, -2, 1]) F. = NumberField(g) ZF = F.ring_of_integers() NN = ZF.ideal([9, 3, w^3 - w^2 - 4*w]) primes_array = [ [5, 5, w + 1],\ [5, 5, -w + 2],\ [7, 7, -w^2 + 2*w + 1],\ [7, 7, -w^2 + 2],\ [9, 3, w^3 - w^2 - 4*w],\ [16, 2, 2],\ [17, 17, -w^3 + 2*w^2 + 3*w - 2],\ [17, 17, -w^3 + w^2 + 4*w - 2],\ [25, 5, w^2 - w - 3],\ [37, 37, 2*w - 1],\ [43, 43, -w^3 + 2*w^2 + 2*w - 2],\ [43, 43, w^3 - w^2 - 3*w + 1],\ [59, 59, 2*w - 5],\ [59, 59, -2*w - 3],\ [79, 79, -w^3 + 2*w^2 + 5*w - 4],\ [79, 79, -w^3 + w^2 + 6*w - 2],\ [83, 83, -w^3 + 7*w],\ [83, 83, -w^3 + 2*w^2 + 4*w - 2],\ [83, 83, -w^3 + w^2 + 5*w - 3],\ [83, 83, w^2 - 2*w - 6],\ [89, 89, w^2 - 2*w - 4],\ [89, 89, w^2 - 5],\ [101, 101, -2*w^3 + 5*w^2 + 5*w - 11],\ [101, 101, w^2 + w - 4],\ [101, 101, w^2 - 3*w - 2],\ [101, 101, 2*w^3 - w^2 - 9*w - 3],\ [109, 109, w^3 - w^2 - 6*w - 3],\ [109, 109, -w^3 + 2*w^2 + 5*w - 9],\ [121, 11, w^3 - 8*w],\ [121, 11, w^3 - 3*w^2 - 5*w + 7],\ [131, 131, w^3 - 5*w - 6],\ [131, 131, -w^3 + 3*w^2 + 2*w - 10],\ [163, 163, 2*w^2 - 3*w - 6],\ [163, 163, 2*w^2 - w - 7],\ [167, 167, w^3 - w^2 - 3*w - 4],\ [167, 167, -w^3 + 2*w^2 + 2*w - 7],\ [193, 193, 2*w^3 - 3*w^2 - 7*w + 2],\ [193, 193, 2*w^3 - 3*w^2 - 7*w + 6],\ [227, 227, 2*w^3 - 3*w^2 - 8*w + 1],\ [227, 227, -2*w^3 + 3*w^2 + 8*w - 8],\ [251, 251, 2*w^2 - w - 9],\ [251, 251, 2*w^2 - 3*w - 8],\ [257, 257, w^3 + w^2 - 8*w - 7],\ [257, 257, -4*w^3 + 5*w^2 + 17*w - 1],\ [269, 269, 2*w^3 - 2*w^2 - 10*w + 3],\ [269, 269, 2*w^3 - 3*w^2 - 9*w + 2],\ [269, 269, 2*w^3 - 3*w^2 - 9*w + 8],\ [269, 269, -2*w^3 + 4*w^2 + 8*w - 7],\ [277, 277, w^3 - w^2 - 4*w - 4],\ [277, 277, -w^3 + 2*w^2 + 3*w - 8],\ [289, 17, 2*w^2 - 2*w - 3],\ [293, 293, -w^2 - 2*w + 5],\ [293, 293, -w^3 + 3*w^2 + 3*w - 4],\ [293, 293, w^3 - 6*w + 1],\ [293, 293, -2*w^3 + 4*w^2 + 7*w - 6],\ [311, 311, -w^3 + 3*w^2 + w - 7],\ [311, 311, w^3 - 4*w - 4],\ [331, 331, -2*w^3 + 4*w^2 + 9*w - 10],\ [331, 331, 2*w^3 - 2*w^2 - 11*w + 1],\ [337, 337, 2*w^2 - 3*w - 4],\ [337, 337, -w^3 + 2*w^2 + 6*w - 3],\ [337, 337, w^3 - w^2 - 7*w + 4],\ [337, 337, 2*w^2 - w - 5],\ [353, 353, -3*w^3 + 4*w^2 + 13*w - 2],\ [353, 353, 3*w^3 - 5*w^2 - 12*w + 12],\ [373, 373, -2*w^3 + 6*w^2 + 3*w - 11],\ [373, 373, -w^3 - w^2 + 6*w + 7],\ [373, 373, -w^3 + 4*w^2 + w - 11],\ [373, 373, 2*w^3 - 9*w - 4],\ [379, 379, w^3 - w^2 - 7*w + 1],\ [379, 379, 3*w^3 - 7*w^2 - 7*w + 11],\ [379, 379, 3*w^3 - 2*w^2 - 12*w],\ [379, 379, -w^3 + 2*w^2 + 6*w - 6],\ [383, 383, -3*w^3 + 4*w^2 + 12*w - 8],\ [383, 383, 3*w^3 - 5*w^2 - 11*w + 5],\ [421, 421, 2*w^3 - 2*w^2 - 9*w - 4],\ [421, 421, -2*w^3 + 4*w^2 + 7*w - 13],\ [457, 457, -w^3 + 2*w^2 + 6*w - 5],\ [457, 457, w^3 - w^2 - 7*w + 2],\ [461, 461, -w^3 + 3*w^2 + 4*w - 4],\ [461, 461, -w^3 + 7*w - 2],\ [463, 463, -w^3 + 4*w^2 + 3*w - 10],\ [463, 463, w^3 + w^2 - 8*w - 4],\ [467, 467, -w^3 + 6*w - 2],\ [467, 467, -w^3 + 3*w^2 + 3*w - 3],\ [479, 479, -w^3 + w^2 + w - 4],\ [479, 479, w^3 - 2*w^2 - 3],\ [487, 487, -3*w^3 + 4*w^2 + 12*w - 3],\ [487, 487, -3*w^3 + 5*w^2 + 11*w - 10],\ [499, 499, 3*w^3 - 4*w^2 - 11*w + 8],\ [499, 499, 3*w^3 - 5*w^2 - 10*w + 4],\ [503, 503, -w^3 + 2*w^2 + w - 5],\ [503, 503, w^3 - w^2 - 2*w - 3],\ [521, 521, 2*w^3 - 4*w^2 - 6*w + 3],\ [521, 521, -w^3 + 10*w - 8],\ [521, 521, w^3 - 3*w^2 - 7*w + 1],\ [521, 521, -2*w^3 + 2*w^2 + 8*w - 5],\ [541, 541, 2*w - 7],\ [541, 541, 2*w + 5],\ [547, 547, w^3 - 4*w^2 + 7],\ [547, 547, w^3 + w^2 - 5*w - 4],\ [563, 563, -2*w^3 + 4*w^2 + 7*w - 5],\ [563, 563, -2*w^3 + 2*w^2 + 9*w - 4],\ [587, 587, -w^3 - w^2 + 4*w + 6],\ [587, 587, w^3 - 4*w^2 + w + 8],\ [593, 593, w^2 + w - 7],\ [593, 593, 2*w^3 - 5*w^2 - 4*w + 5],\ [593, 593, -2*w^3 + w^2 + 8*w - 2],\ [593, 593, w^2 - 3*w - 5],\ [613, 613, 2*w^3 - 3*w^2 - 11*w + 2],\ [613, 613, w^3 + w^2 - 6*w - 3],\ [613, 613, 3*w^3 - 4*w^2 - 12*w + 4],\ [613, 613, 2*w^3 - 3*w^2 - 11*w + 10],\ [631, 631, -w^3 - w^2 + 7*w + 6],\ [631, 631, -w^3 + 4*w^2 + 2*w - 11],\ [647, 647, w^2 - 4*w - 3],\ [647, 647, w^2 + 2*w - 6],\ [677, 677, w^2 + w - 8],\ [677, 677, -w^3 + 7*w - 3],\ [677, 677, -w^3 + 3*w^2 + 4*w - 3],\ [677, 677, w^2 - 3*w - 6],\ [709, 709, w^3 - 7*w - 8],\ [709, 709, w^3 - 3*w^2 - 4*w + 14],\ [739, 739, w^3 - w^2 - 4*w - 5],\ [739, 739, -3*w^3 + 3*w^2 + 16*w - 3],\ [739, 739, -3*w^3 + 6*w^2 + 13*w - 13],\ [739, 739, -w^3 + 2*w^2 + 3*w - 9],\ [751, 751, -w - 5],\ [751, 751, w^3 + w^2 - 7*w - 4],\ [751, 751, -w^3 + 4*w^2 + 2*w - 9],\ [751, 751, w - 6],\ [757, 757, -w^3 + 4*w^2 + 2*w - 10],\ [757, 757, w^3 + w^2 - 7*w - 5],\ [761, 761, -3*w^3 + 2*w^2 + 17*w - 1],\ [761, 761, -3*w^3 + 6*w^2 + 9*w - 17],\ [761, 761, 2*w^3 - 5*w^2 - 9*w + 9],\ [761, 761, 2*w^3 - 2*w^2 - 7*w - 6],\ [773, 773, -3*w^3 + 8*w^2 + 6*w - 12],\ [773, 773, w^3 - 4*w - 6],\ [773, 773, -w^3 + 3*w^2 + w - 9],\ [773, 773, -3*w^3 + w^2 + 13*w + 1],\ [797, 797, 3*w^3 - 2*w^2 - 13*w + 1],\ [797, 797, 3*w^3 - 7*w^2 - 8*w + 11],\ [823, 823, 2*w^3 - 3*w^2 - 6*w - 4],\ [823, 823, -2*w^3 + 3*w^2 + 7*w + 3],\ [823, 823, w^3 - 2*w^2 - 7*w - 3],\ [823, 823, -3*w^3 + 5*w^2 + 9*w - 2],\ [857, 857, 2*w^3 - w^2 - 10*w + 1],\ [857, 857, -2*w^3 + 5*w^2 + 6*w - 8],\ [883, 883, 3*w^3 - 3*w^2 - 12*w + 1],\ [883, 883, 3*w^3 - 6*w^2 - 9*w + 11],\ [887, 887, -2*w^3 + 5*w^2 + 7*w - 9],\ [887, 887, -4*w^3 + 6*w^2 + 17*w - 7],\ [887, 887, -2*w^3 + 5*w^2 + 9*w - 16],\ [887, 887, 2*w^3 - w^2 - 11*w + 1],\ [907, 907, -3*w^3 + 3*w^2 + 16*w - 2],\ [907, 907, -3*w^3 + 6*w^2 + 13*w - 14],\ [919, 919, 2*w^3 - 2*w^2 - 7*w + 9],\ [919, 919, -2*w^3 + 2*w^2 + 12*w - 5],\ [929, 929, -2*w^3 + 4*w^2 + 8*w - 5],\ [929, 929, 3*w^3 - 4*w^2 - 11*w + 12],\ [929, 929, 3*w^3 - 5*w^2 - 10*w],\ [929, 929, -2*w^3 + 2*w^2 + 10*w - 5],\ [967, 967, 3*w^3 - 5*w^2 - 9*w + 11],\ [967, 967, -3*w^3 + 7*w^2 + 6*w - 10],\ [971, 971, 2*w^3 - 2*w^2 - 7*w - 5],\ [971, 971, -2*w^3 + w^2 + 8*w - 3],\ [971, 971, 2*w^3 - 5*w^2 - 4*w + 4],\ [971, 971, -2*w^3 + 4*w^2 + 5*w - 12],\ [983, 983, 4*w - 7],\ [983, 983, 2*w^2 - 4*w - 7],\ [983, 983, 2*w^2 - 9],\ [983, 983, 4*w + 3],\ [991, 991, 2*w^3 - 6*w^2 - 5*w + 14],\ [991, 991, -2*w^3 + 11*w + 5]] primes = [ZF.ideal(I) for I in primes_array] heckePol = x^3 - 4*x^2 - 2*x + 14 K. = NumberField(heckePol) hecke_eigenvalues_array = [e, -e, -e^2 + e + 4, -e^2 + e + 4, 1, 3*e^2 - 4*e - 13, -3*e^2 + 4*e + 14, 3*e^2 - 4*e - 14, -e^2 + 2*e - 2, -2*e^2 + 6*e + 8, e^2 - 3*e - 8, e^2 - 3*e - 8, -e^2 + 14, e^2 - 14, 2*e^2 - 6*e - 4, 2*e^2 - 6*e - 4, -e^2 + 14, -2*e^2 + 2*e, 2*e^2 - 2*e, e^2 - 14, -3*e^2 + 2*e + 14, 3*e^2 - 2*e - 14, e, e^2 - 14, -e^2 + 14, -e, 2*e^2 - 6*e - 16, 2*e^2 - 6*e - 16, 4*e^2 - 32, 4*e^2 - 32, -2*e^2 + 2*e, 2*e^2 - 2*e, -4*e^2 + 24, -4*e^2 + 24, -2*e^2 + 10*e, 2*e^2 - 10*e, -4*e^2 + 8*e + 18, -4*e^2 + 8*e + 18, -2*e^2 - 4*e + 14, 2*e^2 + 4*e - 14, -e^2 + 8*e - 14, e^2 - 8*e + 14, 4*e^2 - e - 42, -4*e^2 + e + 42, 4*e^2 - 11*e - 14, e^2 - 2*e - 14, -e^2 + 2*e + 14, -4*e^2 + 11*e + 14, 7*e^2 - 6*e - 38, 7*e^2 - 6*e - 38, 4*e^2 - 34, -8*e^2 + 13*e + 14, -3*e^2 + 4*e + 14, 3*e^2 - 4*e - 14, 8*e^2 - 13*e - 14, 10*e^2 - 14*e - 56, -10*e^2 + 14*e + 56, e^2 + e - 18, e^2 + e - 18, -10*e^2 + 12*e + 58, -10*e^2 + 12*e + 48, -10*e^2 + 12*e + 48, -10*e^2 + 12*e + 58, -7*e^2 + 14*e + 14, 7*e^2 - 14*e - 14, -6*e^2 + 6*e + 38, -3*e^2 + 6*e - 6, -3*e^2 + 6*e - 6, -6*e^2 + 6*e + 38, e^2 - 9*e + 2, 5*e^2 - 9*e - 22, 5*e^2 - 9*e - 22, e^2 - 9*e + 2, -4*e^2 - 2*e + 42, 4*e^2 + 2*e - 42, -12*e^2 + 20*e + 34, -12*e^2 + 20*e + 34, -8*e^2 + 12*e + 38, -8*e^2 + 12*e + 38, 8*e^2 - 11*e - 28, -8*e^2 + 11*e + 28, 10*e^2 - 16*e - 36, 10*e^2 - 16*e - 36, 4*e^2 - 2*e - 28, -4*e^2 + 2*e + 28, -8*e^2 + 20*e + 28, 8*e^2 - 20*e - 28, 3*e^2 + 3*e - 30, 3*e^2 + 3*e - 30, -e^2 + 7*e - 18, -e^2 + 7*e - 18, -9*e^2 + 16*e + 42, 9*e^2 - 16*e - 42, e^2 + 4*e - 14, 10*e^2 - 7*e - 70, -10*e^2 + 7*e + 70, -e^2 - 4*e + 14, -17*e^2 + 18*e + 94, -17*e^2 + 18*e + 94, -2*e^2 - 8, -2*e^2 - 8, -2*e^2 - 6*e + 28, 2*e^2 + 6*e - 28, -10*e^2 + 10*e + 56, 10*e^2 - 10*e - 56, -7*e^2 + 4*e + 42, 16*e^2 - 11*e - 98, -16*e^2 + 11*e + 98, 7*e^2 - 4*e - 42, -6*e^2 + 18*e + 26, 15*e^2 - 14*e - 86, 15*e^2 - 14*e - 86, -6*e^2 + 18*e + 26, 4*e^2 - 6*e - 12, 4*e^2 - 6*e - 12, 0, 0, 16*e^2 - 13*e - 84, -9*e^2 + 16*e + 42, 9*e^2 - 16*e - 42, -16*e^2 + 13*e + 84, 6*e^2 + 6*e - 60, 6*e^2 + 6*e - 60, -2*e^2 - 4*e + 12, 12*e^2 - 12*e - 44, 12*e^2 - 12*e - 44, -2*e^2 - 4*e + 12, -17*e^2 + 27*e + 64, 9*e^2 - 17*e - 46, 9*e^2 - 17*e - 46, -17*e^2 + 27*e + 64, -2*e - 22, -2*e - 22, e^2 - 6*e - 14, 10*e^2 - 11*e - 70, -10*e^2 + 11*e + 70, -e^2 + 6*e + 14, 17*e^2 - 28*e - 70, -18*e^2 + 27*e + 84, 18*e^2 - 27*e - 84, -17*e^2 + 28*e + 70, -19*e^2 + 10*e + 126, 19*e^2 - 10*e - 126, 12*e^2 - 30*e - 44, -16*e^2 + 22*e + 88, -16*e^2 + 22*e + 88, 12*e^2 - 30*e - 44, -19*e^2 + 26*e + 98, 19*e^2 - 26*e - 98, 3*e^2 + 9*e - 36, 3*e^2 + 9*e - 36, -2*e^2 - 2*e + 42, e^2 - 16*e - 14, -e^2 + 16*e + 14, 2*e^2 + 2*e - 42, -11*e^2 + 21*e + 40, -11*e^2 + 21*e + 40, -e^2 - 17*e + 22, -e^2 - 17*e + 22, -8*e^2 + 3*e + 28, 21*e^2 - 18*e - 126, -21*e^2 + 18*e + 126, 8*e^2 - 3*e - 28, 2*e - 8, 2*e - 8, -2*e^2 + 8*e + 14, 18*e^2 - 24*e - 84, -18*e^2 + 24*e + 84, 2*e^2 - 8*e - 14, 2*e^2 - 6*e - 28, 6*e^2 - 10*e + 14, -6*e^2 + 10*e - 14, -2*e^2 + 6*e + 28, 11*e^2 - 3*e - 58, 11*e^2 - 3*e - 58] hecke_eigenvalues = {} for i in range(len(hecke_eigenvalues_array)): hecke_eigenvalues[primes[i]] = hecke_eigenvalues_array[i] AL_eigenvalues = {} AL_eigenvalues[ZF.ideal([9, 3, w^3 - w^2 - 4*w])] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]