Conjectural slopes of Hecke polynomials¶
Interface to Kevin Buzzard’s PARI program for computing conjectural slopes of characteristic polynomials of Hecke operators.
AUTHORS:
William Stein (2006-03-05): Sage interface
Kevin Buzzard: PARI program that implements underlying functionality
- sage.modular.buzzard.buzzard_tpslopes(p, N, kmax)[source]¶
Return a vector of length kmax, whose
-th entry ( ) is the conjectural sequence of valuations of eigenvalues of on forms of level , weight , and trivial character.This conjecture is due to Kevin Buzzard, and is only made assuming that
does not divide and if is -regular.EXAMPLES:
sage: from sage.modular.buzzard import buzzard_tpslopes sage: c = buzzard_tpslopes(2,1,50) ... sage: c[50] [4, 8, 13]
>>> from sage.all import * >>> from sage.modular.buzzard import buzzard_tpslopes >>> c = buzzard_tpslopes(Integer(2),Integer(1),Integer(50)) ... >>> c[Integer(50)] [4, 8, 13]
from sage.modular.buzzard import buzzard_tpslopes c = buzzard_tpslopes(2,1,50) c[50]
Hence Buzzard would conjecture that the
-adic valuations of the eigenvalues of on cusp forms of level 1 and weight are , which indeed they are, as one can verify by an explicit computation using, e.g., modular symbols:sage: M = ModularSymbols(1,50, sign=1).cuspidal_submodule() sage: T = M.hecke_operator(2) sage: f = T.charpoly('x') sage: f.newton_slopes(2) [13, 8, 4]
>>> from sage.all import * >>> M = ModularSymbols(Integer(1),Integer(50), sign=Integer(1)).cuspidal_submodule() >>> T = M.hecke_operator(Integer(2)) >>> f = T.charpoly('x') >>> f.newton_slopes(Integer(2)) [13, 8, 4]
M = ModularSymbols(1,50, sign=1).cuspidal_submodule() T = M.hecke_operator(2) f = T.charpoly('x') f.newton_slopes(2)
AUTHORS:
Kevin Buzzard: several PARI/GP scripts
William Stein (2006-03-17): small Sage wrapper of Buzzard’s scripts