""" 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((54, 27*i + 27)) primes_array = [ (i+1,),(-i-2,),(2*i+1,),(3,),(-2*i+3,),(2*i+3,),(i+4,),(i-4,),(-2*i+5,),(2*i+5,),(i+6,),(i-6,),(-4*i+5,),(4*i+5,),(7,),(-2*i+7,),(2*i+7,),(-6*i-5,),(6*i-5,),(-3*i-8,),(3*i-8,),(-5*i+8,),(-5*i-8,),(-4*i+9,),(4*i+9,),(i+10,),(i-10,),(-3*i+10,),(3*i+10,),(-8*i-7,),(8*i-7,),(11,),(-4*i-11,),(4*i-11,),(7*i+10,),(7*i-10,),(-6*i-11,),(6*i-11,),(-2*i+13,),(2*i+13,),(-10*i-9,),(10*i-9,),(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,),(13*i+10,),(-9*i+14,),(-9*i-14,),(-5*i+16,),(5*i+16,),(-2*i+17,),(2*i+17,),(-12*i+13,),(12*i+13,),(-11*i+14,),(-11*i-14,),(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,),(-14*i+15,),(14*i+15,),(-12*i+17,),(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,),(-19*i-14,),(-19*i+14,),(-13*i+20,),(-13*i-20,),(i+24,),(i-24,),(-8*i-23,),(8*i-23,),(-5*i-24,),(5*i-24,),(-18*i-17,),(18*i-17,),(19*i-16,),(19*i+16,),(-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,),(15*i+22,),(15*i-22,),(-2*i+27,),(2*i+27,),(-9*i-26,),(9*i-26,),(-20*i-19,),(20*i-19,),(-12*i+25,),(12*i+25,),(-22*i-17,),(22*i-17,),(-11*i+26,),(-11*i-26,),(-5*i+28,),(-5*i-28,),(-14*i-25,),(-14*i+25,),(10*i-27,),(10*i+27,),(-23*i+18,),(23*i+18,),(-4*i+29,),(4*i+29,),(-6*i-29,),(6*i-29,),(16*i+25,),(-16*i+25,),(-23*i-20,),(-23*i+20,),(-19*i+24,),(-19*i-24,),(-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,),(-22*i+23,),(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,),(25*i+22,),(21*i+26,),(21*i-26,),(-27*i-20,),(-27*i+20,),(-8*i+33,),(8*i+33,),(-5*i-34,),(5*i-34,),(13*i+32,),(13*i-32,),(-24*i+25,),(24*i+25,),(-22*i+27,)] primes = [ZF.ideal(I) for I in primes_array] heckePol = x K = QQ e = 1 hecke_eigenvalues_array = [-1, 3, 3, 0, -4, -4, 0, 0, 6, 6, 2, 2, -6, -6, -13, 9, 9, 8, 8, -7, -7, -18, -18, -1, -1, -3, -3, 2, 2, -6, -6, -13, 6, 6, 3, 3, -4, -4, 15, 15, -16, -16, 5, 5, 9, 9, 14, 14, 18, 18, -10, -10, 12, 12, -18, -18, 8, 8, 24, 24, -6, -6, -19, -19, -3, -3, -22, -22, -10, -10, 6, 6, -34, 32, 32, -21, -21, 20, 20, 12, 12, 23, 23, 8, 8, 29, 29, -18, -18, -1, -1, -21, -21, -15, -15, 36, 36, -10, 20, 20, 27, 27, -12, -12, 38, 38, 18, 18, 35, 35, -34, -34, -42, -42, 42, 42, 39, 39, 14, 14, -19, -19, 42, 42, 9, 9, 44, 44, -22, -22, 2, 2, 48, 48, -31, -31, -18, -18, 39, 39, 18, 18, 6, 6, 2, 2, -10, -10, -48, -48, -22, -22, -36, -36, -12, -12, 11, 11, -33, -33, -36, -36, -37, -42, -42, -28, -28, 11, 11, -6, -6, -58, -58, 26, 26, -6, -6, -9, -9, -64, -64, 14, 14, 36, 36, 15, 15, 38, 38, 59, 59, 2, 2, -57, -57, 12, 12, 23, 23, 62] 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((3,))] = -1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]