""" 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([41, -1, 1]) F = NumberField(g, "a") a = F.gen() ZF = F.ring_of_integers() NN = ZF.ideal((28, 28*a)) primes_array = [ (2,),(3,),(5,),(-a,),(a-1,),(a+1,),(a-2,),(a+2,),(a-3,),(7,),(a+3,),(a-4,),(a+4,),(a-5,),(a+5,),(a-6,),(a+6,),(a-7,),(a+7,),(a-8,),(a+8,),(a-9,),(11,),(a+9,),(a-10,),(a+10,),(a-11,),(-2*a+1,),(-2*a+3,),(-2*a-1,),(13,),(a+11,),(a-12,),(-2*a+5,),(2*a+3,),(a+12,),(a-13,),(-2*a+7,),(2*a+5,),(a+13,),(a-14,),(-2*a+9,),(2*a+7,),(a+14,),(a-15,),(-2*a+11,),(2*a+9,),(a+15,),(a-16,),(17,),(-2*a+13,),(2*a+11,),(a+16,),(a-17,),(a+17,),(a-18,),(-2*a+15,),(2*a+13,),(19,),(-3*a+1,),(3*a-2,),(-3*a+4,),(3*a+1,),(-3*a-2,),(3*a-5,),(a+18,),(a-19,),(-3*a+7,),(3*a+4,),(-3*a-5,),(3*a-8,),(-2*a+17,),(2*a+15,),(a+19,),(a-20,),(-3*a+10,),(3*a+7,),(-3*a-8,),(3*a-11,),(a+20,),(a-21,),(-2*a+19,),(2*a+17,),(-3*a+13,),(3*a+10,),(a+21,),(a-22,),(-3*a-11,),(3*a-14,),(23,),(a+22,),(a-23,),(-2*a+21,),(2*a+19,),(-3*a+16,),(3*a+13,),(a+23,),(a-24,),(-3*a-14,),(3*a-17,)] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [0, -2, -3, -8, 2, -10, 2, -8, -4, -1, 5, 1, 8, -10, 12, -6, 11, -11, 6, 6, 6, 6, 15, 3, -3, -8, 10, -2, 13, -1, 10, 6, -6, 0, 6, 1, 5, 15, -15, 3, -15, 4, -28, 7, 17, 12, -12, -11, -19, 21, -13, -7, 10, -2, -18, 12, -6, 0, -2, -13, 17, 29, 5, 14, 26, -15, 15, -2, 28, -14, -26, 36, 12, -23, 25, -9, -15, -41, -17, 22, -4, 32, 2, 44, 2, -24, 24, 7, -35, 35, -18, 24, -33, -3, -4, 26, 0, 36, -32, -8] 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,))] = 1 AL_eigenvalues[ZF.ideal((7,))] = 1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]