/* 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([-39, -1, 1]) F. = NumberField(g) ZF = F.ring_of_integers() NN = ZF.ideal([4, 2, 2]) primes_array = [ [3, 3, w + 6],\ [3, 3, -w + 7],\ [4, 2, 2],\ [11, 11, -3*w - 17],\ [11, 11, 3*w - 20],\ [13, 13, 2*w - 13],\ [13, 13, 2*w + 11],\ [17, 17, w + 7],\ [17, 17, -w + 8],\ [19, 19, -w - 4],\ [19, 19, -w + 5],\ [25, 5, 5],\ [31, 31, -6*w - 35],\ [31, 31, -6*w + 41],\ [37, 37, -w - 1],\ [37, 37, w - 2],\ [47, 47, 3*w + 16],\ [47, 47, -3*w + 19],\ [49, 7, -7],\ [67, 67, 3*w - 22],\ [67, 67, -3*w - 19],\ [71, 71, -w - 10],\ [71, 71, w - 11],\ [89, 89, -8*w - 47],\ [89, 89, 8*w - 55],\ [101, 101, 4*w - 29],\ [101, 101, -4*w - 25],\ [109, 109, -3*w - 20],\ [109, 109, 3*w - 23],\ [113, 113, 3*w - 17],\ [113, 113, -3*w - 14],\ [127, 127, -9*w - 53],\ [127, 127, 9*w - 62],\ [157, 157, 2*w - 1],\ [167, 167, 2*w - 19],\ [167, 167, -2*w - 17],\ [173, 173, 13*w - 89],\ [173, 173, -13*w - 76],\ [193, 193, 11*w - 73],\ [193, 193, -11*w - 62],\ [197, 197, 3*w - 14],\ [197, 197, -3*w - 11],\ [199, 199, 3*w - 25],\ [199, 199, -3*w - 22],\ [233, 233, -w - 16],\ [233, 233, w - 17],\ [239, 239, 7*w - 50],\ [239, 239, -7*w - 43],\ [257, 257, 6*w + 31],\ [257, 257, -6*w + 37],\ [263, 263, 3*w - 11],\ [263, 263, -3*w - 8],\ [277, 277, -12*w - 71],\ [277, 277, 12*w - 83],\ [281, 281, -3*w - 7],\ [281, 281, 3*w - 10],\ [283, 283, -7*w + 44],\ [283, 283, 7*w + 37],\ [311, 311, 3*w - 8],\ [311, 311, -3*w - 5],\ [313, 313, -13*w - 73],\ [313, 313, 13*w - 86],\ [317, 317, -9*w + 58],\ [317, 317, 9*w + 49],\ [331, 331, -5*w - 23],\ [331, 331, 5*w - 28],\ [347, 347, -3*w - 1],\ [347, 347, 3*w - 4],\ [349, 349, 3*w - 28],\ [349, 349, -3*w - 25],\ [353, 353, 3*w - 2],\ [353, 353, 3*w - 1],\ [389, 389, 6*w - 35],\ [389, 389, 6*w + 29],\ [419, 419, 2*w - 25],\ [419, 419, -2*w - 23],\ [431, 431, 10*w - 71],\ [431, 431, -10*w - 61],\ [457, 457, 27*w + 157],\ [457, 457, 27*w - 184],\ [461, 461, -4*w - 31],\ [461, 461, 4*w - 35],\ [467, 467, -w - 22],\ [467, 467, w - 23],\ [487, 487, 8*w + 41],\ [487, 487, -8*w + 49],\ [523, 523, -6*w - 41],\ [523, 523, 6*w - 47],\ [529, 23, -23],\ [547, 547, 4*w - 11],\ [547, 547, -4*w - 7],\ [557, 557, 28*w - 191],\ [557, 557, -28*w - 163],\ [571, 571, 20*w - 133],\ [571, 571, -20*w - 113],\ [577, 577, -3*w - 29],\ [577, 577, 3*w - 32],\ [593, 593, 19*w - 131],\ [593, 593, -19*w - 112],\ [601, 601, 5*w - 22],\ [601, 601, -5*w - 17],\ [617, 617, -18*w - 101],\ [617, 617, 18*w - 119],\ [619, 619, -4*w - 1],\ [619, 619, 4*w - 5],\ [631, 631, 17*w - 112],\ [631, 631, -17*w - 95],\ [641, 641, 15*w + 83],\ [641, 641, 15*w - 98],\ [647, 647, -17*w - 101],\ [647, 647, 17*w - 118],\ [653, 653, -11*w - 68],\ [653, 653, 11*w - 79],\ [659, 659, 5*w - 43],\ [659, 659, -5*w - 38],\ [661, 661, -25*w - 142],\ [661, 661, 25*w - 167],\ [677, 677, 13*w - 92],\ [677, 677, -13*w - 79],\ [709, 709, 5*w - 19],\ [709, 709, -5*w - 14],\ [727, 727, -9*w - 58],\ [727, 727, 9*w - 67],\ [733, 733, 7*w - 38],\ [733, 733, -7*w - 31],\ [739, 739, -18*w - 107],\ [739, 739, 18*w - 125],\ [743, 743, 2*w - 31],\ [743, 743, -2*w - 29],\ [769, 769, -3*w - 32],\ [769, 769, 3*w - 35],\ [773, 773, -w - 28],\ [773, 773, w - 29],\ [797, 797, 21*w - 139],\ [797, 797, -21*w - 118],\ [821, 821, -15*w + 97],\ [821, 821, 15*w + 82],\ [827, 827, 9*w - 53],\ [827, 827, -9*w - 44],\ [829, 829, -19*w - 106],\ [829, 829, 19*w - 125],\ [841, 29, -29],\ [853, 853, 9*w - 68],\ [853, 853, -9*w - 59],\ [907, 907, 3*w - 37],\ [907, 907, -3*w - 34],\ [911, 911, 5*w - 46],\ [911, 911, -5*w - 41],\ [929, 929, -6*w - 19],\ [929, 929, 6*w - 25],\ [941, 941, -20*w - 119],\ [941, 941, 20*w - 139],\ [953, 953, -w - 31],\ [953, 953, w - 32],\ [967, 967, 11*w + 56],\ [967, 967, -11*w + 67],\ [977, 977, 16*w - 113],\ [977, 977, -16*w - 97],\ [991, 991, -8*w - 35],\ [991, 991, 8*w - 43]] primes = [ZF.ideal(I) for I in primes_array] heckePol = x^7 - 3*x^6 - 9*x^5 + 26*x^4 + 16*x^3 - 37*x^2 - 5*x + 2 K. = NumberField(heckePol) hecke_eigenvalues_array = [e, e, -1, e^6 - 10*e^4 - 2*e^3 + 19*e^2 + 4*e - 6, e^6 - 10*e^4 - 2*e^3 + 19*e^2 + 4*e - 6, -e^6 + e^5 + 9*e^4 - 8*e^3 - 12*e^2 + 15*e + 1, -e^6 + e^5 + 9*e^4 - 8*e^3 - 12*e^2 + 15*e + 1, -e^6 + e^5 + 10*e^4 - 8*e^3 - 20*e^2 + 13*e + 5, -e^6 + e^5 + 10*e^4 - 8*e^3 - 20*e^2 + 13*e + 5, -2*e^5 + e^4 + 18*e^3 - 4*e^2 - 24*e, -2*e^5 + e^4 + 18*e^3 - 4*e^2 - 24*e, -2*e^5 + 19*e^3 + 4*e^2 - 29*e, 2*e^6 - 2*e^5 - 18*e^4 + 14*e^3 + 24*e^2 - 16*e, 2*e^6 - 2*e^5 - 18*e^4 + 14*e^3 + 24*e^2 - 16*e, -e^6 + 3*e^5 + 9*e^4 - 26*e^3 - 16*e^2 + 35*e + 3, -e^6 + 3*e^5 + 9*e^4 - 26*e^3 - 16*e^2 + 35*e + 3, 2*e^5 - 18*e^3 - 4*e^2 + 20*e + 6, 2*e^5 - 18*e^3 - 4*e^2 + 20*e + 6, 3*e^5 - e^4 - 28*e^3 + 3*e^2 + 39*e + 7, 2*e^6 - 2*e^5 - 18*e^4 + 14*e^3 + 25*e^2 - 16*e, 2*e^6 - 2*e^5 - 18*e^4 + 14*e^3 + 25*e^2 - 16*e, -2*e^6 + 2*e^5 + 18*e^4 - 14*e^3 - 26*e^2 + 16*e + 6, -2*e^6 + 2*e^5 + 18*e^4 - 14*e^3 - 26*e^2 + 16*e + 6, -e^6 + 2*e^5 + 11*e^4 - 17*e^3 - 28*e^2 + 22*e + 5, -e^6 + 2*e^5 + 11*e^4 - 17*e^3 - 28*e^2 + 22*e + 5, e^6 + 3*e^5 - 11*e^4 - 28*e^3 + 22*e^2 + 31*e - 9, e^6 + 3*e^5 - 11*e^4 - 28*e^3 + 22*e^2 + 31*e - 9, -3*e^6 - e^5 + 27*e^4 + 14*e^3 - 28*e^2 - 11*e - 9, -3*e^6 - e^5 + 27*e^4 + 14*e^3 - 28*e^2 - 11*e - 9, -3*e^6 + e^5 + 27*e^4 - 2*e^3 - 34*e^2 - 7, -3*e^6 + e^5 + 27*e^4 - 2*e^3 - 34*e^2 - 7, -4*e^5 + 36*e^3 + 6*e^2 - 42*e + 2, -4*e^5 + 36*e^3 + 6*e^2 - 42*e + 2, -2*e^6 + 6*e^5 + 18*e^4 - 52*e^3 - 28*e^2 + 74*e - 2, 4*e^5 - 36*e^3 - 10*e^2 + 42*e + 18, 4*e^5 - 36*e^3 - 10*e^2 + 42*e + 18, 6*e^6 - 8*e^5 - 54*e^4 + 60*e^3 + 80*e^2 - 74*e - 10, 6*e^6 - 8*e^5 - 54*e^4 + 60*e^3 + 80*e^2 - 74*e - 10, -4*e^5 + e^4 + 36*e^3 - 48*e + 2, -4*e^5 + e^4 + 36*e^3 - 48*e + 2, 3*e^6 - e^5 - 27*e^4 + 2*e^3 + 32*e^2 + 5*e + 1, 3*e^6 - e^5 - 27*e^4 + 2*e^3 + 32*e^2 + 5*e + 1, 2*e^6 - 4*e^5 - 16*e^4 + 32*e^3 + 14*e^2 - 46*e + 2, 2*e^6 - 4*e^5 - 16*e^4 + 32*e^3 + 14*e^2 - 46*e + 2, e^6 - e^5 - 7*e^4 + 8*e^3 - 5*e^2 - 17*e + 15, e^6 - e^5 - 7*e^4 + 8*e^3 - 5*e^2 - 17*e + 15, -2*e^6 - 2*e^5 + 18*e^4 + 26*e^3 - 18*e^2 - 58*e - 12, -2*e^6 - 2*e^5 + 18*e^4 + 26*e^3 - 18*e^2 - 58*e - 12, -e^6 + 4*e^5 + 6*e^4 - 32*e^3 + 7*e^2 + 32*e - 10, -e^6 + 4*e^5 + 6*e^4 - 32*e^3 + 7*e^2 + 32*e - 10, 2*e^6 - 4*e^5 - 18*e^4 + 32*e^3 + 30*e^2 - 30*e - 12, 2*e^6 - 4*e^5 - 18*e^4 + 32*e^3 + 30*e^2 - 30*e - 12, e^6 + e^5 - 9*e^4 - 12*e^3 + 6*e^2 + 19*e + 13, e^6 + e^5 - 9*e^4 - 12*e^3 + 6*e^2 + 19*e + 13, -3*e^6 + e^5 + 27*e^4 - 2*e^3 - 34*e^2 - 4*e - 3, -3*e^6 + e^5 + 27*e^4 - 2*e^3 - 34*e^2 - 4*e - 3, -4*e^6 + 5*e^5 + 40*e^4 - 39*e^3 - 84*e^2 + 57*e + 20, -4*e^6 + 5*e^5 + 40*e^4 - 39*e^3 - 84*e^2 + 57*e + 20, 2*e^4 + 2*e^3 - 20*e^2 - 14*e + 18, 2*e^4 + 2*e^3 - 20*e^2 - 14*e + 18, 3*e^6 - e^5 - 27*e^4 + 2*e^3 + 30*e^2 + 6*e + 15, 3*e^6 - e^5 - 27*e^4 + 2*e^3 + 30*e^2 + 6*e + 15, e^6 - 3*e^5 - 9*e^4 + 26*e^3 + 12*e^2 - 27*e + 15, e^6 - 3*e^5 - 9*e^4 + 26*e^3 + 12*e^2 - 27*e + 15, -6*e^6 + 9*e^5 + 54*e^4 - 69*e^3 - 80*e^2 + 81*e + 10, -6*e^6 + 9*e^5 + 54*e^4 - 69*e^3 - 80*e^2 + 81*e + 10, 2*e^6 + 2*e^5 - 18*e^4 - 22*e^3 + 15*e^2 + 32*e + 16, 2*e^6 + 2*e^5 - 18*e^4 - 22*e^3 + 15*e^2 + 32*e + 16, -3*e^6 + 7*e^5 + 27*e^4 - 56*e^3 - 46*e^2 + 61*e + 9, -3*e^6 + 7*e^5 + 27*e^4 - 56*e^3 - 46*e^2 + 61*e + 9, 4*e^6 - 6*e^5 - 36*e^4 + 43*e^3 + 56*e^2 - 37*e, 4*e^6 - 6*e^5 - 36*e^4 + 43*e^3 + 56*e^2 - 37*e, 7*e^6 - 5*e^5 - 63*e^4 + 32*e^3 + 84*e^2 - 41*e - 17, 7*e^6 - 5*e^5 - 63*e^4 + 32*e^3 + 84*e^2 - 41*e - 17, -2*e^6 + 2*e^5 + 18*e^4 - 16*e^3 - 28*e^2 + 37*e + 10, -2*e^6 + 2*e^5 + 18*e^4 - 16*e^3 - 28*e^2 + 37*e + 10, 2*e^6 + 2*e^5 - 22*e^4 - 26*e^3 + 54*e^2 + 54*e - 22, 2*e^6 + 2*e^5 - 22*e^4 - 26*e^3 + 54*e^2 + 54*e - 22, -3*e^6 + e^5 + 29*e^4 - 3*e^3 - 48*e^2 - 4*e + 9, -3*e^6 + e^5 + 29*e^4 - 3*e^3 - 48*e^2 - 4*e + 9, e^6 - e^5 - 9*e^4 + 8*e^3 + 14*e^2 - 13*e - 15, e^6 - e^5 - 9*e^4 + 8*e^3 + 14*e^2 - 13*e - 15, 2*e^6 + e^5 - 18*e^4 - 17*e^3 + 24*e^2 + 37*e - 14, 2*e^6 + e^5 - 18*e^4 - 17*e^3 + 24*e^2 + 37*e - 14, -6*e^6 + 54*e^4 + 14*e^3 - 66*e^2 - 26*e + 14, -6*e^6 + 54*e^4 + 14*e^3 - 66*e^2 - 26*e + 14, -3*e^6 + 4*e^5 + 26*e^4 - 26*e^3 - 29*e^2 + 16*e - 26, -3*e^6 + 4*e^5 + 26*e^4 - 26*e^3 - 29*e^2 + 16*e - 26, 9*e^6 - 9*e^5 - 84*e^4 + 64*e^3 + 132*e^2 - 77*e + 11, -7*e^6 + 12*e^5 + 66*e^4 - 98*e^3 - 117*e^2 + 132*e + 22, -7*e^6 + 12*e^5 + 66*e^4 - 98*e^3 - 117*e^2 + 132*e + 22, -2*e^6 - 2*e^5 + 18*e^4 + 26*e^3 - 20*e^2 - 50*e + 6, -2*e^6 - 2*e^5 + 18*e^4 + 26*e^3 - 20*e^2 - 50*e + 6, -2*e^6 + 2*e^5 + 22*e^4 - 13*e^3 - 56*e^2 - e + 26, -2*e^6 + 2*e^5 + 22*e^4 - 13*e^3 - 56*e^2 - e + 26, e^6 - 13*e^5 - 7*e^4 + 116*e^3 + 15*e^2 - 141*e - 9, e^6 - 13*e^5 - 7*e^4 + 116*e^3 + 15*e^2 - 141*e - 9, -e^6 + 3*e^5 + 11*e^4 - 27*e^3 - 28*e^2 + 34*e - 13, -e^6 + 3*e^5 + 11*e^4 - 27*e^3 - 28*e^2 + 34*e - 13, -e^6 - e^5 + 7*e^4 + 13*e^3 + 4*e^2 - 26*e + 3, -e^6 - e^5 + 7*e^4 + 13*e^3 + 4*e^2 - 26*e + 3, 3*e^6 + e^5 - 29*e^4 - 12*e^3 + 41*e^2 + e + 13, 3*e^6 + e^5 - 29*e^4 - 12*e^3 + 41*e^2 + e + 13, 6*e^6 - 11*e^5 - 54*e^4 + 91*e^3 + 80*e^2 - 131*e + 2, 6*e^6 - 11*e^5 - 54*e^4 + 91*e^3 + 80*e^2 - 131*e + 2, -4*e^6 + 2*e^5 + 40*e^4 - 14*e^3 - 78*e^2 + 32*e + 24, -4*e^6 + 2*e^5 + 40*e^4 - 14*e^3 - 78*e^2 + 32*e + 24, 5*e^6 - 42*e^4 - 12*e^3 + 29*e^2 + 20*e + 18, 5*e^6 - 42*e^4 - 12*e^3 + 29*e^2 + 20*e + 18, 2*e^6 + 6*e^5 - 20*e^4 - 62*e^3 + 24*e^2 + 104*e, 2*e^6 + 6*e^5 - 20*e^4 - 62*e^3 + 24*e^2 + 104*e, 4*e^6 - 38*e^4 - 6*e^3 + 52*e^2 + 30, 4*e^6 - 38*e^4 - 6*e^3 + 52*e^2 + 30, -2*e^6 - 10*e^5 + 22*e^4 + 95*e^3 - 28*e^2 - 129*e - 26, -2*e^6 - 10*e^5 + 22*e^4 + 95*e^3 - 28*e^2 - 129*e - 26, -5*e^6 + 7*e^5 + 45*e^4 - 54*e^3 - 66*e^2 + 75*e + 11, -5*e^6 + 7*e^5 + 45*e^4 - 54*e^3 - 66*e^2 + 75*e + 11, -8*e^6 + 4*e^5 + 74*e^4 - 22*e^3 - 108*e^2 + 36*e + 18, -8*e^6 + 4*e^5 + 74*e^4 - 22*e^3 - 108*e^2 + 36*e + 18, 4*e^5 - 2*e^4 - 32*e^3 + 6*e^2 + 22*e + 10, 4*e^5 - 2*e^4 - 32*e^3 + 6*e^2 + 22*e + 10, -2*e^6 + 18*e^4 + 6*e^3 - 24*e^2 - 20*e + 12, -2*e^6 + 18*e^4 + 6*e^3 - 24*e^2 - 20*e + 12, 2*e^6 - 4*e^5 - 20*e^4 + 34*e^3 + 42*e^2 - 40*e - 10, 2*e^6 - 4*e^5 - 20*e^4 + 34*e^3 + 42*e^2 - 40*e - 10, -4*e^6 + 12*e^5 + 36*e^4 - 100*e^3 - 64*e^2 + 119*e + 8, -4*e^6 + 12*e^5 + 36*e^4 - 100*e^3 - 64*e^2 + 119*e + 8, 4*e^6 - 10*e^5 - 30*e^4 + 84*e^3 + 12*e^2 - 120*e + 12, 4*e^6 - 10*e^5 - 30*e^4 + 84*e^3 + 12*e^2 - 120*e + 12, 3*e^6 + 3*e^5 - 29*e^4 - 33*e^3 + 48*e^2 + 40*e - 37, 3*e^6 + 3*e^5 - 29*e^4 - 33*e^3 + 48*e^2 + 40*e - 37, 3*e^6 + 3*e^5 - 33*e^4 - 28*e^3 + 74*e^2 + 25*e - 35, 3*e^6 + 3*e^5 - 33*e^4 - 28*e^3 + 74*e^2 + 25*e - 35, 4*e^6 - 2*e^5 - 42*e^4 + 8*e^3 + 94*e^2 + 6*e - 26, 4*e^6 - 2*e^5 - 42*e^4 + 8*e^3 + 94*e^2 + 6*e - 26, 5*e^6 - 7*e^5 - 45*e^4 + 58*e^3 + 66*e^2 - 99*e + 13, 5*e^6 - 7*e^5 - 45*e^4 + 58*e^3 + 66*e^2 - 99*e + 13, 4*e^6 - 4*e^5 - 40*e^4 + 36*e^3 + 76*e^2 - 83*e - 28, 4*e^6 - 4*e^5 - 40*e^4 + 36*e^3 + 76*e^2 - 83*e - 28, e^6 - 3*e^5 - 3*e^4 + 26*e^3 - 32*e^2 - 35*e + 17, e^6 - 3*e^5 - 3*e^4 + 26*e^3 - 32*e^2 - 35*e + 17, -8*e^6 + 2*e^5 + 78*e^4 - 10*e^3 - 134*e^2 + 41*e + 44, -4*e^6 + 12*e^5 + 32*e^4 - 102*e^3 - 34*e^2 + 150*e + 10, -4*e^6 + 12*e^5 + 32*e^4 - 102*e^3 - 34*e^2 + 150*e + 10, -6*e^5 + e^4 + 54*e^3 - 64*e - 4, -6*e^5 + e^4 + 54*e^3 - 64*e - 4, -2*e^6 + 8*e^5 + 18*e^4 - 76*e^3 - 34*e^2 + 140*e + 12, -2*e^6 + 8*e^5 + 18*e^4 - 76*e^3 - 34*e^2 + 140*e + 12, -3*e^6 - 13*e^5 + 30*e^4 + 124*e^3 - 32*e^2 - 165*e + 11, -3*e^6 - 13*e^5 + 30*e^4 + 124*e^3 - 32*e^2 - 165*e + 11, -10*e^6 + 12*e^5 + 90*e^4 - 92*e^3 - 128*e^2 + 146*e + 6, -10*e^6 + 12*e^5 + 90*e^4 - 92*e^3 - 128*e^2 + 146*e + 6, e^6 + 8*e^5 - 15*e^4 - 73*e^3 + 48*e^2 + 84*e - 41, e^6 + 8*e^5 - 15*e^4 - 73*e^3 + 48*e^2 + 84*e - 41, -2*e^6 - 2*e^5 + 18*e^4 + 20*e^3 - 12*e^2 - 10*e + 2, -2*e^6 - 2*e^5 + 18*e^4 + 20*e^3 - 12*e^2 - 10*e + 2, -2*e^6 - 3*e^5 + 21*e^4 + 32*e^3 - 41*e^2 - 51*e - 7, -2*e^6 - 3*e^5 + 21*e^4 + 32*e^3 - 41*e^2 - 51*e - 7, 10*e^6 - 10*e^5 - 94*e^4 + 74*e^3 + 154*e^2 - 106*e + 10, 10*e^6 - 10*e^5 - 94*e^4 + 74*e^3 + 154*e^2 - 106*e + 10] hecke_eigenvalues = {} for i in range(len(hecke_eigenvalues_array)): hecke_eigenvalues[primes[i]] = hecke_eigenvalues_array[i] AL_eigenvalues = {} AL_eigenvalues[ZF.ideal([4, 2, 2])] = 1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]