""" 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, 0, 1]) F = NumberField(g, "i") i = F.gen() ZF = F.ring_of_integers() NN = ZF.ideal((350, 175*i + 175)) primes_array = [ (i+1,),(-i-2,),(2*i+1,),(3,),(-3*i-2,),(2*i+3,),(i+4,),(i-4,),(-2*i+5,),(2*i+5,),(i+6,),(i-6,),(-5*i-4,),(4*i+5,),(7,),(-2*i+7,),(2*i+7,),(-6*i-5,),(5*i+6,),(-3*i-8,),(3*i-8,),(-5*i+8,),(-8*i+5,),(-4*i+9,),(4*i+9,),(i+10,),(i-10,),(-3*i+10,),(3*i+10,),(-8*i-7,),(7*i+8,),(11,),(-4*i-11,),(4*i-11,),(10*i-7,),(7*i-10,),(-6*i-11,),(6*i-11,),(-2*i+13,),(2*i+13,),(-10*i-9,),(9*i+10,),(7*i-12,),(7*i+12,),(i+14,),(i-14,),(-2*i+15,),(2*i+15,),(-8*i-13,),(-8*i+13,),(-4*i-15,),(4*i-15,),(i+16,),(i-16,),(13*i-10,),(10*i-13,),(-9*i+14,),(-14*i+9,),(-5*i+16,),(5*i+16,),(-2*i+17,),(2*i+17,),(-13*i-12,),(12*i+13,),(-11*i+14,),(-14*i+11,),(9*i-16,),(9*i+16,),(-5*i+18,),(-5*i-18,),(-8*i+17,),(8*i+17,),(19,),(-7*i+18,),(-7*i-18,),(10*i-17,),(10*i+17,),(-6*i+19,),(6*i+19,),(i+20,),(i-20,),(-3*i-20,),(3*i-20,),(-15*i-14,),(14*i+15,),(-17*i-12,),(12*i+17,),(-7*i-20,),(7*i-20,),(-4*i+21,),(4*i+21,),(-10*i-19,),(10*i-19,),(5*i+22,),(5*i-22,),(11*i-20,),(11*i+20,),(23,),(-10*i+21,),(10*i+21,),(-14*i+19,),(-19*i+14,),(-13*i+20,),(-20*i+13,),(i+24,),(i-24,),(-8*i-23,),(8*i-23,),(-5*i-24,),(5*i-24,),(-18*i-17,),(17*i+18,),(19*i-16,),(16*i-19,),(-4*i+25,),(4*i+25,),(13*i-22,),(13*i+22,),(-6*i+25,),(6*i+25,),(-12*i-23,),(12*i-23,),(i+26,),(i-26,),(-5*i+26,),(5*i+26,),(22*i-15,),(15*i-22,),(-2*i+27,),(2*i+27,),(-9*i-26,),(9*i-26,),(-20*i-19,),(19*i+20,),(-12*i+25,),(12*i+25,),(-22*i-17,),(17*i+22,),(-11*i+26,),(-11*i-26,),(-5*i+28,),(-5*i-28,),(-14*i-25,),(-14*i+25,),(10*i-27,),(10*i+27,),(-18*i-23,),(23*i+18,),(-4*i+29,),(4*i+29,),(-6*i-29,),(6*i-29,),(16*i+25,),(-25*i-16,),(-20*i+23,),(-23*i+20,),(-19*i+24,),(-24*i+19,),(-10*i-29,),(10*i-29,),(13*i+28,),(13*i-28,),(31,),(-4*i-31,),(4*i-31,),(-6*i+31,),(6*i+31,),(15*i-28,),(15*i+28,),(-23*i-22,),(22*i+23,),(-11*i-30,),(-11*i+30,),(-3*i-32,),(3*i-32,),(5*i+32,),(5*i-32,),(-10*i+31,),(10*i+31,),(13*i+30,),(13*i-30,),(-2*i+33,),(2*i+33,),(16*i-29,),(16*i+29,),(25*i-22,),(22*i-25,),(26*i-21,),(21*i-26,),(-20*i+27,),(-27*i+20,),(-8*i+33,),(8*i+33,),(-5*i-34,),(5*i-34,),(13*i+32,),(13*i-32,),(-25*i-24,),(24*i+25,),(-27*i-22,)] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [1, 0, 0, -2, 4, 4, -6, -6, -6, -6, -2, -2, 6, 6, 1, -6, -6, 8, 8, -2, -2, -6, -6, 10, 10, 0, 0, 2, 2, -6, -6, -22, -18, -18, -18, -18, 4, 4, 12, 12, 20, 20, -14, -14, 18, 18, -4, -4, 6, 6, -10, -10, -18, -18, -12, -12, 10, 10, -6, -6, -24, -24, 10, 10, -6, -6, -14, -14, -28, -28, -18, -18, -34, -14, -14, 18, 18, -20, -20, -18, -18, 14, 14, -10, -10, 34, 34, 18, 18, 10, 10, 12, 12, 36, 36, 6, 6, -46, 38, 38, -6, -6, 6, 6, -2, -2, 6, 6, 26, 26, -2, -2, -6, -6, -18, -18, -18, -18, -40, -40, -26, -26, 12, 12, 18, 18, -46, -46, 40, 40, -2, -2, -18, -18, 14, 14, -24, -24, 12, 12, 6, 6, 6, 6, 56, 56, -44, -44, 18, 18, 22, 22, -54, -54, 6, 6, -2, -2, -24, -24, 54, 54, -46, 6, 6, -8, -8, -34, -34, 36, 36, -4, -4, -26, -26, -30, -30, -30, -30, 8, 8, 22, 22, 6, 6, 36, 36, 34, 34, 50, 50, -2, -2, 60, 60, -66, -66, 14, 14, -26] hecke_eigenvalues = {} for i in range(len(hecke_eigenvalues_array)): hecke_eigenvalues[primes[i]] = hecke_eigenvalues_array[i] AL_eigenvalues = {} AL_eigenvalues[ZF.ideal((i + 1,))] = -1 AL_eigenvalues[ZF.ideal((-i - 2,))] = 1 AL_eigenvalues[ZF.ideal((2*i + 1,))] = 1 AL_eigenvalues[ZF.ideal((7,))] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]