Skip to content

√élu algorithm: asymptotically faster elliptic-curve isogenies #34303

@yyyyx4

Description

@yyyyx4

Sage currently computes an isogeny of prime degree using ϴ(ℓ) base-field operations. We can achieve the same task in Õ(√ℓ) operations using the √élu algorithm; see https://velusqrt.isogeny.org.

This patch adds a fairly reasonable implementation of the algorithm to Sage. It works for odd-degree isogenies over all finite fields and can outperform the current EllipticCurveIsogeny class starting from degrees around 100, depending on the concrete performance of the underlying base-field and polynomial arithmetic.

The new code is marked as experimental and isn't used anywhere by default. After some real-world testing and careful benchmarking, we can (and should) let Sage automatically decide which implementation to use for a given input.

CC: @defeo @JohnCremona @categorie @sagetrac-bensmith @sagetrac-tanja @tscrim @videlec @slel @kwankyu

Component: elliptic curves

Author: Lorenz Panny

Branch: a0f4c4a

Reviewer: John Cremona, Travis Scrimshaw, Kwankyu Lee

Issue created by migration from https://trac.sagemath.org/ticket/34303

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions