Elliptic Curve Rank Record: 30
Elliptic Curve Rank Record: 30
Update, August 20, 2026
Update, August 20, 2026
Two years after the Elkies-Klagsbrun rank-29 record, the record has moved again. An unidentified user writing as ranksunbounded submitted the following elliptic curve over the rationals:
y^2 + x y = x^3
- 201769035260418549083594900060734240952308696994802735114305555 x
+ 1151107939141058565733479426024323225135665982951300586808823640527729578307228357301072889377
- 201769035260418549083594900060734240952308696994802735114305555 x
+ 1151107939141058565733479426024323225135665982951300586808823640527729578307228357301072889377
Thirty independent rational points have been exhibited, proving unconditionally that rank E(Q) >= 30. The curve and its witness points are available from the Elliptic Curve Rank Leaderboard and Andrej Dujella's rank-record page.
This is more than a numerical estimate based on a nonzero regulator. The leaderboard checks that every point lies on the curve using exact rational arithmetic and certifies their independence modulo torsion using an exact quadratic-character 2-descent calculation derived from the Cremona-Brumer method. The verification code and its mathematical explanation are public:
Import and check the witnesses
Import and check the witnesses
The data can be imported directly into the Wolfram Language. The following checks the elementary part of the certificate: all 30 listed rational points really lie on the stated curve. Certifying independence is the substantially harder calculation performed by the leaderboard.
In[]:=
Clear[a1, a2, a3, a4, a6, ainvs, data, onCurveQ, points30];
data = Import[
"https://elliptic-rank.icarm.cloud/curve/273.json",
"RawJSON"
];
ainvs = ToExpression /@ data["ainvs"];
points30 = Map[ToExpression, data["points"], {2}];
{a1, a2, a3, a4, a6} = ainvs;
onCurveQ[{x_, y_}] :=
y^2 + a1 x y + a3 y ==
x^3 + a2 x^2 + a4 x + a6;
{Length[points30], And @@ (onCurveQ /@ points30)}
data = Import[
"https://elliptic-rank.icarm.cloud/curve/273.json",
"RawJSON"
];
ainvs = ToExpression /@ data["ainvs"];
points30 = Map[ToExpression, data["points"], {2}];
{a1, a2, a3, a4, a6} = ainvs;
onCurveQ[{x_, y_}] :=
y^2 + a1 x y + a3 y ==
x^3 + a2 x^2 + a4 x + a6;
{Length[points30], And @@ (onCurveQ /@ points30)}
Out[]=
{30,True}
What is known exactly?
What is known exactly?
At present the rigorous result is rank at least 30, not an unconditional proof that the rank equals 30. Andrew Sutherland reports that the analytic-rank method in "Conditionally Bounding Analytic Ranks of Elliptic Curves" gives an upper bound of 31 under GRH. The curve has global root number +1, so its analytic rank is even. Consequently its rank is exactly 30 under GRH together with the Birch-Swinnerton-Dyer conjecture.
The recent progression: Noam Elkies found rank at least 28 in 2006;
Noam Elkies and Zev Klagsbrun found rank at least 29 in 2024 (shown above);
ranksunbounded submitted rank at least 30 in 2026.
Noam Elkies and Zev Klagsbrun found rank at least 29 in 2024 (shown above);
ranksunbounded submitted rank at least 30 in 2026.
The actual coordinates contain roughly 30 to 57 digits. A signed logarithm preserves the sign and compresses the scale. This is a transformed point cloud, not a geometric plot of the elliptic curve. Points having two integral coordinates are separated from points having at least one nonintegral coordinate.
In[]:=
xUnit=10^31;yUnit=10^46;scaledPoints=N[{#[[1]]/xUnit,#[[2]]/yUnit}]&/@points30;indexedPoints=MapIndexed[{First[#2],#1}&,scaledPoints];cross=N[xUnit/yUnit];cubic=N[xUnit^3/yUnit^2];linear=N[a4xUnit/yUnit^2];constant=N[a6/yUnit^2];upper[z_]:=(-crossz+Sqrt[(crossz)^2+4(cubicz^3+linearz+constant)])/2;lower[z_]:=(-crossz-Sqrt[(crossz)^2+4(cubicz^3+linearz+constant)])/2;curveView[range_,title_]:=Module[{shown,labeled},shown=Select[indexedPoints,range[[1,1]]<=#[[2,1]]<=range[[1,2]]&&range[[2,1]]<=#[[2,2]]<=range[[2,2]]&];labeled=Select[shown,MemberQ[{6,7,11,12},#[[1]]]&];Plot[Evaluate@{upper[z],lower[z]},{z,range[[1,1]],range[[1,2]]},AspectRatio->1,Epilog->{RGBColor[.8,.18,.08],PointSize[.018],Tooltip[Point[#[[2]]],"P"<>ToString[#[[1]]]]&/@shown,Black,Text[Style["P"<>ToString[#[[1]]],11,Bold],#[[2]],{-1.2,-1.2}]&/@labeled},Frame->True,FrameLabel->{"x / 10^31","y / 10^46"},PlotLabel->Row[{title," — ",Length[shown]," witnesses"}],PlotRange->range,PlotStyle->Black]];GraphicsRow[{curveView[{{-1.6,2.8},{-12,12}},"natural scale"],curveView[{{-2,80},{-2200,2200}},"intermediate scale"]},ImageSize->600]
Out[]=
Here, each point {x,y} is mapped to {Sign[x] Log[Abs[x]], Sign[y] Log[Abs[y]]}. This compresses the enormous coordinates while retaining their signs, so the four quadrants show the four possible sign combinations.
In[]:=
logged=Sign[#]Log[Abs[#]]&/@#&/@points30;Graphics[{Black,PointSize[.012],Point[logged]},AspectRatio->1,PlotRange->All,PlotRangePadding->Scaled[.06],ImageSize->300]
Out[]=
The points are mapped to {Abs[x],Abs[y]}, ordered by Max[Abs[x],Abs[y]], and only the 23 smallest are displayed. This prevents the seven largest-coordinate points from determining the plotting range, but it discards sign information and uses a size cutoff rather than a statistical outlier test. Due to the warping from Abs, the curve does not actually join up like this.
In[]:=
outlier=SortBy[Abs[points30],Max];Graphics[{Black,PointSize[.012],Point[Take[outlier,23]]},AspectRatio->1,PlotRange->All,PlotRangePadding->Scaled[.06],ImageSize->300]
Out[]=
Sources
Sources
Elliptic Curve Rank Leaderboard, curve 273:
https://elliptic-rank.icarm.cloud/curve/273
Machine-readable curve data:
https://elliptic-rank.icarm.cloud/curve/273.json
Andrej Dujella, Rank >= 30:
https://web.math.pmf.unizg.hr/~duje/tors/rk30.html
Andrej Dujella, History of elliptic curve rank records:
https://web.math.pmf.unizg.hr/~duje/tors/rankhist.html
Leaderboard verification code:
https://github.com/icarm/elliptic-rank/blob/main/src/verify.ts
Jonathan Bober, Conditionally Bounding Analytic Ranks of Elliptic Curves:
https://arxiv.org/abs/1112.1503
https://elliptic-rank.icarm.cloud/curve/273
Machine-readable curve data:
https://elliptic-rank.icarm.cloud/curve/273.json
Andrej Dujella, Rank >= 30:
https://web.math.pmf.unizg.hr/~duje/tors/rk30.html
Andrej Dujella, History of elliptic curve rank records:
https://web.math.pmf.unizg.hr/~duje/tors/rankhist.html
Leaderboard verification code:
https://github.com/icarm/elliptic-rank/blob/main/src/verify.ts
Jonathan Bober, Conditionally Bounding Analytic Ranks of Elliptic Curves:
https://arxiv.org/abs/1112.1503