edgarcosta / hilbertmodularforms

Mockup implementation of Hilbert Modular Forms
BSD 3-Clause "New" or "Revised" License
8 stars 15 forks source link

incorrect computation of ring of modular forms #438

Open adammlogan opened 8 months ago

adammlogan commented 8 months ago

The code appears to give an incorrect answer when asked to compute the ring of Hilbert modular forms of level $(3)$ over ${\mathbb Q}(\sqrt 5)$. After attaching the spec I did:

flab := "2.2.5.1"; nlab := "9.1";
time st := WriteCanonicalRingComputationToString(flab,nlab);

However, the sanity check failed (the two Hilbert series are different as of degree 40) and the ring computed is not integral. The scheme defined by the equations has two components, one of dimension 1 and one of dimension 0.

The default method gives precision 640, generator bound 20, and relation bound 40. Assuming that the problem has to do with missing generators or relations or insufficient precision, I reran HilbertModularVariety with larger values (1500, 30, 60), but with the same result.

adammlogan commented 8 months ago

I talked to John about this and he believes that the problem is that these degrees are still too small. I am a bit skeptical because of the reducibility.

Another anomaly occurs with flab := "2.2.5.1"; nlab := "19.1"; Everyone agrees that there should be 4 elliptic points, two of type (3;1,1) and two of type (3;1,2). The (3;1,2) seem fine, but a (3;1,1) point on a surface gives rise to a component of degree 5 in the singular subscheme. (I got this by mapping ${\mathbb A}^2$ to ${\mathbb A}^4$ by $(x^3:x^2y:xy^2:y^3)$.) However, the two singular points on the surface that aren't (3;1,2) are in components of the singular subscheme of degree 10. Again, it's possible that the degrees are just too small and that a longer computation would produce the correct ring of modular forms.

A third occurs for flab := "2.2.8.1"; nlab := "17.1";, where Hamahata claims that the surface is of general type but I find a genus-1 fibration for Proj of the ring calculated by the code. [Edit: according to Eran, Hamahata's argument is wrong. So this may not be a problem after all.]

adammlogan commented 7 months ago

I ran it again with the bounds (3000,40,80) and got something that is at least plausible (as in, it's an irreducible surface), and looking at what I had before I see equations like x[3]^4*x[4]^4 that obviously indicate insufficient precision. I seem to have produced a model with only canonical singularities in ${\mathbb P}^7$; Magma tells me that it satisfies $h^0(K) = 0$, as it should be, and $K^2 = 0$, which is reasonable since the LMFDB page gives $-1$ but I've done all sorts of things that are only birational (and we know the cusp resolutions, at least, can be blown down). So I'm willing to believe that this calculation of the ring of modular forms is correct. [Added later: further calculations in Magma seem to show that my model is an Enriques surface. Looking back, I don't know why I thought that it had to be of general type--Hamahata doesn't say so--except that the LMFDB entry says $K^2 = -1$ and there are two disjoint $-1$-curves in the cusp resolutions, which when you blow them down should give a surface with $K^2 = 1$. So maybe I was wrong to think that the value for $K^2$ given there is meant to apply to the cusp resolutions?]

I'll keep trying to figure out what's going on with the other two, but it's perfectly plausible that the only problems are my lack of understanding and that the default bounds are too small in some cases.