Buzzard’s Conjectures

Kevin Buzzard

February 11, 2000

Abstract

Here’s a much stronger conjecture than Gouvea-Mazur, just for N = 1 and p = 2 though, which I have checked numerically for lots of weights, but which is somehow more likely to be true/provable than G-M for N = 1 and p = 2 because it predicts all slopes.

Subject: A conjecture
   Date: Fri, 11 Feb 2000 16:57:25 +0000 (gmt)
   From: Kevin Buzzard <k.buzzard@ic.ac.uk>

I have always been skeptical about the precise form of the Gouvea-Mazur conjectures. I had thought that if they were true then surely they would be “easy algebra” in the definite quat alg case, and they didn’t seem to be. I am talking about the explicit linear bounds of course, not the existence of families, which I certainly believed.

Also, I certainly had no reason to expect that there should be any pattern in slopes, for fixed weight. I had computed classical slopes of U_{2} on forms of small weights and level 2, (p = 2) and I just got a bunch of integers. Wan raised the question that perhaps the denominators of these numbers were bounded, and indeed it looked like this was the case, but a pattern?

Things changed when

(a) I was doing some global computations of classical char polys of U_{2} because of a question Emerton asked me, and

(b) Lawren Smithline told me he’d proved something about slopes of overconvergent U_{3} in weight 0, level 3. He also made the remark that his computations seemed to indicate a certain pattern in these slopes, although he couldn’t prove it.

I went away and computed all classical slopes of U_{2} at weight k, 2 ≤ k ≤ 800 or so, p = 2, tame level 1. I printed them out on reams of paper and I just stared at these things for a week, much to the amusement of my friends :-) By the end of the week I had a conjecture, which I tried to prove for a while, but because I couldn’t, and I can’t keep my mouth shut and kept telling things to other people, I thought it only fair now that I spill the beans completely.

So I have a conjectural formula for the slopes of U_{2} on classical forms of weight k, for k any integer. In fact, I can do more—I can even predict weight k, level 2^{n} and character. It’s funny—it took a week or two to produce my table of classical slopes at level 2, but now I can generate a table in a few seconds using a totally different program, and these tables agree for 2 ≤ k ≤ 810 so surely my conjecture is right. My conjecture should also easily imply Gouvea-Mazur for level 2 and p = 2, this is just a combinatorial exercise that I continually fail to getting round to do but I believe that I can see how to do it, it’s just a question of checking the combinatorial details (my conjecture is very combinatorial and unfortunately also very messy, although it is inspired by the existence of the eigencurve). Because I can predict classical slopes, I can also predict overconvergent slopes. I also have a “feeling” as to why my conjecture might be true—it is somehow saying that the eigencurve looks quite a lot like the non-ordinary part that Emerton computed. Emerton told me that (completely independently of my computations) he has also convinced himself of something like this!

OK, here are some details.

the first indication that there are patterns comes not at level 2 but level 4 and character of conductor 4. If one computes U_{2} at lots of odd weights, and computes newton polys of the char poly, then one instantly sees a very obvious pattern.

k: [set of slopes, with multiplicities]
3: [2]
5: [2,4]
7: [2,4,6]
9: [2,4,6,8]
...
121: [2,4,6,8,...,118,120]

I stopped at 121. Who needs more! Of course, I should add that I could never have done that computation without William Stein’s programs. Emerton told me that he suspected that the eigencurve for N = 1 and p = 2 looked like a lot of annuli near the boundary of weight space, and this computation is mild evidence that the annuli are quite “wide”—they go all the way into “odd weight, character of conductor 4”. In fact, one can have some more glimpses of these conjectural annuli: for any integer k ≥ 2, there is a unique character of conductor 8 such that χ(−1) = (−1)^{k}, and one can compute classical slopes of U_{2} on the corresponding classical spaces. One gets

3: [1,2]
4: [1,2]
5: [1,2,3,4]
6: [1,2,3,4]
...

up to 60 (a more global remark: I also noticed that, up to sign, the char polys of U_{2} at weights 2n and 2n − 1 had the same constant term! This might be easy though, I didn’t think about it.)

These and other things suggest that the ”outskirts” of the eigencurve at N = 1 and p = 2 looks like a bunch of annuli with slopes tending down to 0, just as in Emerton’s example.

OK, so all the interesting stuff must be happening in the middle. Because the computations I am doing are all ”classical”, the only ”middle” slopes I can compute are classical ones. In fact, what I did was computed slopes of T_{2} (not U_{2}) at weight k ≥ 2 and level 1, using an algorithm of my own which was designed specifically for this purpose. I’ll give details later. We all know what the answers look like: (I did cusp forms so no Eisenstein series)

2:[]
4:[]
...
10:[]
12:[3]
14:[]
16:[3]
...

etc. Now it turns out that all the classical slopes of T_{2} that I computed were less than k/3 and so one can compute slopes of U_{2} immediately: you get the classical slopes of k/3, then a bunch of things of slope (k − 2)/2 corresponding to newforms, and then a bunch of evil twins, with slopes between 2k/3 and k − 1. So from now on I will only talk about slopes of T_{2} for classical cuspforms of weight k ≥ 2 and level 1.

So in particular I will ignore newforms of weight 2. And the ridiculous first fact is that ignoring these forms makes it much easier to see that something much stronger than Gouvea-Mazur is true! Let’s take a random integer, say k = 100, and the slopes of T_{2} are:

[3,9,9,17,17,26,26,32]

Now let’s add 128 (= smallest power of 2 which is ≥ 100) and look at weight k = 228. The slopes of T_{2} are

[3,9,9,17,17,26,26,32,36,42,42,49,...]

and note that weight 100 is an initial segment of weight 228. Gouvea-Mazur would say “128 = 2^{7} so all forms of slopes ≤ 7 or so showing up at weight 100 should show up at weight 228.” But clearly much more seems to be true. All slopes of T_{2} show up, in other words, the slopes of U_{2} which are < (k − 2)/2 are all showing up at weight k + 2^{7}, regardless of whether they are < 7 or ≥ 7. This is exponentially stronger than G-M, which makes it rather disturbing that we can’t even prove G-M :-)

So this could all be turned into a conjecture. But I want to explain those other slopes at weight 228 too. Here’s how I do it. I will spare the general details and just stick to 228.

I will construct a list of “conjectural slopes for T_{2}” by induction. Let’s say I’ve got as far as 226. How do I construct 228?

First thing is I write 228 = 128 + 100 where 128 is the largest power of 2 which is < 228. I then look at weight 100, and get

[3,9,9,...,32] (as above)

This is how weight 228 should start. Next, I work out 228 − 64 = 164, and I look there. I have already guessed the first 8 slopes for weight 228, what is the 9th? Rather surprisingly, I take the 9th slope at weight 164, and I add one. In fact, I should tell you what weight 164 looks like:

it's [(first 8 terms),35,41,41,49,49].

Now 49 is some kind of key number here because 49 is the slope of the newforms at weight 100 (which we are ignoring, but newforms of weight 100 might live in families of forms which are old at weight 100+128, once we get over the psychological difficulty of this being much much more than what Gouvea and Mazur predict!)

OK, so what I do is that I take all thoe slopes at wieght 164 which are less than 49 and then add 1. So I get [36,42,42]. Then I throw in these 49s. And then I continue thus: for each of [36, 42, 42], I throw in 98 minus this slope. So so far I have

228: [3,9,9,17,17,26,26,32,36,42,42,49,49,56,56,62].

Next I take those weight 100 slopes, namely [3,9,9,17,17,26,26,32] and I remember that there will be oldforms at weight 100 level 2 with slopes equal to 99 minus these slopes! So I throw in [99-32,99-26,99-26...99-3], because now that we have realised that G-M is much too weak, we think that it’s not unreasonable to think that slope 99-32 at weight 100 and level 2 might imply slope 99-32 at weight 128 as well!

But in fact this has generated too many numbers, so I truncate and just look at the first d slopes, where d = dim(S_{2}28(SL_{2}(Z))). Rather surprisingly, that’s the algorithm.

Actually, it isn’t. I guess I haven’t explained what to do if this method does not generate enough numbers. This happens when the weight is between 2^{n} and 2^{n} ∗ (3/2). So let’s for example do weight 166.

166 = 128 + 38. So first let’s look at slopes at weight 38. It’s [5,8]. Now look at weight 166 − 64 = 102. It’s [5,8,14,18,18,...]. So at weight 166 the slopes should be

[5,8 (from weight 38), 15(=14+1),18,18 (from weight 102),
21 (=36-15), 29 (=37-8), 32 (=37-5)]

But this isn’t enough. In fact, filling this up is the most mysterious of all. We need 5 more slopes. The first one is 37, which is probably a family going through the Eisenstein series at weight 38. And the next 4 slopes are [37+3, 37+8, 37+13, 37+13], where [3,8,13,13] are the first few slopes at weight 92. Why 92? Well, 166=128+38 and what you do is take 128, add 2, and then subtract 38 instead of adding.

OK, that is a sketch of my method. I can be much more concrete and rigorous by simply attaching a gp program that computes my conjectural slopes for T_{2} at level 1; I’ll do that in a minute.

Now some ”explanation”. Let’s go back to level 2. Firstly, families of oldforms seem to be much much ”flatter” than families that contain a classical newform. Hence e.g. all that copying of old slopes at weight 100 over to weight 228. Now what about all that ”adding 1” weirdness? Well I think that this is some kind of phenomenon analogous to Emerton’s ”3435343634353436...” minimal slopes thing. There are some annuli here, that are going through classical newforms, and kind of ”undulating” a bit. This appears to explain why something weird like what I am prediction should happen.

Next, what about that weird ”add 37 to everything of slope 92” thing? Well this is the weirdest of all. What I think is happening is that..let’s just take the oldform of slope 8 and weight 92. Apply theta to it 128 − 91 = 37 times and we get a p-adic form whose associated repn has Hodge-Tate weights 37 and 128, and it’s crystalline with F-eigenvalues of slope 8+37=45 and (91-8)+37. Note that one H-T weight is a power of 2. What seems to be happening is that there is a repn of H-T weights 0 and 37+128 and the same F-eigenvalues, corresponding to the slope 45 form at weight 128+37+1=166. These thoughts are just too weird though because how can one change a H-T weight by 128 and expect to keep a Frobenius eigenvalue of 45? Anyway, that last bit is just pure speculation. But this weirdness really shows itself up when you look at say weights 128 and 130, at level 1. The slopes at weight 130 are precisely 1 plus the slopes at weight 128. This seems to be indicating to me that theta, which is mapping overconvergent forms of weight 0 to weight 2, well, all those overconvergent forms are living in huge families, both at weight 0 and weight 2. e.g. there’s a form of, say, slope 37 and weight 128, and maybe it lives in a family that goes all the way to weight 0, and then apply theta, and get slope 38 weight 2, and maybe this form lives in a family which goes all the way to weight 130 slope 38.

Before I give you some gp programs, I’ll mention some silly corollaries. Firstly, these things will easily imply G-M. Next, There is a neat formula for all overconvergent forms of weight 0, analogous to Smithlines conjectured formula when p = 3. It’s all to do with the number of 0s and 1s in the 2-adic expansion of t − 1/3 and t − 2/3 as t ranges through all integers.

Next, all slopes of T_{2} are < (k − 1)/3. And all slopes of U_{2} are integers! next, to check my weird “plus one” clause, I worked out classical slopes

for level 2 weights 38 + 2^{n} for various n and got:

38: [5,8,18,18,18,18,29,32].
38+64: [5,8,14,18,18,22,29,32...]
38+128: [5,8,15,18,18,21,29,...]
38+256: [5,8,16,18,18,20,29,...]
38+512: [5,8,17,18,18,19,29,...]
38+1024: [5,8,18,18,18,18,18,29...]

:-) Note I only had to go up to 1024 to catch all those slope 18 families.

Finally, some gp programs. The first one starts with np[2]=(empty) and then uses my inductive formula to generate np[k] for all k ≥ 2 even. Note how it gives empty vectors until weight 12 and then suddenly a ”3” appears :-)

d(k)=k\12-(k>2&&k%12==2);   // d(k)=dim(S_k(SL_2(Z)), k even.

np=vector(1500,i,[]);
np[2]=[];
forstep(k=4,1500,2,n=0;while(2^(n+1)<k,n++);gama=k-2^n;beta=gama-1;
alpha=(beta-1)/2;w0=np[gama];v1=np[k-2^(n-1)];
v2=vector(length(v1)-d(gama),i,v1[i+d(gama)]);
v=[];xx=[];for(i=1,length(v2),if(v2[i]<alpha,v=concat(v,[v2[i]]));
if(v2[i]==alpha,xx=concat(xx,[alpha])));
w0=concat(w0,vector(length(v),i,v[i]+1));
w0=concat(w0,xx);w0=concat(w0,vector(length(v),
                        i,2*alpha-1-v[length(v)+1-i]));
w0=concat(w0,vector(length(np[gama]),i,
                        beta-np[gama][length(np[gama])+1-i]));
if(gama>2,w0=concat(w0,[beta]));w0=concat(w0,vector(length(np[k-2*beta]),
i,np[k-2*beta][i]+beta));np[k]=vector(d(k),i,w0[i]))

And now np[100] will contain a conjectural list of slopes of T_{2} at weight 100.

Here’s the algorithm I used for computing T_{2}. It’s a bit weird. What it does is computes the three maps from (all forms of level 1) to (all forms on Γ_{2}), given by the three matrices which make up T_{2}. It then adds these maps together and messes around a bit. I could be more specific but I am exhausted now. Again it’s a gp script. mtnn(36) gives the matrix of T_{2} at weight 36 etc etc.

\\ This program, unless I made an error, calculates a matrix representing
\\ the char poly of T_2 on M_k(SL_2(Z)) (That's the function mtnn!)
\\ It's based on a daft algorithm and there's no "error checking"
\\ (there was in the first version, which was a lot slower...)
numsolns(k) = truncate(k/12)+if(k%12==2,0,1)
ff(a,b,t=0,pr=0) =
pr=2*numsolns(4*a+6*b)-2+if(b%2==0,0,1);
t=(3*z^2+30*z+11+O(z^(pr+1)))^a*(z^3-21*z^2-29*z-7+O(z^(pr+1)))^b;
t=t+(-1)^b*subst(truncate(t),z,-z)+4^a*(12*z^2-1+O(z^(pr+1-b)))^a
                           *8^b*z^b*(8*z^2-1+O(z^(pr+1-b)))^b;t=t/2/3^a;t
gg(a,b,t=0,pr=0) =

pr=2*numsolns(4*a+6*b)-2+if(b%2==0,0,1);t=(z+1+O(z^(pr+1-b)))^b;
(3*z^2+1+O(z^(pr+1-b)))^a*z^b*t*(-1)^b*subst(t,z,-z)/3^a
absolns(k,l=0,a=0,b=0) = l=numsolns(k);b=if(k%4==0,0,1);
a=(k-6*b)/4;vector(l,i,[a-(i-1)*3,b+(i-1)*2])
mtnn(k,l=0,abso=0,u=0,v=0)=l=numsolns(k);abso=absolns(k);
mr=matrix(l,l,i,j,0);u=vector(l,i,gg(abso[i][1],abso[i][2]));
v=vector(l,i,ff(abso[i][1],abso[i][2]));
for(m=0,l-1,for(n=0,l-1,mr[n+1,m+1]=polcoeff(v[m+1],
 2*n+if(k%4==0,0,1))/polcoeff(u[n+1],2*n+if(k%
4==0,0,1));v[m+1]=v[m+1]-mr[n+1,m+1]*u[n+1]));mr

Kevin