jen_b-2010-11-12

558 days ago by wstein

c = [-1,-1,-2,-2,-1,2,3,1] f = ZZ['x'](c) 
       
       
x^7 + 3*x^6 + 2*x^5 - x^4 - 2*x^3 - 2*x^2 - x - 1
x^7 + 3*x^6 + 2*x^5 - x^4 - 2*x^3 - 2*x^2 - x - 1
f.discriminant().factor() 
       
-1 * 71^3
-1 * 71^3
from sage.schemes.hyperelliptic_curves.hypellfrob import hypellfrob 
       
p = 11 M = hypellfrob(p, 1, f) M.charpoly().change_ring(GF(p)).factor() 
       
x^3 * (x^3 + 5*x^2 + 2)
x^3 * (x^3 + 5*x^2 + 2)
D = ModularSymbols(284,sign=1).cuspidal_subspace().new_subspace().decomposition() T = D[0].hecke_matrix(p) F = D[0].hecke_polynomial(p) x = F.parent().gen() G = (x^3 * F(x + p/x)).numerator() G.factor_mod(p) 
       
x^3 * (x^3 + 6*x^2 + 9)
x^3 * (x^3 + 6*x^2 + 9)
p = 13 M = hypellfrob(p, 1, f) M.charpoly().change_ring(GF(p)).factor() 
       
x^3 * (x^3 + 6*x^2 + 2*x + 7)
x^3 * (x^3 + 6*x^2 + 2*x + 7)
D = ModularSymbols(284,sign=1).cuspidal_subspace().new_subspace().decomposition() T = D[0].hecke_matrix(p) F = D[0].hecke_polynomial(p) x = F.parent().gen() G = (x^3 * F(x + p/x)).numerator() G.factor_mod(p) 
       
x^3 * (x^3 + 6*x^2 + 2*x + 7)
x^3 * (x^3 + 6*x^2 + 2*x + 7)
p = 37 M = hypellfrob(p, 1, f) M.charpoly().change_ring(GF(p)).factor() 
       
(x + 1) * (x + 14) * (x + 25) * x^3
(x + 1) * (x + 14) * (x + 25) * x^3
D = ModularSymbols(284,sign=1).cuspidal_subspace().new_subspace().decomposition() T = D[0].hecke_matrix(p) F = D[0].hecke_polynomial(p) x = F.parent().gen() G = (x^3 * F(x + p/x)).numerator() G.factor_mod(p) 
       
(x + 1) * (x + 14) * (x + 25) * x^3
(x + 1) * (x + 14) * (x + 25) * x^3
 
       
 
       

If F(X) is charpoly of T_p, then X^3 F(X + p/X) is the charpoly of Frob_p, since T_p = Frob_p + p/Frob_p

D = ModularSymbols(284,sign=1).cuspidal_subspace().new_subspace().decomposition(); D 
       
[
Modular Symbols subspace of dimension 3 of Modular Symbols space of
dimension 39 for Gamma_0(284) of weight 2 with sign 1 over Rational
Field,
Modular Symbols subspace of dimension 3 of Modular Symbols space of
dimension 39 for Gamma_0(284) of weight 2 with sign 1 over Rational
Field
]
[
Modular Symbols subspace of dimension 3 of Modular Symbols space of dimension 39 for Gamma_0(284) of weight 2 with sign 1 over Rational Field,
Modular Symbols subspace of dimension 3 of Modular Symbols space of dimension 39 for Gamma_0(284) of weight 2 with sign 1 over Rational Field
]
T = D[0].hecke_matrix(p) F = D[0].hecke_polynomial(p) x = F.parent().gen() G = (x^3 * F(x + p/x)).numerator() G.factor_mod(p) 
       
(x + 1) * (x + 14) * (x + 25) * x^3
(x + 1) * (x + 14) * (x + 25) * x^3
       
x^6 + 3*x^5 + 285*x^4 + 603*x^3 + 28785*x^2 + 30603*x + 1030301
x^6 + 3*x^5 + 285*x^4 + 603*x^3 + 28785*x^2 + 30603*x + 1030301
D[0].atkin_lehner_operator(D[0].level()).matrix() 
       
[1 0 0]
[0 1 0]
[0 0 1]
[1 0 0]
[0 1 0]
[0 0 1]
A = D[0] 
       
A.rational_period_mapping()( A.ambient()([0,oo]) ) 
       
(0, 0, 0)
(0, 0, 0)
F.disc().factor() 
       
3^4 * 19^2
3^4 * 19^2
 
       
p = 101 F = D[1].hecke_polynomial(p) x = F.parent().gen() G = (x^3 * F(x + p/x)).numerator() G.factor_mod(p) 
       
(x + 1) * x^3 * (x^2 + 87*x + 47)
(x + 1) * x^3 * (x^2 + 87*x + 47)
       
x^6 - 13*x^5 + 33*x^4 + 47*x^3 + 3333*x^2 - 132613*x + 1030301
x^6 - 13*x^5 + 33*x^4 + 47*x^3 + 3333*x^2 - 132613*x + 1030301
F.disc().factor() 
       
3^5 * 59^2 * 107
3^5 * 59^2 * 107
 
       

We have \varepsilon(f) = -w_N, where w_N is the Atkin-Lehner eigenvalue.