Computation of Canonical Heights on Genus 2 Jacobians

Michael Stoll

Max-Planck-Institut für Mathematik, Bonn Heinrich-Heine-Universität, Düsseldorf

The Problem

Let

C : Y^{2} = F (X) = f_{6}X^{6} + f_{5}X^{5} + ⋯ + f_{0}

be a genus 2 curve over k, where k = ℚ or k = k_{0}(t) (say). Let J be the Jacobian of C, and P ∈ J(k). We want to find the canonical height ĥ(P).

− 2 −

What is the Canonical Height?

The quotient of J by the action of {±1} is a hypersurface K ⊂ ℙ^{3}, the Kummer Surface of J. Let π : J ⟶ K be the quotient map. We define the naive height on J via

h(P) = h(π(P))

where height on projective space is defined as usual

h(x_{0} : ⋯: x_{n}) = ∑_{v} log max{|x_{0}|_{v}, …, |x_{n}|_{v}}

where v runs through the places of k, and the | · |_{v} satisfy the product formula ∏_{v} |x|_{v} = 1 for x ∈ k^{×}. Then

ĥ(P) = lim_{n→∞} \frac{h(nP)}{n^{2}}

exists und defines a positive definite quadratic form on J(k) ⊗_{ℤ} ℝ. h − ĥ is bounded.

− 3 −

What is it Good for?

Let T = J(k)_{tors} be the torsion subgroup of A(k).

Let Λ = J(k)/T ≅ ℤ^{r} (where r is the Mordell-Weil rank).

Then (Λ, ĥ) is a lattice. We can use this additional structure in order to find J(k) (given a finite index subgroup).

We need

(1) A bound for the global height constant γ = sup_{P ∈J(k)}(h(P) − ĥ(P));

(2) An algorithm that computes ĥ(P) for P ∈ J(k);

(3) A method for enumerating all P ∈ J(k) with h(P) ≤ some bound.

We will concentrate on (2) in this talk. This also provides bounds as needed in (1). (3) is OK for k = ℚ if the bound is not too large.

− 4 −

Duplication on K

Since multiplication by 2 commutes with ±1, there is a map δ : K ⟶ K, given by homogeneous polynomials of degree 4 such that δ(π(P)) = π(2P).

One can arrange to have π(O) = (0 : 0 : 0 : 1), δ = (δ_{1}, δ_{1}, δ_{3}, δ_{4}) to have coefficients that are in ℤ[f_{0}, …, f_{6}] and such that δ(0, 0, 0, 1) = (0, 0, 0, 1).

Let x = (x_{1}, x_{2}, x_{3}, x_{4}) be projective coordinates of π(P) where P ∈ J(k_{v}). Then we define

ε_{v}(P) = ε_{v}(x) = log max_{j} |δ_{j}(x)|_{v} − 4 log max_{j} |x_{j}|_{v}

If C is integral at v, then log |2^{4} disc(F)|_{v} ≤ ε_{v} ≤ 0.

In particular, ε_{v} = 0 if v is a place of good reduction of C.

− 5 −

Local Heights

Let P and x as above. We set

μ_{v}(P) = μ_{v}(x) = ∑_{n=0}^{∞} 4^{−n−1}ε_{v}(2^{n}P)
λ_{v}(x) = log max_{j} |x_{j}|_{v} + μ_{v}(x)

λ_{v}(x) is the local height of x. Then

ĥ(P) = h(P) + ∑_{v} μ_{v}(P) = ∑_{v} λ_{v}(x)

Proof:

ĥ(P) = lim_{n→∞} 4^{−n}h(2^{n}P)

= h(P) + ∑_{n=0}^{∞} 4^{−n−1}(h(2^{n+1}P) − 4h(2^{n}P))

= ∑_{v} (log max_{j} |x_{j}|_{v} + ∑_{n=0}^{∞} 4^{−n−1}ε_{v}(2^{n}P))

= ∑_{v}(log max_{j} |x_{j}|_{v} + μ_{v}(x)) = ∑_{v} λ_{v}(x)

− 6 −

Properties of the Local Height

The local height behaves like a quadratic form:

λ_{v}(δ(x)) = 4 λ_{v}(x) ,

plus an analogue of the parallelogram law. μ_{v}(P) mod ℓ_{v} is quadratic for v non-archimedean, where ℓ_{v} ∈ ℝ generates the image of log | · |_{v}:

μ_{v}(P + Q) + μ_{v}(P − Q) ≡ 2μ_{v}(P) + 2μ_{v}(Q) mod ℓ_{v} . We can transform the given curve C into τ(C) by

τ : (x, y) ⟼ (\frac{ax + b}{cx + d}, \frac{ey}{(cx + d)^{3}})

where ad − bc ≠ 0 and e ≠ 0. This induces a map on projective Kummer coordinates τ : k^{4} ⟶ k^{4} of determinant det(τ) = e^{2}(ad − bc)^{−3}. Theorem.

λ_{τ(C),v}(τ(x)) = λ_{C,v}(x) − log | det(τ)|_{v}.

Hence we can choose a better model if we wish. Note also that the local height does not change when we replace k_{v} be a field extension with absolute value extending | · |_{v}.

− 7 −

More Structure

Theorem. Suppose that v is non-archimedean and F has v-integral coefficients. Then the set of points P ∈ J(k_{v}) such that ε_{v}(P) = 0 forms a subgroup U_{v} containing the kernel of reduction (w.r.t. the given model). Furthermore, ε_{v} factors through J(k_{v})/U_{v}. In particular, μ_{v} = 0 if C has good reduction at v.

Corollary. Under the hypotheses of the theorem, ε_{v}(P) = 0 ⟺ μ_{v}(P) = 0, and μ_{v} factors through J(K_{v})/U_{v}.

If k is a number field or a global function field, then U_{v} has finite index in J(k_{v}) (since the kernel of reduction is of finite index).

In general, if P has finite order n in J(k_{v})/U_{v}, we can compute μ_{v}(P) by determining ε_{v}(mP) for 1 ≤ m < n or by computing the n-fold δ^{(n)}(x) on Kummer coordinates; then μ_{v}(P) = n^{−2} log |δ^{(n)}(x)|_{v} − log |x|_{v} (where |x|_{v} = max_{j} |x_{j}|_{v}).

− 8 −

Special Cases

If k = ℚ(t) for example, U_{v} need not have finite index in J(k_{v}). It would be nice if one could always find for given v and P ∈ J(k) a v-integral model of C (maybe over some extension of k_{v}) such that P has finite order modulo U_{v}.

This seems not to be the case in general (but I’m working on this problem).

However, in some cases one can show that U_{v} has finite index.

Theorem. If C is semi-stable at v (i.e., the reduction of F has at most double roots in ℙ^{1}), then J(k_{v})/U_{v} is finite and equals the component group of the Néron model of J at v.

If the reduction of F is not a square, there are explicit formulas for μ_{v}.

In the remaining case, we know at least the exponent of the component group, hence we have a multiple of the order n of P mod U_{v}.

− 9 −

Algorithm

Input: • A polynomial F ∈ k[X]

defining a genus 2 curve C : Y^{2} = F (X);

• A point P ∈ J(k).

Output: The canonical height of P.

1. Let S be the finite set of places v of k such that v is archimedean or F ∉ O_{v}[X] or ε_{v}(P) ≠ 0. (Then μ_{v}(P) = 0 for v ∉ S.)

2. For each v ∈ S, compute μ_{v}(P).

v archimedean: use floating-point arithmetic

to compute μ_{v}(P) to the desired precision. v non-archimedean: change to v-integral model

such that ε_{v}(nP) = 0 for some n and compute μ_{v}(P) as a linear combination of ε_{v}(mP) (m = 1, …, n − 1) plus a correction term.

3. Return ĥ(P) = h(P) + ∑_{v∈S} μ_{v}(P).

− 10 −

Example

Let k = ℚ(t) and consider the curve (Elkies)

C : Y^{2} = (X^{3} + t X^{2} − X + t − 1)^{2} − 4(t^{2} − t) X^{2}

and the point P = [(0, t − 1) − ∞_{1}] ∈ J(k).

1. S = {∞, 0, 1}: On K, P has coordinates

x = (0, 1, 0, −2t + 2) , δ(x) = (0, 0, 64 t(t − 1)^{3}, 128 t(t − 1)^{3})

2. At 0 and 1, the given model is semistable, with ε_{0}(3P) = 0 and ε_{1}(7P) = 0, leading to

μ_{0}(P) = −1/3 , μ_{1}(P) = −6/7 .

At ∞, we multipliy F by t^{−2} to make the model integral. It is then semistable with ε_{∞}(26P) = 0, leading to

μ_{∞}(P) = −21/26 + 1 = 5/26 .

3. Together, this gives

ĥ(P) = h(P) + μ_{0}(P) + μ_{1}(P) + μ_{∞}(P)
= 1 − 1/3 − 6/7 + 5/26 = 1/546 .

This is the point of smallest positive height on a genus 2 Jacobian over ℚ(t) I know of.

− 11 −