/* 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([-12, -11, 0, 1]) F. = NumberField(g) ZF = F.ring_of_integers() NN = ZF.ideal([9, 9, -2*w - 3]) primes_array = [ [2, 2, -w - 2],\ [2, 2, w + 1],\ [3, 3, w^2 - w - 9],\ [9, 3, -w^2 + 3*w + 5],\ [11, 11, -w^2 + w + 11],\ [13, 13, 2*w^2 - 4*w - 13],\ [23, 23, -w^2 + w + 7],\ [29, 29, -w^2 - w + 1],\ [41, 41, -2*w^2 + 2*w + 19],\ [41, 41, w^2 - 3*w - 7],\ [41, 41, w^2 - w - 5],\ [47, 47, 3*w^2 - 7*w - 17],\ [53, 53, -2*w - 1],\ [61, 61, -2*w + 7],\ [67, 67, 3*w^2 - 5*w - 23],\ [67, 67, 2*w^2 - 4*w - 11],\ [67, 67, 3*w^2 - 7*w - 13],\ [79, 79, w^2 + w - 5],\ [89, 89, 5*w^2 - 7*w - 47],\ [97, 97, 5*w^2 - 11*w - 29],\ [103, 103, -3*w^2 + 5*w + 25],\ [103, 103, 2*w^2 - 6*w - 5],\ [103, 103, -7*w^2 + 9*w + 67],\ [107, 107, w^2 - 3*w - 1],\ [109, 109, -5*w^2 + 7*w + 49],\ [113, 113, w^2 - w - 13],\ [121, 11, 9*w^2 - 13*w - 79],\ [125, 5, -5],\ [127, 127, -4*w^2 + 4*w + 41],\ [131, 131, 2*w + 7],\ [137, 137, -2*w^2 + 4*w + 7],\ [139, 139, -3*w^2 + 3*w + 29],\ [139, 139, w^2 - w - 1],\ [139, 139, 2*w - 1],\ [151, 151, -9*w^2 + 11*w + 85],\ [157, 157, 8*w^2 - 10*w - 73],\ [163, 163, -2*w^2 + 2*w + 7],\ [163, 163, 4*w^2 - 10*w - 17],\ [163, 163, -6*w - 7],\ [167, 167, 2*w^2 - 4*w - 17],\ [167, 167, -4*w^2 + 6*w + 37],\ [167, 167, -2*w^2 + 2*w + 5],\ [169, 13, -6*w^2 + 14*w + 29],\ [179, 179, -w^2 - 3*w + 1],\ [179, 179, 6*w^2 - 14*w - 31],\ [179, 179, -3*w^2 + 5*w + 29],\ [191, 191, -2*w + 5],\ [197, 197, 2*w^2 - 4*w - 19],\ [211, 211, -w^2 - w + 17],\ [211, 211, -2*w^2 + 2*w + 23],\ [211, 211, -5*w^2 + 7*w + 43],\ [241, 241, 2*w^2 - 2*w - 13],\ [241, 241, 3*w^2 - 7*w - 19],\ [241, 241, w^2 + w - 7],\ [257, 257, -4*w^2 + 8*w + 25],\ [269, 269, -2*w^2 + 29],\ [277, 277, 6*w^2 - 16*w - 29],\ [283, 283, 4*w^2 - 4*w - 37],\ [293, 293, -2*w^2 + 5],\ [307, 307, w^2 - 5*w - 17],\ [313, 313, 2*w^2 + 2*w - 5],\ [317, 317, 12*w^2 - 16*w - 109],\ [317, 317, w^2 + 3*w + 5],\ [317, 317, 3*w^2 - 5*w - 13],\ [331, 331, 6*w^2 - 8*w - 59],\ [337, 337, -5*w^2 + 5*w + 53],\ [343, 7, -7],\ [347, 347, 3*w^2 - 3*w - 23],\ [347, 347, -4*w^2 + 4*w + 43],\ [347, 347, -3*w^2 + w + 7],\ [349, 349, -w^2 + 5*w + 11],\ [353, 353, -5*w^2 + 11*w + 31],\ [359, 359, 6*w + 13],\ [359, 359, -13*w^2 + 17*w + 119],\ [367, 367, 2*w^2 - 8*w + 1],\ [373, 373, -4*w^2 + 10*w + 23],\ [379, 379, -11*w^2 + 15*w + 101],\ [383, 383, -3*w^2 + 9*w + 11],\ [397, 397, -5*w^2 + 11*w + 25],\ [401, 401, w^2 - 5*w - 5],\ [419, 419, -4*w^2 + 8*w + 19],\ [421, 421, 3*w^2 - 9*w - 13],\ [431, 431, 3*w^2 - 5*w - 19],\ [433, 433, 6*w + 11],\ [433, 433, -7*w^2 + 11*w + 59],\ [433, 433, -w^2 + w - 1],\ [439, 439, -6*w^2 + 12*w + 41],\ [467, 467, 12*w^2 - 16*w - 115],\ [479, 479, 4*w^2 - 8*w - 23],\ [487, 487, w^2 - 5*w - 13],\ [491, 491, 2*w^2 - 4*w - 5],\ [503, 503, -3*w^2 + w + 19],\ [523, 523, -6*w^2 + 10*w + 49],\ [529, 23, 3*w^2 - 5*w - 17],\ [541, 541, w^2 + 7*w + 13],\ [541, 541, -4*w^2 + 12*w + 13],\ [541, 541, w^2 + w - 11],\ [547, 547, 7*w^2 - 19*w - 37],\ [563, 563, -5*w^2 + 9*w + 35],\ [569, 569, -3*w^2 + 9*w + 19],\ [577, 577, -10*w^2 + 14*w + 91],\ [593, 593, -4*w - 1],\ [599, 599, -6*w^2 + 6*w + 61],\ [613, 613, 5*w^2 - 7*w - 41],\ [613, 613, -3*w^2 - w + 5],\ [613, 613, 2*w^2 - 2*w - 25],\ [617, 617, -5*w^2 + 5*w + 47],\ [631, 631, w^2 - 7*w - 13],\ [647, 647, w^2 - 5*w + 1],\ [659, 659, 3*w^2 - w - 5],\ [661, 661, 5*w^2 - 5*w - 41],\ [661, 661, -w^2 - 7*w - 5],\ [661, 661, 8*w^2 - 18*w - 47],\ [673, 673, w^2 + 5*w + 1],\ [677, 677, 4*w + 13],\ [683, 683, -2*w^2 - 4*w + 5],\ [691, 691, -8*w^2 + 10*w + 71],\ [691, 691, 2*w^2 - 6*w - 17],\ [691, 691, 2*w^2 - 8*w - 11],\ [701, 701, w^2 - 5*w - 1],\ [709, 709, w^2 - 7*w + 13],\ [719, 719, 4*w^2 - 6*w - 13],\ [727, 727, 2*w^2 - 17],\ [743, 743, -4*w^2 + 4*w + 31],\ [751, 751, 2*w - 11],\ [757, 757, -7*w^2 + 9*w + 61],\ [761, 761, -13*w^2 + 15*w + 127],\ [773, 773, w^2 - w - 17],\ [773, 773, 5*w^2 - 13*w - 19],\ [773, 773, -6*w - 17],\ [787, 787, 4*w^2 - 12*w - 19],\ [797, 797, -18*w^2 + 22*w + 167],\ [797, 797, -3*w^2 + 7*w + 23],\ [797, 797, -11*w^2 + 13*w + 103],\ [811, 811, 4*w^2 - 10*w - 25],\ [811, 811, 8*w + 13],\ [811, 811, -8*w^2 + 10*w + 79],\ [821, 821, 3*w^2 - 3*w - 7],\ [839, 839, -9*w^2 + 19*w + 55],\ [841, 29, 9*w^2 - 13*w - 77],\ [857, 857, 2*w^2 + 2*w - 35],\ [859, 859, -4*w + 13],\ [877, 877, 2*w^2 - 6*w - 23],\ [881, 881, w^2 - 7*w + 11],\ [883, 883, 3*w^2 - w - 37],\ [887, 887, 3*w^2 - 3*w - 35],\ [907, 907, w^2 - 5*w + 7],\ [907, 907, -w^2 + 11*w + 17],\ [907, 907, -8*w^2 + 12*w + 77],\ [911, 911, 8*w + 17],\ [929, 929, 2*w^2 + 2*w - 11],\ [937, 937, 3*w^2 - 11*w - 17],\ [937, 937, -8*w^2 + 12*w + 71],\ [937, 937, 3*w^2 - w - 17],\ [941, 941, 3*w^2 + w - 13],\ [947, 947, -7*w^2 + 19*w + 31],\ [971, 971, 2*w^2 + 8*w + 11],\ [977, 977, 13*w^2 - 17*w - 125],\ [983, 983, 11*w^2 - 15*w - 107],\ [983, 983, -5*w^2 + 13*w + 29],\ [983, 983, 2*w^2 - 8*w - 17],\ [991, 991, -21*w^2 + 25*w + 191],\ [997, 997, 3*w^2 - 3*w - 13]] primes = [ZF.ideal(I) for I in primes_array] heckePol = x^4 - 5*x^2 + 5 K. = NumberField(heckePol) hecke_eigenvalues_array = [-e^2 + 2, e, 0, e, e^2 - 5, -2*e^3 + 5*e, -e^3 + 4*e, 3*e^3 - 12*e, -4*e, e^2, -4*e^3 + 12*e, -2, 7*e^3 - 18*e, 3*e^3 - 9*e, -4*e^3 + 7*e, -e^3 + 4*e, -2*e^2 + 3, 7*e^3 - 21*e, 4*e^2 - 15, -4*e^3 + 15*e, 8*e^2 - 16, 3*e^2 - 19, -14*e^2 + 31, -8*e^2 + 17, -4*e^2 + 20, 9*e^2 - 16, -2*e^2 + 3, 6*e^2 - 23, 2*e^3 - 3*e, -10*e^2 + 20, -12*e^2 + 23, -e^3 + 4*e, 7*e^2 - 25, -e^3 + 10*e, 6*e^3 - 26*e, -11*e^3 + 36*e, 2*e^3 + 2*e, -14*e^2 + 29, 8*e^3 - 22*e, e^2 - 2, -10*e^2 + 23, 13*e^2 - 42, e^3 - 14*e, 3*e^3 - 3*e, 5*e^3 - 13*e, -15*e^2 + 35, 5*e^3 - 22*e, -13*e^2 + 33, e^3 - 14*e, 6*e^2 - 35, 11*e^3 - 37*e, e^3, -3*e^2 + 15, 3*e^3 - 6*e, -11*e^3 + 28*e, 11*e^2 - 41, -7*e^3 + 16*e, -2*e^3 + 13*e, -e^3 + 6*e, -18, 17*e^3 - 49*e, 4*e^3 - 8*e, 17*e^2 - 32, -e^3 + 6*e, 17*e^2 - 52, e^2 - 7, -10*e^2 + 9, 4*e^3 - 27*e, 3*e^2 - 13, -17*e^3 + 52*e, e^2 + 15, e^2 - 6, -2*e^2 + 24, -9*e^3 + 16*e, e^3 + 13*e, 8*e^2 - 34, e^2 - 31, -17*e^3 + 49*e, 8*e^3 - 34*e, 8*e^3 - 14*e, -9*e^3 + 26*e, -14*e^3 + 31*e, -e^3 + e, -14*e^2 + 19, 3*e^2 - 11, -6*e^2 + 9, 0, 5*e^2 - 28, -16*e^3 + 47*e, 5*e^2 - 18, 2*e^2 - 17, 12*e^3 - 26*e, 24*e^2 - 61, -5*e^3 + 3*e, -18*e^2 + 40, 10*e^3 - 50*e, -5*e^3 + 4*e, 13*e^2 - 13, e^3 - 4*e, 36*e^2 - 85, e^2 + 22, -10*e^3 + 49*e, -3*e^3 - 8*e, -2*e^3 + 20*e, 18*e^3 - 49*e, -9*e^2 + 31, 15*e^3 - 41*e, 15*e^2 - 55, 6*e^3 - 25*e, -8*e^2 + 9, -2*e^3 - 10*e, -5*e^3 + 34*e, 16*e^2 - 40, -8*e^3 + 40*e, 15*e^2 - 17, 9*e^3 - 52*e, -11*e^3 + 34*e, 31*e^2 - 85, -8*e^3 + 37*e, -8*e^3 + 21*e, -27*e^2 + 75, 20*e^2 - 71, -16*e^3 + 42*e, -13*e^3 + 40*e, 31*e^2 - 90, 17*e^3 - 41*e, 28*e^3 - 85*e, 15*e^2 - 51, -4*e^2 + 39, 19, -24*e^3 + 65*e, -4*e^3 + 21*e, -8*e^2 + 37, -16*e^3 + 56*e, 14*e^2 - 22, -19*e^2 + 35, 13*e^2 - 65, -13*e^2 + 28, -12*e^3 + 53*e, -13*e^3 + 64*e, -7*e^3 + 15*e, 21*e^3 - 49*e, -22*e^2 + 47, 4*e^3 - 25*e, e^3 + 10*e, -12*e^2 - 12, -28*e^2 + 83, 7*e^2 + 8, 30*e^2 - 63, 30*e^2 - 78, -16*e^3 + 62*e, 19*e^3 - 47*e, -14*e^2 + 27, 3*e^3 - 10*e, -6*e^3 + 52*e, 20*e^3 - 66*e, -21*e^2 + 20, -33*e^2 + 97, 21*e^2 - 19, 3*e^2 + 26, -18*e^2 + 21, -20*e^3 + 52*e, 3*e^3 - 6*e] hecke_eigenvalues = {} for i in range(len(hecke_eigenvalues_array)): hecke_eigenvalues[primes[i]] = hecke_eigenvalues_array[i] AL_eigenvalues = {} AL_eigenvalues[ZF.ideal([3, 3, w^2 - w - 9])] = 1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]