""" 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([28, -1, 1]) F = NumberField(g, "a") a = F.gen() ZF = F.ring_of_integers() NN = ZF.ideal((12, 2*a + 8)) primes_array = [ (2,a),(2,a+1),(3,a+1),(5,a+1),(5,a+3),(7,a),(7,a+6),(17,a+2),(17,a+14),(23,a+10),(23,a+12),(29,a+5),(29,a+23),(37,a+18),(59,a+9),(59,a+49),(67,a+15),(67,a+51),(73,a+26),(73,a+46),(89,a+22),(89,a+66),(113,a+25),(113,a+87),(11,),(-2*a+5,),(2*a+3,),(131,a+42),(131,a+88),(139,a+40),(139,a+98),(151,a+38),(151,a+112),(157,a+24),(157,a+132),(167,a+17),(167,a+149),(13,),(179,a+75),(179,a+103),(181,a+73),(181,a+107),(191,a+67),(191,a+123),(-2*a+11,),(2*a+9,),(223,a+59),(223,a+163),(227,a+97),(227,a+129),(229,a+102),(229,a+126),(239,a+37),(239,a+201),(251,a+44),(251,a+206),(257,a+71),(257,a+185),(271,a+32),(271,a+238),(281,a+62),(281,a+218),(-2*a+15,),(2*a+13,),(311,a+136),(311,a+174),(337,a+153),(337,a+183),(347,a+69),(347,a+277),(349,a+64),(349,a+284),(353,a+140),(353,a+212),(19,),(-2*a+17,),(2*a+15,),(373,a+161),(373,a+211),(379,a+106),(379,a+272),(383,a+151),(383,a+231),(389,a+147),(389,a+241),(397,a+39),(397,a+357),(401,a+141),(401,a+259),(431,a+77),(431,a+353),(433,a+131),(433,a+301),(449,a+29),(449,a+419),(461,a+60),(461,a+400),(467,a+96),(467,a+370),(479,a+30)] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [0, 1, 1, 4, 2, 0, 0, -6, 0, -2, 2, 6, 0, -6, -6, -6, 4, 16, -14, 10, -6, 0, -4, -2, 14, -16, -4, -14, 2, 0, -12, 20, -16, -14, 10, 8, 16, -2, -12, 0, -2, -2, -12, 12, -20, 4, -8, 16, 8, 28, 22, -26, -2, 26, 12, 0, 6, -12, -20, -8, 30, -12, 12, 24, 28, -4, -18, 18, -12, 24, -6, -30, 14, 28, -2, 16, -32, 26, -22, 12, 24, -2, 26, 38, -8, -22, 2, 12, 6, -36, -12, 34, -14, -34, -20, 10, -28, -2, 14, 36] 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((3, a + 1))] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]