Skip to content

use rational_kernel_polynomial() in isogenies_prime_degree_general()#42456

Open
yyyyx4 wants to merge 4 commits into
sagemath:developfrom
yyyyx4:public/use_rational_kernel_polynomial_in_isogenies_prime_degree_general
Open

use rational_kernel_polynomial() in isogenies_prime_degree_general()#42456
yyyyx4 wants to merge 4 commits into
sagemath:developfrom
yyyyx4:public/use_rational_kernel_polynomial_in_isogenies_prime_degree_general

Conversation

@yyyyx4

@yyyyx4 yyyyx4 commented Jun 29, 2026

Copy link
Copy Markdown
Member

...for a pretty huge speedup in computing ℓ‑isogeny neighbours in some (really: most!) cases.

Example:

sage: E = EllipticCurve(GF(419), [1, 1])
sage: for l in [37, 43, 53, 61, 67, 73, 79, 83, 89, 97]:
....:     print(l, '|', timeit(f'E.isogenies_prime_degree({l})'))

Timings from 10.10.beta4:

37 | 5 loops, best of 3: 329 ms per loop
43 | 5 loops, best of 3: 398 ms per loop
53 | 5 loops, best of 3: 3.08 s per loop
61 | 5 loops, best of 3: 6.11 s per loop
67 | 5 loops, best of 3: 33.2 s per loop
73 | 5 loops, best of 3: 37 s per loop
79 | 5 loops, best of 3: 3.92 s per loop
83 | 5 loops, best of 3: 3.15 s per loop
89 | 5 loops, best of 3: 33.7 s per loop
97 | 5 loops, best of 3: 24.3 s per loop

Timings from this branch:

37 | 5 loops, best of 3: 79.5 ms per loop
43 | 5 loops, best of 3: 103 ms per loop
53 | 5 loops, best of 3: 44.3 ms per loop
61 | 5 loops, best of 3: 58.9 ms per loop
67 | 5 loops, best of 3: 71.4 ms per loop
73 | 5 loops, best of 3: 85.6 ms per loop
79 | 5 loops, best of 3: 271 ms per loop
83 | 5 loops, best of 3: 292 ms per loop
89 | 5 loops, best of 3: 129 ms per loop
97 | 5 loops, best of 3: 157 ms per loop

Depends on: #42436. (This branch is based on that one; only the most recent commit is new.)

@github-actions

github-actions Bot commented Jun 29, 2026

Copy link
Copy Markdown

Documentation preview for this PR (built with commit 8cba99b; changes) is ready! 🎉
This preview will update shortly after each push to this PR.

@yyyyx4 yyyyx4 force-pushed the public/use_rational_kernel_polynomial_in_isogenies_prime_degree_general branch from 6d6d470 to 4798c7f Compare June 29, 2026 15:24
@yyyyx4 yyyyx4 force-pushed the public/use_rational_kernel_polynomial_in_isogenies_prime_degree_general branch from 4798c7f to 8cba99b Compare June 30, 2026 16:59
@yyyyx4 yyyyx4 marked this pull request as ready for review July 1, 2026 06:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant