""" This code can be loaded, or copied and paste using cpaste, into Sage. It will load the data associated to the BMF, including the field, level, and Hecke and Atkin-Lehner eigenvalue data (if known). """ P = PolynomialRing(QQ, "x") x = P.gen() g = P([6, -1, 1]) F = NumberField(g, "a") a = F.gen() ZF = F.ring_of_integers() NN = ZF.ideal((46, 2*a + 22)) primes_array = [ (2,a),(2,a+1),(3,a),(3,a+2),(13,a+4),(13,a+8),(-2*a+1,),(5,),(29,a+10),(29,a+18),(31,a+7),(31,a+23),(41,a+15),(41,a+25),(47,a+13),(47,a+33),(7,),(-2*a+7,),(2*a+5,),(71,a+20),(71,a+50),(73,a+29),(73,a+43),(-4*a+5,),(4*a+1,),(11,),(127,a+27),(127,a+99),(131,a+48),(131,a+82),(139,a+16),(139,a+122),(151,a+42),(151,a+108),(163,a+62),(163,a+100),(-2*a+13,),(2*a+11,),(-4*a-7,),(4*a-11,),(179,a+65),(179,a+113),(193,a+19),(193,a+173),(197,a+59),(197,a+137),(-6*a+1,),(6*a-5,),(-6*a+7,),(6*a+1,),(233,a+103),(233,a+129),(239,a+53),(239,a+185),(257,a+78),(257,a+178),(269,a+120),(269,a+148),(-6*a-5,),(6*a-11,),(277,a+81),(277,a+195),(17,),(-6*a+13,),(6*a+7,),(311,a+70),(311,a+240),(-4*a+17,),(4*a+13,),(331,a+44),(331,a+286),(-2*a+19,),(2*a+17,),(349,a+158),(349,a+190),(353,a+37),(353,a+315),(19,),(397,a+84),(397,a+312),(409,a+28),(409,a+380),(439,a+118),(439,a+320),(443,a+51),(443,a+391),(-8*a-5,),(-8*a+13,),(461,a+163),(461,a+297),(-6*a+19,),(6*a+13,),(487,a+112),(487,a+374),(491,a+153),(491,a+337),(499,a+31),(499,a+467),(509,a+110),(509,a+398)] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [-1, -1, 0, 0, -2, -2, 1, 6, 2, 2, 0, 0, 6, 6, 0, 0, 2, 12, 12, 0, 0, 6, 6, -10, -10, -18, 16, 16, 12, 12, -4, -4, -8, -8, -8, -8, 16, 16, -6, -6, -16, -16, 26, 26, 18, 18, -20, -20, -16, -16, -6, -6, -24, -24, 22, 22, -14, -14, 8, 8, -14, -14, -30, -16, -16, 32, 32, 2, 2, -4, -4, 8, 8, 26, 26, 2, 2, -34, 14, 14, 34, 34, 8, 8, 8, 8, 14, 14, 18, 18, 40, 40, -8, -8, 24, 24, 16, 16, 18, 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, a))] = 1 AL_eigenvalues[ZF.ideal((2, a + 1))] = 1 AL_eigenvalues[ZF.ideal((-2*a + 1,))] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]