""" 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((104, 104*i)) 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 = [0, 3, 3, -1, -1, -1, -3, -3, 10, 10, 3, 3, 0, 0, -9, 4, 4, 0, 0, 14, 14, -10, -10, -2, -2, -12, -12, 11, 11, -14, -14, -2, -12, -12, 14, 14, 22, 22, 4, 4, -8, -8, 16, 16, -7, -7, 5, 5, 1, 1, 10, 10, -23, -23, -16, -16, -28, -28, -10, -10, 31, 31, -29, -29, -18, -18, 3, 3, -5, -5, 4, 4, -18, 4, 4, 26, 26, -22, -22, -8, -8, 4, 4, 15, 15, -21, -21, 6, 6, 2, 2, 3, 3, -30, -30, 3, 3, 34, 33, 33, -7, -7, -9, -9, 2, 2, -6, -6, 5, 5, 26, 26, -8, -8, 30, 30, 24, 24, -10, -10, 29, 29, -12, -12, -20, -20, -10, -10, 9, 9, -28, -28, -18, -18, 0, 0, -9, -9, -18, -18, 35, 35, -45, -45, -46, -46, -19, -19, -2, -2, -3, -3, 5, 5, 4, 4, -58, -58, -3, -3, -9, -9, -62, 58, 58, 22, 22, -30, -30, 26, 26, 37, 37, -56, -56, -5, -5, -18, -18, -36, -36, 14, 14, -22, -22, -10, -10, 38, 38, 36, 36, 1, 1, 30, 30, 66, 66, -40, -40, 24] 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((-2*i + 3,))] = 1 AL_eigenvalues[ZF.ideal((2*i + 3,))] = 1 # EXAMPLE: # pp = ZF.ideal(2).factor()[0][0] # hecke_eigenvalues[pp]