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