/* 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([-28, -1, 1]) F. = NumberField(g) ZF = F.ring_of_integers() NN = ZF.ideal([14, 14, 3*w + 14]) primes_array = [ [2, 2, -w + 6],\ [2, 2, w + 5],\ [7, 7, 6*w - 35],\ [7, 7, -6*w - 29],\ [9, 3, 3],\ [11, 11, 4*w + 19],\ [11, 11, 4*w - 23],\ [13, 13, -2*w + 11],\ [13, 13, 2*w + 9],\ [25, 5, -5],\ [31, 31, 2*w - 13],\ [31, 31, -2*w - 11],\ [41, 41, -8*w - 39],\ [41, 41, 8*w - 47],\ [53, 53, -26*w - 125],\ [53, 53, 26*w - 151],\ [61, 61, -14*w + 81],\ [61, 61, -14*w - 67],\ [83, 83, 2*w - 15],\ [83, 83, -2*w - 13],\ [97, 97, 2*w - 5],\ [97, 97, -2*w - 3],\ [109, 109, 2*w - 3],\ [109, 109, -2*w - 1],\ [113, 113, 2*w - 1],\ [127, 127, 8*w - 45],\ [127, 127, 8*w + 37],\ [131, 131, -50*w + 291],\ [131, 131, 50*w + 241],\ [139, 139, 6*w - 37],\ [139, 139, -6*w - 31],\ [149, 149, 20*w + 97],\ [149, 149, 20*w - 117],\ [157, 157, -12*w - 59],\ [157, 157, 12*w - 71],\ [163, 163, 4*w - 19],\ [163, 163, 4*w + 15],\ [173, 173, 4*w + 23],\ [173, 173, 4*w - 27],\ [211, 211, 2*w - 19],\ [211, 211, -2*w - 17],\ [227, 227, -4*w - 13],\ [227, 227, 4*w - 17],\ [233, 233, 6*w + 25],\ [233, 233, -6*w + 31],\ [239, 239, -14*w - 69],\ [239, 239, 14*w - 83],\ [241, 241, 46*w + 221],\ [241, 241, -46*w + 267],\ [251, 251, 22*w - 129],\ [251, 251, 22*w + 107],\ [257, 257, -34*w + 197],\ [257, 257, -34*w - 163],\ [277, 277, 4*w - 29],\ [277, 277, -4*w - 25],\ [283, 283, 4*w - 15],\ [283, 283, -4*w - 11],\ [289, 17, -17],\ [307, 307, 68*w - 395],\ [307, 307, 68*w + 327],\ [311, 311, 10*w - 61],\ [311, 311, -10*w - 51],\ [313, 313, -32*w - 155],\ [313, 313, 32*w - 187],\ [317, 317, -18*w - 85],\ [317, 317, 18*w - 103],\ [331, 331, -4*w - 9],\ [331, 331, 4*w - 13],\ [337, 337, -16*w - 79],\ [337, 337, 16*w - 95],\ [347, 347, -12*w + 67],\ [347, 347, 12*w + 55],\ [353, 353, 14*w - 79],\ [353, 353, 14*w + 65],\ [361, 19, -19],\ [367, 367, -32*w - 153],\ [367, 367, -32*w + 185],\ [383, 383, 56*w + 269],\ [383, 383, 56*w - 325],\ [389, 389, -4*w - 27],\ [389, 389, 4*w - 31],\ [401, 401, 8*w - 51],\ [401, 401, -8*w - 43],\ [421, 421, 12*w - 73],\ [421, 421, -12*w - 61],\ [439, 439, -8*w - 33],\ [439, 439, 8*w - 41],\ [443, 443, -4*w - 1],\ [443, 443, 4*w - 5],\ [461, 461, -30*w + 173],\ [461, 461, 30*w + 143],\ [463, 463, 2*w - 25],\ [463, 463, -2*w - 23],\ [467, 467, 34*w + 165],\ [467, 467, 34*w - 199],\ [503, 503, -26*w - 127],\ [503, 503, 26*w - 153],\ [509, 509, 4*w - 33],\ [509, 509, -4*w - 29],\ [521, 521, -10*w + 53],\ [521, 521, 10*w + 43],\ [529, 23, -23],\ [547, 547, 14*w - 85],\ [547, 547, -14*w - 71],\ [557, 557, 66*w + 317],\ [557, 557, 66*w - 383],\ [563, 563, 2*w - 27],\ [563, 563, -2*w - 25],\ [569, 569, -64*w + 373],\ [569, 569, 64*w + 309],\ [587, 587, 12*w + 53],\ [587, 587, -12*w + 65],\ [593, 593, 8*w + 45],\ [593, 593, 8*w - 53],\ [601, 601, -26*w - 123],\ [601, 601, 26*w - 149],\ [617, 617, 6*w - 23],\ [617, 617, -6*w - 17],\ [647, 647, 24*w - 137],\ [647, 647, -24*w - 113],\ [653, 653, 28*w - 165],\ [653, 653, -28*w - 137],\ [677, 677, -22*w - 103],\ [677, 677, 22*w - 125],\ [691, 691, 20*w - 113],\ [691, 691, 20*w + 93],\ [709, 709, -10*w - 41],\ [709, 709, 10*w - 51],\ [719, 719, -8*w + 37],\ [719, 719, -8*w - 29],\ [727, 727, -22*w - 109],\ [727, 727, 22*w - 131],\ [739, 739, 46*w - 269],\ [739, 739, -46*w - 223],\ [761, 761, -6*w - 13],\ [761, 761, 6*w - 19],\ [769, 769, 110*w - 639],\ [769, 769, 110*w + 529],\ [773, 773, 4*w - 37],\ [773, 773, -4*w - 33],\ [787, 787, 2*w - 31],\ [787, 787, -2*w - 29],\ [809, 809, 56*w + 271],\ [809, 809, -56*w + 327],\ [821, 821, 6*w - 17],\ [821, 821, -6*w - 11],\ [823, 823, 38*w - 223],\ [823, 823, -38*w - 185],\ [827, 827, 132*w - 767],\ [827, 827, 132*w + 635],\ [841, 29, -29],\ [853, 853, -76*w + 443],\ [853, 853, 76*w + 367],\ [863, 863, 14*w - 87],\ [863, 863, -14*w - 73],\ [911, 911, 2*w - 33],\ [911, 911, -2*w - 31],\ [919, 919, -6*w - 41],\ [919, 919, 6*w - 47],\ [929, 929, 50*w + 239],\ [929, 929, 50*w - 289],\ [953, 953, 6*w - 11],\ [953, 953, -6*w - 5],\ [967, 967, -8*w - 25],\ [967, 967, 8*w - 33],\ [991, 991, 16*w + 71],\ [991, 991, -16*w + 87]] primes = [ZF.ideal(I) for I in primes_array] heckePol = x^2 + x - 4 K. = NumberField(heckePol) hecke_eigenvalues_array = [-1, e, 1, -e + 1, 0, e - 1, e + 1, -e - 5, -2, 2*e, -2*e - 4, e + 9, -3*e - 5, -6, 3*e - 1, 2, -e + 5, 2*e - 4, -3*e + 5, -4*e - 10, -4*e - 2, -5*e - 7, -6*e - 6, -2, e + 3, 6*e + 4, -4*e + 4, e - 3, -2*e - 10, -6*e + 4, -4*e + 8, 2*e - 12, 6*e + 12, 4*e - 4, 5*e - 1, -4*e, -4*e - 12, 5*e + 3, -4*e - 12, -10*e - 10, -2*e - 2, -3*e - 15, 10*e + 10, 4*e + 2, -2, 4*e - 14, 10*e + 6, 2*e + 2, -e - 5, -8*e - 4, 8*e, -4*e - 14, 6*e - 4, 3*e - 23, 3*e + 5, 8*e + 12, 12*e + 6, 4*e - 6, 4*e + 12, 12*e + 8, -6*e - 12, 5*e + 25, -2*e + 26, -4*e - 16, 4*e - 24, -4*e + 22, -4*e + 24, 12*e - 2, 4*e - 10, 8*e - 6, -e - 9, -e + 27, e - 29, -6*e - 12, -4, e - 19, 10*e + 18, 5*e + 13, 8*e + 6, 6*e + 26, -6*e + 20, -2*e - 6, 9*e - 3, 6*e - 12, -8*e - 22, 7*e + 3, -4*e, -12*e - 8, -14*e - 4, 2*e + 8, 8*e + 14, 3*e + 3, 11*e - 9, -5*e - 27, 6*e + 2, -9*e + 3, 2*e - 22, -4*e - 10, e - 9, 12*e - 10, -10*e - 16, 3*e - 7, -11*e + 7, 3*e + 35, 6*e + 6, 14*e - 8, -2*e + 18, 3*e + 31, -16*e - 14, e + 23, 2*e + 6, -13*e + 7, -16*e - 6, -4*e - 18, -22, -38, -7*e + 7, 16*e + 10, 15*e + 3, 10*e + 26, -5*e - 31, -12*e - 2, -3*e + 27, -10*e - 28, 5*e + 9, -6*e + 6, 8*e + 14, -14*e + 14, 15*e + 21, 14*e + 10, 14*e + 8, -8*e - 20, 2, 2*e + 30, 6*e + 14, 4*e - 20, 8*e - 18, -10*e - 12, -3*e + 3, -12*e + 10, 14*e + 18, -6*e + 8, 6*e - 24, 2*e + 16, 22*e + 4, -4*e - 34, -16, -10*e + 22, -11*e + 5, 19*e + 13, 12*e + 18, -23*e - 11, -6, -12*e - 20, -14*e - 30, 20*e + 4, -2*e + 46, -14*e + 10, 14*e + 6, -8*e + 26, 9*e - 17, 9*e + 29, 9*e + 9, 2*e + 18, 6*e + 30, -4*e, -10*e + 14] hecke_eigenvalues = {} for i in range(len(hecke_eigenvalues_array)): hecke_eigenvalues[primes[i]] = hecke_eigenvalues_array[i] AL_eigenvalues = {} AL_eigenvalues[ZF.ideal([2, 2, -w + 6])] = 1 AL_eigenvalues[ZF.ideal([7, 7, 6*w - 35])] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]