/* 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([-3, -7, 0, 1]) F. = NumberField(g) ZF = F.ring_of_integers() NN = ZF.ideal([3, 3, w + 1]) primes_array = [ [3, 3, w],\ [3, 3, w + 1],\ [3, 3, w + 2],\ [8, 2, 2],\ [11, 11, -w^2 + 5],\ [13, 13, w^2 - w - 7],\ [17, 17, -w^2 + w + 4],\ [19, 19, -w^2 - w + 4],\ [29, 29, 2*w^2 - 2*w - 11],\ [31, 31, w^2 - 2*w - 4],\ [37, 37, -2*w^2 + 3*w + 7],\ [41, 41, w^2 - 2],\ [59, 59, 2*w^2 - 13],\ [61, 61, w^2 + w - 10],\ [67, 67, 2*w^2 - w - 11],\ [73, 73, -w^2 - 1],\ [83, 83, w^2 - w - 10],\ [89, 89, -w^2 + 4*w - 2],\ [97, 97, w^2 - 2*w - 7],\ [97, 97, -w^2 - 4*w - 5],\ [97, 97, 2*w^2 + w - 8],\ [101, 101, -4*w^2 + 2*w + 25],\ [103, 103, w^2 + w - 7],\ [107, 107, -3*w - 4],\ [109, 109, 5*w^2 - 3*w - 31],\ [121, 11, 2*w^2 - 3*w - 4],\ [125, 5, -5],\ [137, 137, -5*w^2 + 3*w + 34],\ [139, 139, w^2 + 2*w - 4],\ [151, 151, 3*w^2 - 23],\ [151, 151, w^2 - 3*w - 5],\ [151, 151, 3*w^2 - 3*w - 17],\ [157, 157, 4*w^2 - 9*w - 8],\ [157, 157, w^2 + 3*w - 2],\ [157, 157, 2*w^2 - w - 2],\ [167, 167, 2*w^2 + w - 11],\ [167, 167, -w^2 + 11],\ [167, 167, -3*w^2 + 19],\ [169, 13, w^2 - 4*w - 4],\ [173, 173, 2*w^2 - 3*w - 10],\ [179, 179, -3*w + 7],\ [191, 191, -w^2 + 5*w - 5],\ [193, 193, -w^2 + w - 2],\ [199, 199, 3*w - 2],\ [211, 211, w^2 - 3*w - 11],\ [223, 223, 3*w^2 - 20],\ [223, 223, w^2 - 5*w - 4],\ [223, 223, 2*w^2 - w - 8],\ [229, 229, 4*w^2 - 3*w - 26],\ [229, 229, 2*w^2 + w - 20],\ [229, 229, 2*w^2 - 2*w - 5],\ [239, 239, -6*w^2 + 3*w + 38],\ [241, 241, -w^2 + 4*w - 5],\ [257, 257, -2*w^2 + 5*w - 1],\ [263, 263, -2*w^2 - w + 17],\ [269, 269, -w^2 - w + 13],\ [269, 269, 3*w - 4],\ [269, 269, -4*w^2 + w + 31],\ [271, 271, 2*w^2 - 7],\ [271, 271, 3*w - 5],\ [271, 271, w^2 - 3*w - 8],\ [289, 17, 2*w^2 + w - 5],\ [307, 307, 2*w^2 - w - 5],\ [311, 311, 3*w^2 - 3*w - 19],\ [311, 311, -7*w^2 + 13*w + 19],\ [311, 311, w^2 - 2*w - 13],\ [313, 313, w^2 + 2*w - 7],\ [317, 317, -5*w^2 + w + 35],\ [331, 331, -w^2 + 3*w - 4],\ [337, 337, 3*w^2 - 3*w - 13],\ [343, 7, -7],\ [347, 347, 2*w^2 - 3*w - 13],\ [349, 349, 3*w^2 - 3*w - 20],\ [359, 359, -w^2 + 5*w - 2],\ [361, 19, -2*w^2 + 7*w - 1],\ [389, 389, -2*w^2 + w - 1],\ [397, 397, w^2 - 6*w + 10],\ [401, 401, 6*w^2 - 3*w - 44],\ [419, 419, -3*w^2 + 6*w + 10],\ [419, 419, 4*w^2 - 2*w - 31],\ [419, 419, -4*w^2 + 4*w + 19],\ [421, 421, 6*w^2 - 12*w - 13],\ [431, 431, 4*w^2 - 7*w - 10],\ [433, 433, w^2 - 4*w - 7],\ [443, 443, 2*w^2 + 4*w - 5],\ [443, 443, 5*w^2 - 11*w - 11],\ [443, 443, 3*w^2 - 14],\ [449, 449, -2*w^2 + 2*w - 1],\ [457, 457, w^2 - 6*w - 5],\ [457, 457, w^2 + 3*w - 5],\ [457, 457, 6*w^2 - 3*w - 37],\ [463, 463, w^2 + 5*w - 1],\ [467, 467, w^2 - w - 13],\ [479, 479, 5*w^2 - 9*w - 16],\ [487, 487, -6*w - 5],\ [499, 499, 3*w^2 - 3*w - 4],\ [499, 499, 3*w^2 + 3*w - 1],\ [499, 499, w^2 - 5*w + 8],\ [503, 503, 4*w^2 - 5*w - 16],\ [509, 509, 2*w^2 - 5*w - 8],\ [521, 521, 4*w^2 - w - 22],\ [523, 523, w^2 - 5*w - 16],\ [547, 547, 5*w^2 - 2*w - 38],\ [547, 547, 8*w^2 - 3*w - 58],\ [547, 547, 4*w^2 - 29],\ [557, 557, 7*w^2 - 4*w - 43],\ [557, 557, 3*w - 11],\ [557, 557, 2*w^2 - 4*w - 11],\ [569, 569, 5*w^2 - 4*w - 32],\ [569, 569, 3*w^2 - 3*w - 11],\ [569, 569, w^2 + 2*w - 16],\ [571, 571, w^2 - 4*w - 10],\ [593, 593, 2*w^2 - 6*w - 7],\ [601, 601, -w^2 - 3*w + 14],\ [607, 607, 3*w^2 + 3*w - 7],\ [619, 619, 3*w^2 - 6*w - 11],\ [631, 631, -w^2 - w - 5],\ [641, 641, 3*w^2 - 3*w - 5],\ [647, 647, -w^2 + 6*w - 1],\ [653, 653, -5*w^2 + 4*w + 35],\ [661, 661, 3*w^2 - 3*w - 10],\ [673, 673, w^2 + 4*w - 4],\ [677, 677, 5*w^2 - 6*w - 25],\ [677, 677, w^2 - 14],\ [677, 677, 4*w^2 - 3*w - 20],\ [691, 691, 5*w^2 - 2*w - 29],\ [701, 701, 5*w^2 - 10*w - 14],\ [719, 719, -3*w - 11],\ [727, 727, -2*w^2 + 9*w - 8],\ [733, 733, -w^2 - 4*w - 8],\ [739, 739, w^2 + 3*w - 8],\ [743, 743, 2*w^2 - 4*w - 17],\ [757, 757, -w^2 + w - 5],\ [769, 769, 3*w^2 - 3*w - 7],\ [769, 769, -w^2 - 3*w - 7],\ [769, 769, 5*w^2 - 3*w - 28],\ [773, 773, 7*w^2 - 6*w - 38],\ [787, 787, 2*w^2 - w - 20],\ [797, 797, -5*w^2 + 14*w - 1],\ [821, 821, -w^2 + 6*w - 4],\ [823, 823, 7*w^2 - 6*w - 41],\ [839, 839, 4*w^2 - 6*w - 11],\ [841, 29, 5*w^2 - 4*w - 26],\ [857, 857, 3*w^2 - 11],\ [863, 863, 2*w^2 + 2*w - 17],\ [881, 881, 5*w^2 - 5*w - 29],\ [883, 883, -4*w^2 + 8*w + 13],\ [907, 907, 4*w^2 - 9*w - 11],\ [911, 911, 2*w^2 + 3*w - 10],\ [947, 947, 2*w^2 + 5*w - 5],\ [953, 953, 2*w^2 - 5*w - 11],\ [961, 31, w^2 - 5*w - 13],\ [967, 967, 2*w^2 - 3*w - 22],\ [967, 967, 5*w^2 - 9*w - 10],\ [967, 967, 3*w^2 - 10],\ [977, 977, 5*w^2 - 37],\ [983, 983, 7*w^2 - 5*w - 40],\ [997, 997, -7*w^2 + 5*w + 49]] primes = [ZF.ideal(I) for I in primes_array] heckePol = x^2 - 5 K. = NumberField(heckePol) hecke_eigenvalues_array = [e, 1, -1/2*e + 1/2, -3/2*e - 3/2, 1/2*e + 9/2, 3, -e, 1/2*e + 3/2, 3/2*e - 7/2, -1, 3/2*e + 9/2, 5/2*e + 9/2, -1/2*e + 3/2, -e, e + 9, 3/2*e + 15/2, -6*e - 2, 4*e - 3, -3*e - 11, -1, -6*e + 1, 6*e + 1, -5/2*e - 3/2, e - 6, -11, 1, -5/2*e - 3/2, -3*e - 4, 6*e - 5, 3*e - 3, -4*e + 3, 6*e + 7, -6*e + 6, -3*e - 6, -15/2*e - 9/2, 7/2*e - 33/2, 9/2*e + 3/2, -3/2*e - 37/2, -5*e + 3, -9/2*e - 23/2, -15/2*e + 13/2, -17, 6*e - 6, -9/2*e - 15/2, 6*e + 12, 15, -18, -1/2*e + 45/2, e + 6, -7/2*e + 15/2, -3/2*e + 43/2, 3*e - 14, -6*e - 9, 9/2*e + 29/2, 11/2*e - 33/2, 2*e - 24, -15/2*e + 17/2, -3/2*e + 13/2, -9/2*e - 25/2, 4*e + 3, -5/2*e + 3/2, 3*e - 8, 7*e - 6, -1/2*e - 21/2, -11/2*e - 3/2, -5*e - 9, 3*e + 16, -15/2*e + 25/2, -12*e + 6, 6*e + 6, -3/2*e - 37/2, -12*e, -21/2*e + 25/2, 9/2*e - 31/2, -3/2*e + 21/2, -9/2*e - 9/2, 7*e + 18, 3*e - 6, e + 9, 17/2*e - 9/2, -e + 6, 8*e - 6, 5/2*e - 3/2, 11/2*e + 21/2, 1/2*e + 15/2, -6*e + 6, 3/2*e + 51/2, 12*e - 5, -7/2*e + 9/2, 3/2*e - 9/2, -13/2*e - 33/2, 9*e + 10, 15/2*e - 15/2, 9/2*e - 33/2, 3*e + 3, 15*e, 12*e + 12, 3*e - 18, 21/2*e + 33/2, 15/2*e + 3/2, 11*e - 6, -21/2*e + 21/2, e - 6, 11/2*e + 51/2, 9/2*e + 59/2, 21/2*e + 9/2, -11/2*e + 27/2, 3*e + 18, -15*e + 3, -15*e - 8, -21/2*e - 19/2, 1/2*e - 15/2, -3*e + 12, -12*e - 10, 3, 9*e - 10, 27/2*e + 23/2, -9/2*e + 11/2, -19/2*e - 3/2, -10*e + 12, 9*e - 12, 8*e - 18, 3/2*e + 79/2, 9*e - 18, 5/2*e + 27/2, -27/2*e + 7/2, -4*e + 36, 2*e - 3, 9/2*e - 21/2, 3/2*e + 15/2, -21/2*e - 9/2, 3*e - 27, -3*e, 21/2*e - 51/2, -3/2*e - 87/2, 9*e - 25, -4*e + 9, -33/2*e + 3/2, 15/2*e + 7/2, -14*e - 24, -3*e, -29/2*e + 3/2, -21/2*e + 63/2, 9*e + 30, 27/2*e - 19/2, 18*e + 7, 18*e + 9, -6*e - 3, 10*e + 3, 9/2*e + 1/2, 3/2*e - 73/2, -15*e + 10, 4*e - 27, 22, -33, 19/2*e - 45/2, -9*e - 25, 15/2*e + 33/2] 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 + 1])] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]