Computing Picard Lattices of K3 Surfaces

Lecture 3: Lower bounds: from periods to curves

Edgar Costa (MIT)

ICERM: Arithmetic, Geometry and Computations on K3 surfaces
September 16, 2026

Supported by the Simons Foundation

Slides available at edgarcosta.org

The other direction

  • Two lectures of upper bounds. Reduction gave ρ≤ρ(Xpal), and the obstruction sharpened this upper bound on the rank.
  • The rank alone does not determine the Picard lattice: it says nothing about the intersection form, nothing about the Galois action, and exhibits no curve.

Today: produce the classes. A lower bound is a curve you can write down, and enough curves with their intersections is the lattice itself.

An analytic approach

Lefschetz (1,1) theorem

A homology class γ∈H2(X, ℤ) is in Pic X if and only if γωX = 0, where ωX is the nonzero holomorphic 2-form ωX on X, unique up to scaling.

H2(X, ℤ) ⟶ℂ, γ↦∫γωX.

Hence, if Π∈ℂ22 represents this map, then we are reduced to finding a (saturated) lattice Λ⊂H2(X, ℤ) of solutions

ΠR = 0, R ∈H2(X, ℤ) ≃ℤ22.

An analytic approach

  • Π can be computed:
  • Heuristically, via lattice reduction algorithms, we can find Λ⊂H2(X, ℤ).
  • There is no obvious way to prove that our guesses are actually correct.
  • Nonetheless, given Π as a ball, one can compute B ≫0 such that

    Pic (X)∣B := ℤ ⟨γ∈Pic X ∣−γ2prim < B ⟩⊆Λ (Lairez-Sert\"{o}z).

Our setup

Let C be a nice (smooth, projective, geometrically integral) curve over k of genus g given by equations. Let J be the Jacobian of C.

Goal

Given the equations of C, compute the endomorphism ring End J.

Heuristic solution

J = ℂg / ΛJ, the period lattice ΛJ computed numerically, to high precision, from a basis of H0(C, ΩC).

By picking a k-basis for H0(C, ΩC), we have

End (J) = { T ∈Mg(k) ∣T ΛJ ⊂ΛJ }

Hence, if Π is a period matrix for C, i.e., ΛJ = Πℤ2g, then we are reduced to finding a -basis of the solutions (T, R) to

T Π= ΠR, T ∈Mg(k), R ∈M2g(ℤ).

The Galois module structure of End (J) is given via its action on T ∈Mg(k).

Heuristically, via lattice reduction algorithms, we can find such a -basis.

There is no obvious way to prove that our guesses are actually correct.

Representing endomorphisms via correspondences

αC :C AJ J α J ⇢Sym g(C)P ↦{Q1, ..., Qg} ⟺α([P − P0]) = [ ∑i=1g Qi − P0 ]

This traces out a divisor on C ×C, which determines α.

This divisor is a certificate of containment for α∈End J.

Theorem (C-Mascot-Sijsling-Voight)

We give an algorithm for nondegenerate α∈Mg(k)

α↦{trueif α∈End J, and a certificatefalseif α∉End J

By interpolation via αC or by locally solving a differential equation on C ×C.

Examples

  • We have verified, decomposed and matched the 6,216,959 curves over of genus 2 in the L-functions and modular form database LMFDB.org
  • The algorithm verifies that the following genus 4 curve over ℚ(√(3))

    0= −8x2 + 8xy + 17y2 − 34xz − 2yz − 28z2 − 10xw − 9yw − 18zw + 2w2,0= 4x3 − 6x2 y − 6x y2 + 12x2 z + 6xyz + 24y2 z − 12x z2 − 24z3 + 2x2 w + 7xyw+ 4y2 w + 4xzw − 13yzw − 8z2 w − 20x w2 − 3z w2 − 12w3

    has real multiplication by the maximal order of ℚ(x)/(x4 − x3 − 3x2 + x + 1).

    The first step to show that, under Langlands, it corresponds to a specific Hilbert modular form f, i.e., Jℚ(√(3)) ∼Af. We used this in a recent project, where we show that the 2-isogeny field of Af solves the inverse Galois problem for PSL 2(𝔽16) ⋊C217T7.

  • Our method works just as well for isogenies and projections.
  • Try it: github.com/edgarcosta/endomorphisms, putatively in Magma by the end of the semester.

Picard lattice of a K3 surface

Goal

From the equations of X, compute Pic X ⊂H2(X, ℤ) as a Gal (k/k)-module.

Recall Lecture 1: we are doing this via a running example.

A running example inspired by Klein-Mukai

X : x4 + xyzw + y3z + yw3 + z3w = 0 ⊂ℙ3

This example started at a workshop at ICERM about thinking about K3 surfaces on the LMFDB.

  • It is the ψ=−1/4 fiber of the pencil F1L3, which has generic rank 19, thus rank Pic Xal ≥19.
  • Matching upper bounds can be deduced by positive characteristic methods: Lectures 1 and 2 give rank Pic Xal ≤19.
  • The pencil has a symplectic ℤ/7ℤ action. Its coinvariant lattice Ω7=(H2(X,ℤ)ℤ/7ℤ) has rank 18 and determinant 73.
  • Pic (Xal)=⟨4⟩⊕Ω7, of determinant 4·73=1372 and saturation index 1.

A running example inspired by Klein-Mukai

  • Heuristically, one computes Λ≃ℤ19 such that

    ΠΛ≈0 Pic (Xal)|B ⊆Λ? Pic Xal.

  • We can compute Aut Λ, the isomorphism class seems to be F42 ×PGL (2,7).
  • No small rational curves: There are no lines, no conics, no twisted cubics.
  • The "smallest" non-trivial curves that appear are smooth rational quartics.
  • Lattice computations with Λ predict that there are

    133056

    smooth rational quartics spanning Λ.

Reconstructing isolated curves from their Hodge classes

Turns out one can compute a bit more for hypersurfaces

φ:H2(X, ℤ) ×H2dR(X/k) →ℂ (γ, ω) ⟼∫γω

Note, if γ∈Pic Xal, then (1)/(2πi)∫γω∈kal for ω∈F1 H2dR(X/k).

Theorem (Movasati-Sertöz)

If γ= [C] ∈H2(X, ℤ) for a curve C ⊂X then from (1)/(2πi)(∫γω)ω∈F1 one can construct an ideal Iγ such that I(C) ⊊Iγ.

Reconstructing isolated curves from their Hodge classes

In favorable circumstances we expect low order equations in Iγ to span I(C).
For example, smooth rational curves of degree up to 4 in K3s.

We need "isolated" classes, so elliptic curves are also hard. An elliptic curve C has [C]2 = 0 and moves in a pencil, so its periods do not determine a single curve.

No hope to recover rational curves of degree higher than 4. For d ≥5 one needs a ≥3 before I(C)a is non-zero, and there the Jacobian ideal contributes superfluous equations, so I(C)a ⊊Iγ,a.

Theorem (Cifani-Pirola-Schlesinger)

For a smooth rational quartic curve C ⊂X we have that the equation of the quadric surface containing C generates I[C],2, i.e., I(C)2 = I[C],2.

Reconstructing quadric surfaces

X : x4 + xyzw + y3z + yw3 + z3w = 0 ⊂ℙ3

Pic (X)|B ⊆Λ? Pic X

Goal

Reconstruct the quadric surfaces containing some of the 133056 smooth rational quartics in X using the curve classes.

  • Fortunately, there is a small Aut (Λ) orbit of size 336:
    133056 = 336 + 1008 + 1176 + 3528 ·3 + 4704 ·3 + 7056 ·9 + 14112 ·3
  • For each quartic curve C ⊂X, we can compute

    I[C],2 = ⟨a0 x2 + ⋯+ a9 w2

    that defines a quadric surface Q, such that Q ∩X = C ∪C. Hence, we expect an orbit of 168 quadrics each containing a pair of quartics.
  • We aim reconstruct the ten (algebraic!) coefficients of these quadrics.

Reconstructing quadric surfaces

Goal

Reconstruct the ten coefficients ai of these quadrics in a Galois orbit of size 168.

  • The minimal polynomials have large height about 9k characters, e.g.:

    x16810014013832542203812872613924739x161 + 171047690745503707515328576627906817785436888130925209472262244x1541268317331496745879603035032448157273146519836562713924560050631153969519297207668270922371313x147 + 23237703563539410755436556575134206593366430461423708193774287327245213403024087108979694756912313

  • Every computation must be done extremely selectively!
  • We are presented with same 168 degree field L in 9 different ways.

Isomorphism problem

The abstract isomorphism problem feels hopeless.

Goal

Construct ℚ(ak) ↪L, where L = ℚ(a0, ..., a9) = ℚ(a0).

In our case, we have all the compatible embeddings

σi : ℚ(ak) ↪L ↪ℂ

Thus the isomorphism is given by the solution of the following linear system

i(ak)j}i, j ·v = {σi(a0)}i, v ∈ℚ168

Distinct nodes make i(ak)j} invertible, so the solution v ∈ℚ168 is unique; the denominators of v are bounded a priori, so enough precision pins v down exactly and the isomorphism is then verified exactly.

In practice it is faster to refine the complex embeddings iteratively: their height is 4k digits, not 120k.

Intersecting the quadric surfaces with the K3 surface

Q : a0 x2 + a1 x y + ⋯+ a9 w2 = 0 ⊂ℙ3, [L := ℚ({ai}i):ℚ] = 168

Goal

Show that Q ∩X decomposes into two quartic curves.

  • It suffices to show that the singular locus S of Q ∩X consists of 10 distinct reduced points.
  • Hopeless to do this directly! Operations in L are seriously expensive!
    Linear algebra. 😰 Gröbner basis. 😱
    One needs to compute S by hand, and clear denominators before that.
  • Working over 𝔽p we find 10 distinct points.
    Hence, S is zero-dimensional and reduced, and deg S ≤10.
  • We conclude deg S = 10 via Gotzmann regularity theorem,
    by checking that dim L[x,y,z,w]/I = 10 for •= 6,7, where I is saturated and V(I) = S.

Certifying Pic X = Λ

Q : a0 x2 + a1 x y + ⋯+ a9 w2 = 0 ⊂ℙ3, [L := ℚ({ai}i):ℚ] = 168ΛQ := ⟨[C] : C ⊂σ(Q) ∩X, σ: L ↪ℂ ⟩⊆Pic (X)|B ⊆Λ? Pic X

The inclusion ΛQ ⊆Λ is not explicit!

Nonetheless, Pic X and Λ are saturated in H2(X, ℤ).

Hence, it is sufficient to show that rank ΛQ = rank Λ= 19.

We can do this in two ways:

  • Compute the intersections of these 336 curves with each other over 𝔽p.
  • Certify that these correspond to the original classes.
    Showing that there are at most 66528 distinct quadrics. Can be done over .
    This establishes a bijection between quadric surfaces and the 168 pairs of quartic curve classes that they correspond to.

Pic X = Λ

Computing the Galois action

Q : a0 x2 + a1 x y + ⋯+ a9 w2 = 0 ⊂ℙ3, [L := ℚ({ai}i):ℚ] = 168

Q ∩X decomposes into a pair of quartics over K a quadratic extension of L.

Goal

Compute K and Gal (K/ℚ) acting on ΛQ.

Via the identification with the original classes we have (1)/(2 πi) ( ∫C ω)ω∈F1 ∈K21.

These can be reconstructed in the same fashion as we reconstructed ai.

Unclear how to certify this step! What are the denominators of (1)/(2 πi) ∫C ω?

For Q smooth, K = L(√(disc Q)) [Costa-Sertöz].

Computing the Galois action

Q : a0 x2 + a1 x y + ⋯+ a9 w2 = 0 ⊂ℙ3, [L := ℚ({ai}i):ℚ] = 168

Q ∩X decomposes into a pair of quartics over K a quadratic extension of L.

Goal

Compute K and Gal (K/ℚ) acting on ΛQ.

The direct computation of Gal (K/ℚ) looks hopeless.

We guess that K = F(√([)14]u) where [F : ℚ] = 24 and Gal (F/ℚ) = C3 ×PGL (2,7).
Note, #Gal (F/ℚ) is 14 times smaller than #Aut Pic X.

There is a new paper about computing Galois groups of this kind of polynomial [Elsenhans-Steel].

  1. Can we compute Gal (K/ℚ)?
  2. Gal (K/ℚ) ?= Aut Λ?
  3. H1(Gal (k/k), Pic X) = ?

Summary

Theorem (C-Sertöz)

The quartic surface X : x4 + xyzw + y3 z + yw3 + z3 w = 0 ⊂ℙ3 has Pic X = Λ, generated by quartics over a quadratic extension of L := ℚ({ai}i).

We are still developing the method and figure out its applications/limitations.

Wanna be a Theorem (C-Sertöz)

There is a practical algorithm to compute the saturation of the lattice generated by rational curves of degree up to 4.

Do you have a challenge K3 surface for us?

We are trying to cover all the K3 surfaces given by five nomials.

Periods computed for all 161 examples; most work with very little precision.

Mukai (X153): 336 curves; the quadric coefficients generate a degree-168 field.

X110 is much worse than Mukai: the degree-288 polynomial is recovered, but compatible inclusion into a degree-576 field is still stuck.

Lecture 3