""" 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([20, -1, 1]) F = NumberField(g, "a") a = F.gen() ZF = F.ring_of_integers() NN = ZF.ideal((22, a + 1)) primes_array = [ (2,a),(2,a+1),(5,a),(5,a+4),(3,),(11,a+1),(11,a+9),(13,a+2),(13,a+10),(19,a+7),(19,a+11),(23,a+8),(23,a+14),(31,a+6),(31,a+24),(7,),(67,a+25),(67,a+41),(73,a+16),(73,a+56),(-2*a+1,),(-2*a+3,),(2*a+1,),(89,a+29),(89,a+59),(97,a+27),(97,a+69),(101,a+13),(101,a+87),(131,a+53),(131,a+77),(151,a+62),(151,a+88),(163,a+17),(163,a+145),(167,a+51),(167,a+115),(-2*a+11,),(2*a+9,),(181,a+18),(181,a+162),(-2*a+13,),(2*a+11,),(239,a+43),(239,a+195),(241,a+21),(241,a+219),(257,a+50),(257,a+206),(263,a+22),(263,a+240),(269,a+32),(269,a+236),(277,a+102),(277,a+174),(281,a+78),(281,a+202),(283,a+111),(283,a+171),(17,),(313,a+127),(313,a+185),(-4*a+1,),(4*a-3,),(337,a+93),(337,a+243),(347,a+52),(347,a+294),(367,a+76),(367,a+290),(383,a+156),(383,a+226),(389,a+121),(389,a+267),(-4*a-7,),(4*a-11,),(421,a+161),(421,a+259),(431,a+65),(431,a+365),(433,a+97),(433,a+335),(439,a+196),(439,a+242),(457,a+95),(457,a+361),(467,a+146),(467,a+320),(-2*a+21,),(2*a+19,),(487,a+139),(487,a+347),(499,a+70),(499,a+428),(523,a+204),(523,a+318),(-4*a+17,),(4*a+13,),(547,a+104),(547,a+442)] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [1, -1, 0, -2, -4, 1, 4, 6, 4, -4, 0, 8, 2, -2, -8, -2, -4, -10, 2, 16, -8, 8, 14, 6, 6, 2, -2, 10, 6, 18, -12, 0, 20, 20, 18, 16, -16, 20, -6, 14, -12, 28, -2, -24, 20, -2, -6, 28, -12, 4, -4, -18, -14, 10, -2, -10, -12, 22, -24, 6, 6, 14, -6, -14, 2, 12, 4, -30, -8, -8, 12, -16, 0, 18, -4, 10, 10, -10, 22, 10, -28, 28, -28, -20, 16, 22, -26, 12, 16, -24, 26, 20, 36, -30, 28, 36, 32, -2, -24, 28] 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))] = 1 AL_eigenvalues[ZF.ideal((11, a + 1))] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]