/* 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([-123, 0, 1]) F. = NumberField(g) ZF = F.ring_of_integers() NN = ZF.ideal([2, 2, -w - 11]) primes_array = [ [2, 2, -w - 11],\ [3, 3, w],\ [7, 7, w + 2],\ [7, 7, w + 5],\ [17, 17, w + 2],\ [17, 17, w + 15],\ [19, 19, w + 3],\ [19, 19, w + 16],\ [23, 23, -w - 10],\ [23, 23, w - 10],\ [25, 5, -5],\ [29, 29, w + 6],\ [29, 29, w + 23],\ [37, 37, 9*w + 100],\ [37, 37, -2*w - 23],\ [41, 41, w],\ [53, 53, w + 21],\ [53, 53, w + 32],\ [59, 59, -w - 8],\ [59, 59, w - 8],\ [61, 61, 6*w + 67],\ [61, 61, -5*w - 56],\ [67, 67, w + 18],\ [67, 67, w + 49],\ [73, 73, -w - 14],\ [73, 73, w - 14],\ [79, 79, w + 26],\ [79, 79, w + 53],\ [83, 83, 14*w + 155],\ [83, 83, 3*w + 32],\ [89, 89, w + 37],\ [89, 89, w + 52],\ [101, 101, w + 27],\ [101, 101, w + 74],\ [107, 107, -w - 4],\ [107, 107, w - 4],\ [121, 11, -11],\ [131, 131, 2*w - 19],\ [131, 131, -2*w - 19],\ [137, 137, w + 64],\ [137, 137, w + 73],\ [149, 149, w + 47],\ [149, 149, w + 102],\ [151, 151, w + 24],\ [151, 151, w + 127],\ [169, 13, -13],\ [199, 199, w + 83],\ [199, 199, w + 116],\ [211, 211, w + 40],\ [211, 211, w + 171],\ [233, 233, w + 39],\ [233, 233, w + 194],\ [241, 241, -4*w - 47],\ [241, 241, 29*w + 322],\ [251, 251, 18*w + 199],\ [251, 251, 7*w + 76],\ [257, 257, w + 61],\ [257, 257, w + 196],\ [277, 277, -w - 20],\ [277, 277, w - 20],\ [281, 281, w + 70],\ [281, 281, w + 211],\ [293, 293, w + 65],\ [293, 293, w + 228],\ [317, 317, w + 45],\ [317, 317, w + 272],\ [331, 331, w + 139],\ [331, 331, w + 192],\ [337, 337, -3*w - 38],\ [337, 337, 3*w - 38],\ [349, 349, 2*w - 29],\ [349, 349, -2*w - 29],\ [359, 359, 20*w + 221],\ [359, 359, 9*w + 98],\ [373, 373, -7*w - 80],\ [373, 373, 26*w + 289],\ [409, 409, 25*w + 278],\ [409, 409, -8*w - 91],\ [419, 419, 21*w + 232],\ [419, 419, 10*w + 109],\ [431, 431, 3*w - 26],\ [431, 431, -3*w - 26],\ [433, 433, -51*w - 566],\ [433, 433, 4*w + 49],\ [439, 439, w + 92],\ [439, 439, w + 347],\ [443, 443, 2*w - 7],\ [443, 443, -2*w - 7],\ [463, 463, w + 58],\ [463, 463, w + 405],\ [467, 467, 2*w - 5],\ [467, 467, -2*w - 5],\ [491, 491, 2*w - 1],\ [491, 491, -2*w - 1],\ [499, 499, w + 98],\ [499, 499, w + 401],\ [509, 509, w + 122],\ [509, 509, w + 387],\ [521, 521, w + 57],\ [521, 521, w + 464],\ [541, 541, 19*w + 212],\ [541, 541, -14*w - 157],\ [547, 547, w + 42],\ [547, 547, w + 505],\ [557, 557, w + 89],\ [557, 557, w + 468],\ [571, 571, w + 252],\ [571, 571, w + 319],\ [593, 593, w + 230],\ [593, 593, w + 363],\ [599, 599, -4*w - 37],\ [599, 599, 4*w - 37],\ [613, 613, -6*w - 71],\ [613, 613, 49*w + 544],\ [641, 641, w + 63],\ [641, 641, w + 578],\ [643, 643, w + 68],\ [643, 643, w + 575],\ [647, 647, 41*w + 454],\ [647, 647, 8*w + 85],\ [653, 653, w + 164],\ [653, 653, w + 489],\ [661, 661, -w - 28],\ [661, 661, w - 28],\ [691, 691, w + 309],\ [691, 691, w + 382],\ [727, 727, w + 48],\ [727, 727, w + 679],\ [733, 733, 2*w - 35],\ [733, 733, -2*w - 35],\ [743, 743, 4*w - 35],\ [743, 743, -4*w - 35],\ [751, 751, w + 209],\ [751, 751, w + 542],\ [769, 769, -5*w - 62],\ [769, 769, 72*w + 799],\ [773, 773, w + 69],\ [773, 773, w + 704],\ [809, 809, w + 107],\ [809, 809, w + 702],\ [823, 823, w + 348],\ [823, 823, w + 475],\ [829, 829, -3*w - 44],\ [829, 829, 3*w - 44],\ [853, 853, 46*w + 511],\ [853, 853, -9*w - 104],\ [863, 863, 27*w + 298],\ [863, 863, 16*w + 175],\ [877, 877, 2*w - 37],\ [877, 877, -2*w - 37],\ [883, 883, w + 130],\ [883, 883, w + 753],\ [911, 911, 3*w - 14],\ [911, 911, -3*w - 14],\ [919, 919, w + 431],\ [919, 919, w + 488],\ [929, 929, w + 353],\ [929, 929, w + 576],\ [947, 947, 83*w + 920],\ [947, 947, 6*w + 59],\ [961, 31, -31],\ [967, 967, w + 136],\ [967, 967, w + 831],\ [977, 977, w + 193],\ [977, 977, w + 784],\ [983, 983, -8*w - 83],\ [983, 983, 8*w - 83],\ [991, 991, w + 426],\ [991, 991, w + 565]] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [-1, 1, -3, 2, 3, -2, -5, 0, 1, 6, -4, 0, -10, 8, -2, -8, 4, 9, 10, 0, 7, -8, 2, 2, -11, 9, 5, 0, 6, 16, 0, 0, 12, -3, -3, 17, -3, -7, 3, 8, 18, 0, -15, -17, 8, -20, 10, 20, -2, 8, 9, -11, 22, -3, 18, 18, -22, -7, 28, -2, -18, 22, 14, 9, 18, 18, 18, -32, 18, -2, 35, 20, 20, 20, -6, -11, -5, 10, -15, 35, 3, -22, 4, 4, 0, 15, -4, 6, 26, -9, -3, 7, 18, -2, 10, 10, -15, 20, -28, 2, 22, -33, 22, -8, 23, -12, -32, 18, -6, -46, 10, -15, 24, -11, -23, 2, -19, -29, -28, 32, -11, -36, -48, 47, -42, 8, -43, -38, -11, 44, -4, 21, 33, 38, 20, 0, 14, -26, 0, 30, 46, -9, 20, 25, -26, -11, 36, -24, 58, 38, -14, 6, -22, 28, 0, 15, -15, -45, -48, 12, 12, -8, -48, 48, -42, -14, -9, 8, 18] 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 - 11])] = 1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]