Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Computing canonical heights on elliptic
curves in quasi-linear time
Steffen Müller (Universität Oldenburg)
and
Michael Stoll (Universität Bayreuth)
ANTS–XII
TU Kaiserslautern
1 / 16
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Part I
Canonical heights on elliptic curves
2 / 16
Canonical
heights in
quasi-linear
time
Naive height
Let E /Q be an elliptic curve, given by an equation
W : y 2 + a1 xy + a3 y = x 3 + a2 x 2 + a4 x + a6 ,
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
where a1 , . . . , a6 ∈ Z and ∆(W ) 6= 0.
Let
Q =
aQ b Q
,
dQ2 dQ3
!
∈ E (Q), where
aQ , bQ , dQ ∈ Z and gcd(aQ , dQ ) = 1 = gcd(bQ , dQ ).
The naive height of Q is given by
h(Q) := log max |aQ |, dQ2 ∈ R≥0 .
We also set h(O) = 0 for O = (0 : 1 : 0) ∈ E (Q).
3 / 16
Canonical
heights in
quasi-linear
time
Properties and applications
The canonical height (or Néron-Tate height) of Q ∈ E (Q) is
ĥ(Q) := lim 4−n h(2n Q) ∈ R≥0 .
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
n→∞
Properties.
I ĥ is a quadratic form.
I Ψ := h − ĥ is bounded.
I {Q ∈ E (Q) : ĥ(Q) ≤ B} is finite for all B ∈ R≥0 .
I ĥ(Q) = 0 if and only if Q has finite order.
Goal. Given Q ∈ E (Q), compute ĥ(Q).
Applications. Required to compute
I generators of E (Q),
I the regulator of E (Q) (appearing in the BSD-conjecture).
Idea. h(Q) is easy to compute. Only need Ψ(Q).
4 / 16
Local height correction functions
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Néron ’65. Local decomposition
X
Ψ =
Ψp + Ψ∞
p prime
of Ψ = h − ĥ such that
I
Ψv : E (Qv ) → R is v -adically continuous and bounded
for every place v of Q;
I
Ψp (Q) = 0 if Q ∈ E (Qp ) is smooth modulo p;
I
Ψ∞ is essentially − log |σ|, where σ is the Weierstrass
sigma-function.
5 / 16
Archimedean correction
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Bost-Mestre ’93 (unpublished). Can compute Ψ∞ (Q) for
Q ∈ E (R) to d bits of precision in time quasi-linear in d and
in log kW k, where kW k = max{|a1 |, . . . , |a6 |}.
I
Uses degeneration to a singular curve via a sequence of
2-isogenies.
I
Isogenies yield quadratically convergent
arithmetic-geometric mean formula.
I
Extension to complex places work in progress (Caselli).
I
Alternative algorithms due to Tate and Silverman.
6 / 16
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Non-archimedean corrections
Silverman ’88. Fast algorithm to compute Ψp (Q) for p prime
and Q ∈ E (Qp ), provided W is minimal at p.
Uses:
Néron ’65. If W is minimal at p, then Ψp factors through the
finite group E (Qp )/E0 (Qp ), where E0 (Qp ) is the set of points
having non-singular reduction w.r.t. W .
P
Problem. To find Ψf (Q) := p Ψp (Q) for Q ∈ E (Q) using
this approach, need some integer factorization.
I
Factorization of the discriminant ∆(W ) suffices.
I
Silverman ’97. Computing a globally minimal Weierstrass
equation also suffices – but this needs factorization of
gcd(c4 (W ), c6 (W )).
7 / 16
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Part II
An algorithm running in quasi-linear time
8 / 16
A new complexity estimate
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Theorem (M.–Stoll ’15). Let E be given by a Weierstrass
equation W with coefficients in Z and let Q ∈ E (Q).
There is an algorithm which computes ĥ(Q) to d bits of
precision in time quasi-linear in the input size h(Q) + log kW k
and in the output size d + h(Q).
I
Requires no integer factorization at all.
I
Does not need minimality of W .
9 / 16
Canonical
heights in
quasi-linear
time
Series expression for correction functions
There are f , g ∈ Z[x] with the following property:
If Q = (xQ , yQ ) ∈ E \ E [2], then 2Q = (x2Q , y2Q ) with
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
x2Q = g (xQ )/f (xQ ) .
Get
h(2Q) − 4h(Q) =
X
ϕv (Q) for Q ∈ E (Q) ,
v
where, for a place v of Q, we set ϕv (O) := 0 and
ϕv (Q) := log
max{|f (xQ )|v , |g (xQ )|v }
for Q ∈ E (Qv ) \ {O}
max{|xQ |4v , 1}
By Tate’s telescoping trick, can take
Ψv (Q) = −
∞
X
4−n−1 ϕv (2n Q) for Q ∈ E (Qv ) .
n=0
10 / 16
Canonical
heights in
quasi-linear
time
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Computing non-archimedean corrections
Let p be a prime, Q ∈ E (Qp ) . Set
I εp (Q) := −ϕp (Q)/ log p ∈ Z≥0 .
I µp (Q) := Ψp (Q)/ log p ∈ Q≥0 .
From
∞
X
Ψp (Q) = −
4−n−1 ϕp (2n Q)
n=0
get
µp (Q) =
∞
X
4−n−1 εp (2n Q) .
n=0
Idea for computing µp (Q) (and hence ψp (Q)).
I Show that 0 ≤ εp (2n Q) ≤ ordp (∆(W )).
I Show that denom(µp (Q)) ≤ ordp (∆(W )).
I Compute a sufficiently close approximation of µp (Q) and
then find it exactly using continued fractions.
Usually slower than Silverman’s algorithm – but more suitable
for globalization!
11 / 16
Canonical
heights in
quasi-linear
time
Approximating Ψf
Goal. Without knowing which primes p contribute, compute
X
X
Ψf (Q) =
Ψp (Q) =
µp (Q) log p .
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
p
p
for Q ∈ E (Q).
I
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Have
Ψf (Q) =
∞
X
n=0
I
I
I
4−n−1
X
p
εp (2n Q) log p =
∞
X
4−n−1 log gn ,
n=0
where gn ∈ Z≥0 .
Since εp (2n Q) ≤ ordp (∆(W )), get gn | ∆(W ) for all n.
Can compute the gn by repeatedly applying f and g ,
modulo a suitable power of ∆(W ), and computing gcds.
P
−n−1 log g for m ∈ N and
Can bound the error of m
n
n=0 4
approximate Ψf (Q) to any desired precision.
12 / 16
Canonical
heights in
quasi-linear
time
Computing Ψf exactly
Can also compute
Ψf (Q) =
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
X
µp (Q) log p =
p
∞
X
4−n−1 log gn
n=0
exactly (as a rational combination of logs) for Q ∈ E (Q).
Algorithm (M.–Stoll ’15).
(1) Compute bounds m and B, using the bounds on εp (Q)
and on denom(µp (Q)) for all p.
(2) Compute g0 , . . . , gm , working modulo ∆(W )m+2 .
(3) Find pairwise coprime
q1 , . . . , qs and ei,n ∈ Z≥0
Qs integers
ei,n
such that gn = i=1 qi for all n.
(4) For all i ∈ {1, . . . , s}:
Pm
(a) compute a := n=0 4−n−1 ei,n ,
(b) let µi be the simplest fraction between a and a + 1/B 4 .
(5) Return Ψf (Q) =
Ps
i=1 µi
log qi .
13 / 16
Factorization into coprimes
Canonical
heights in
quasi-linear
time
For step (3) we use:
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Bernstein ’04. Given g0 , . . . , gm ∈ N there are unique
q1 , . . . , qs ∈ N such that
I
the qi are pairwise coprime;
I
every gQ
n is a product of powers of the qi , i.e.
e
gn = si=1 qi i,n for ei,n ∈ Z≥0 ;
I
the qi can be computed from the gn using only
multiplication, exact quotients and gcds.
Bernstein gives a quasi-linear algorithm to compute the qi .
Simpler, but quadratic algorithms due to Bach-Driscoll-Shallit
’93, see also Buchmann-Lenstra ’94.
14 / 16
Canonical
heights in
quasi-linear
time
Precise complexity analysis
Precise statement:
Canonical
heights
Definitions
Properties
Local corrections
An algorithm
running in
quasi-linear
time
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
Theorem (M.–Stoll ’15). Let E be given by a Weierstrass
equation W with coefficients in Z and let Q ∈ E (Q).
Let M(n) denote the time needed to multiply two n bit
integers.
Then we can compute ĥ(Q) to d bits of precision in time
log(d + h(Q)) M(d + h(Q))
+ (log log kW k) M (log log kW k)(log kW k)
+ log(d + log kW k)2 M(d + log kW k)
∈ Õ(d + h(Q) + log kW k) .
15 / 16
Canonical
heights in
quasi-linear
time
Extensions
I
I
Canonical
heights
Definitions
Properties
Local corrections
Works similarly over number fields
I
I
An algorithm
running in
quasi-linear
time
Can be extended to Jacobians of curves of genus 2
(M.-Stoll ’16)
I
I
New complexity
Series for local
corrections
Computing finite
local corrections
Extensions
I
I
I
I
totally real fields (with class number 1) immediate;
other cases work in progress due to Caselli.
work on Kummer surface;
compute Ψf similarly;
also works over number fields;
no analogue of Bost-Mestre for computing Ψ∞ known (use
Richelot-isogenies?), instead we use series expansion;
get an algorithm for ĥ which is quasi-linear in the input
size and quasi-quadratic in the desired number of bits of
precision.
Idea of our algorithm has been extended to morphisms
ϕ : P1 → P1 by Wells (’16).
16 / 16
© Copyright 2026 Paperzz