Research software for reproducible computational searches for elliptic curves over
The primary public objective of this project is to develop computational methods
for finding promising elliptic curves over
This repository does not claim a new rank record.
For an elliptic curve
This software supports several distinct stages of that process:
- constructing candidate curves with visible rational points;
- verifying those points using exact arithmetic;
- using local scores and Sage/PARI diagnostics to prioritize candidates;
- analyzing candidate Mordell-Weil subgroups;
- preparing data that may later support rigorous rank certification.
These stages should not be conflated. A list of visible rational points may be linearly dependent. A PARI rank estimate, numerical height-pairing rank, heuristic Mestre-Nagao score, or Selmer upper bound is not by itself a certified Mordell-Weil rank lower bound.
The initial public release focuses on stable, reproducible Track-A tooling:
- exact pure-Python search for curves
y^2 + x*y = x^3 + A*x + Bwith visible integral points from a structured residue-class ansatz; - exact pure-Python extension to rational points with denominator parameter
Z; - SageMath analysis of generated candidate curves;
- specialization construction and NumPy Mestre-Nagao scoring for a published Elkies-Klagsbrun family benchmark;
- SageMath reproduction of Fermigier's published 1997 rank-$\ge 22$ specialization, including the exact parameter convention, quartic/Jacobian construction, and historical score checkpoints;
- SageMath reproduction of Elkies's published 2026 rank-17 elliptic K3 fibration,
including exact verification of the 17 published sections, reconstruction of the
published height-pairing Gram matrix with determinant 948, and reproduction of the
published rank-at-least-28 specialization at
$t=-9529/5471$ ; - small reproducibility tests and examples.
Additional unpublished exploratory components are intentionally excluded from the initial public release unless and until they are mature enough for publication.
The specialization workflow is based on published methods of Mestre, Nagao, and Elkies-Klagsbrun.
In particular, the repository contains a small benchmark for the Elkies-Klagsbrun specialization at
u = 2/5
t = 11860/97527
This benchmark is included as a reproducibility and provenance artifact. It is not presented as a new mathematical result.
The repository also includes a SageMath reproduction of Stéfane Fermigier's
1997 rank-$\ge 22$ example at examples/fermigier_1997_rank22/.
The repository also includes an exact SageMath reproduction of Noam Elkies's
2026 rank-17 elliptic K3 fibration. The example reconstructs the published
Weierstrass model, verifies all 17 published sections, recomputes the published
height-pairing Gram matrix, and verifies determinant 948. A companion script
reproduces the published specialization at examples/elkies_2026_rank17/.
Any public statement about current record ranks should be treated as a time-sensitive claim and verified against citable sources before release.
Run a small pure-Python exact search:
python3 search_integral.py \
--umin -1 --umax 1 \
--vmin -3 --vmax 3 \
--min-points 3 \
--top 3 \
--output small_integral_demo.jsonExpected current top candidate:
A=-115
B=417
discriminant=18776000
distinct_x_count=3
visible_point_count=5
Run the lightweight test suite:
python3 -m unittest discover -s testsAnalyze an included exact example with SageMath:
sage sage_analyze.py example_curve.jsonReproduce the published Elkies-Klagsbrun specialization benchmark with SageMath:
sage search_specializations.py \
--u 2/5 \
--t 11860/97527 \
--output data/benchmarks/benchmark_u2_5_t11860_97527.jsonReproduce Fermigier's published 1997 rank-$\ge 22$ specialization:
sage examples/fermigier_1997_rank22/reproduce_rank22.sageReproduce Elkies's published 2026 rank-17 K3 fibration:
sage examples/elkies_2026_rank17/elkies_2026_rank17.sageReproduce the published rank-at-least-28 specialization:
sage examples/elkies_2026_rank17/elkies_2026_rank28_specialization.sageSee docs/reproducibility/SMALL_WORKFLOWS.md for additional reproducibility
notes and expected outputs.
The pure-Python baseline requires Python 3.11 or newer.
Specialization scoring requires NumPy.
Arithmetic analysis requires SageMath with PARI/GP and eclib/mwrank available.
Depending on platform, SageMath may be installed through conda-forge, a system
package manager, or the official SageMath distribution. See environment.yml
for a starting conda environment.
The public workflow is organized around a separation between search, analysis, and certification:
candidate construction
|
v
exact rational-point verification
|
v
cheap arithmetic / local scoring
|
v
candidate shortlist
|
v
SageMath arithmetic analysis
|
+--> visible rational points
+--> height-pairing diagnostics
+--> PARI diagnostics
+--> eclib / mwrank bounds
|
v
candidates requiring rigorous certification
The early stages are intentionally small and exact where practical. Expensive or heuristic searches should produce artifacts recording parameters, seeds, source references, and proof-status metadata.
Small workflows are documented in
docs/reproducibility/SMALL_WORKFLOWS.md.
The default tests avoid SageMath so that they can run quickly in ordinary Python environments. Sage-dependent workflows are documented separately because standard CI environments may not provide a practical Sage/eclib installation.
For computational claims, this project aims to preserve enough information to distinguish:
- exact computations;
- reproducible heuristic searches;
- numerical or diagnostic evidence;
- conditional mathematical statements;
- rigorously certified results.
- The baseline collinearity search is exact but not intended to scale to the largest searches of interest.
- Search results are candidates, not rank certificates.
- The Mestre-Nagao score is a heuristic ranking signal.
- Sage/PARI/mwrank outputs must be interpreted according to the method used: lower bounds, upper bounds, exact results, and conditional claims are mathematically different.
- Large generated search campaigns and unpublished candidate sets are intentionally excluded from the initial public release.
Core references include work by Mestre, Nagao, Silverman, Fermigier, and
Elkies-Klagsbrun. See REFERENCES.md for the curated public bibliography.
This project uses artificial intelligence as part of an interactive computational research workflow.
OpenAI's ChatGPT has been used as a research and software-engineering assistant for activities including literature exploration, mathematical discussion, hypothesis generation, algorithm and experiment design, code generation and debugging, interpretation of computational results, and preparation of technical documentation.
The research questions, project direction, selection and execution of experiments, evaluation of mathematical significance, and decisions about which results and claims to retain are the responsibility of the human researcher. Computational outputs and AI-generated suggestions are not treated as mathematical proof merely because they were produced by an automated system. Claims intended to carry mathematical weight are expected to be supported independently through exact computation, reproducible evidence, formal verification, proof, or appropriate reference to the literature.
This disclosure is made in the spirit of the Leiden Declaration on Artificial Intelligence and Mathematics, particularly its recommendations concerning transparent disclosure of automated tools, human responsibility for correctness, appropriate attribution, and the distinction between automated assistance and human authorship.
AI systems are not listed as authors and are not assigned responsibility for the mathematical results in this repository.
Use CITATION.cff for citation metadata. Tagged public releases are intended
to be archived through Zenodo so that citable, versioned software records can be
preserved. Users should cite the exact software version they used.
This public release is distributed under the BSD-3-Clause license. See
LICENSE.