Patrick Michalik

Software engineer

Corrected integral-point data for Mordell curves

Mordell curves are elliptic curves with affine equations

y2=x3+k,k∈Z∖{0}.y^2=x^3+k,\quad k\in\mathbb{Z}\setminus\{0\}.

Bennett and Ghadermarzi’s “Mordell’s equation: A classical approach” presents complete lists of integral points for 0<∣k∣≤1070<|k|\le10^7.1, 2 A recomputation of this range identifies 783 missing signed points on 389 curves in the files retrieved on November 1, 2026: 244 rows are absent, and 145 are incomplete. This note describes these omissions and four corrections to the paper’s printed reduction criteria.

The recomputed dataset contains 5,439,294 signed integral points and recovers every published point. Throughout, points are affine and integral, with (x,y)(x,y) and (x,−y)(x,-y) counted separately when y≠0y\ne0.

Examples of omissions

The published table omits the curve with k=−10,000k=-10{,}000, although it has the integral points (25,±75)(25,\pm75), since

752=253−10,000.75^2=25^3-10{,}000.

The independent data of Rafael von Känel and Benjamin Matschke list (25,75)(25,75) as the only integral point up to sign. The recomputation agrees.3

For positive coefficients, the curve with k=1,001,876k=1{,}001{,}876 is absent despite having the point (5,1001)(5,1001). For k=1,003,941k=1{,}003{,}941, the published row contains (627,±15732)(627,\pm15732) but omits (−65,±854)(-65,\pm854).

Substitution and comparison with the published lists suffice to verify these omissions; completeness of the corrected entries follows from the recomputation below.

The cubic-form method

A binary cubic form is a polynomial in two variables, uu and vv, in which every term has total degree three. The paper uses the coefficient convention

F(u,v)=au3+3bu2v+3cuv2+dv3.F(u,v)=au^3+3bu^2v+3cuv^2+dv^3.

The method converts the search for integral points into equations F(u,v)=1F(u,v)=1. A form is reducible if it factors into lower-degree polynomials over the rationals; for an irreducible cubic form, F(u,v)=1F(u,v)=1 is a Thue equation.

Under the paper’s correspondence, every integral point (x,y)(x,y) gives the form

F(u,v)=u3−3xuv2+2yv3,F(u,v)=u^3-3xuv^2+2yv^3,

which satisfies F(1,0)=1F(1,0)=1 and has discriminant D=−108kD=-108k. The discriminant is invariant under integer changes of variables with determinant ±1\pm1. For irreducible forms, reduction theory supplies an equivalent reduced representative whose coefficients lie in finite, explicitly computable ranges. Reducible forms are covered by the direct formulas below. Conversely, solutions of these equations give points through two polynomial expressions: The normalized Hessian gives xx, and the normalized Jacobian gives ±2y\pm2y. Enumeration of these representatives and complete solution of their equations therefore recover every integral point.

Every reducible form taking the value 11 at an integer pair can be transformed into

f(u,v)=u(u2+3Buv+3Cv2).f(u,v)=u(u^2+3Buv+3Cv^2).

The solution (u,v)=(1,0)(u,v)=(1,0) gives the direct formulas

x=B2−C,y=B(3C−2B2)2,k=C2(4C−3B2)4.\begin{aligned} x&=B^2-C,\\ y&=\frac{B(3C-2B^2)}{2},\\ k&=\frac{C^2(4C-3B^2)}{4}. \end{aligned}

For positive kk, this branch can be enumerated directly using B≥0B\ge0, C≥1C\ge1, BCBC even, and the finite bounds

C≤⌊2107⌋,3B2<4C.C\le\left\lfloor2\sqrt{10^7}\right\rfloor, \quad 3B^2<4C.

Corrections to the printed reduction criteria

The recomputation uses the following four corrections to the printed criteria, obtained from Belabas’s reduction theory.4

In the coefficient convention above, take a>0a>0. Belabas uses unscaled middle coefficients, so the conversion is bBelabas=3bb_{\mathrm{Belabas}}=3b and cBelabas=3cc_{\mathrm{Belabas}}=3c. Since D=−108kD=-108k, positive discriminant corresponds to negative kk, and conversely.

Bound on the last coefficient

For positive discriminant, the normalized Hessian has coefficients

P=b2−ac,Q=bc−ad,R=c2−bd.P=b^2-ac,\quad Q=bc-ad,\quad R=c^2-bd.

The reduction conditions include ∣Q∣≤P≤R|Q|\le P\le R. Solving ∣bc−ad∣≤b2−ac|bc-ad|\le b^2-ac for dd gives

(a+b)c−b2a≤d≤(b−a)c+b2a.\frac{(a+b)c-b^2}{a} \le d\le \frac{(b-a)c+b^2}{a}.

The bound printed after Lemma 3.3 fails on the irreducible form (a,b,c,d)=(1,3,1,−3)(a,b,c,d)=(1,3,1,-3), of discriminant 76687668, corresponding to k=−71k=-71. Here, (P,Q,R)=(8,6,10)(P,Q,R)=(8,6,10) and ∣Q∣<P<R|Q|<P<R, so the form is reduced under both the printed and corrected definitions.

In the paper’s scaled coefficients, the printed bounds require −1/3≤d≤−1-1/3\le d\le-1; in Belabas’s unscaled coefficients, they require −5≤d≤−11-5\le d\le-11. Both intervals are empty, whereas the form has d=−3d=-3. Its associated points (8,±21)(8,\pm21) are present in the published data.

Refinement for the middle coefficient

The refinement for cc, printed just before the dd-bound, also fails. The form (1,0,−2,−2)(1,0,-2,-2) has discriminant 756756, in the discriminant interval (700,800](700,800]. It corresponds to k=−7k=-7 and the published points (2,±1)(2,\pm1). The printed upper bound is −1575-1575, whereas c=−2c=-2 in the paper’s scaled convention, or −6-6 in the unscaled convention.

For reduced forms, ∣Q∣≤P≤R|Q|\le P\le R implies

D=27(4PR−Q2)≥81P2.D=27(4PR-Q^2)\ge81P^2.

For 0<D≤T0<D\le T, the identity c=(b2−P)/ac=(b^2-P)/a supplies a lower bound on cc. Combining it with c≤b−ac\le b-a, obtained by converting Belabas’s Lemma 3.5(3), gives the conservative range used in the recomputation:

⌈b2−⌊T/81⌋a⌉≤c≤b−a.\left\lceil\frac{b^2-\lfloor\sqrt{T/81}\rfloor}{a}\right\rceil \le c\le b-a.

Negative-discriminant inequality

In the paper’s coefficient convention, Belabas’s inequality takes the form

−(a−3b)2−3ac<ad−9bc<(a+3b)2+3ac.-(a-3b)^2-3ac<ad-9bc<(a+3b)^2+3ac.

Definition 3.4 gives the middle expression as 3(ad−bc)3(ad-bc) instead of ad−9bcad-9bc. With that printed expression, the distinct forms (1,1,2,6)(1,1,2,6) and (1,2,5,16)(1,2,5,16) both satisfy the definition, although substituting u↦u+vu\mapsto u+v in the first gives the second. Both are irreducible and have discriminant −216-216. Thus, Proposition 3.5’s uniqueness assertion fails with the printed definition; the corrected definition recovers the standard reduction theorem. The printed condition also rejects their corrected representative, (1,0,1,2)(1,0,1,2).

Missing boundary qualification

In the P=RP=R boundary case of Definition 3.1, the condition b<∣c∣b<|c| should be required only when a=∣d∣a=|d|. The printed version omits that qualification. The form (1,2,−1,−2)(1,2,-1,-2), of discriminant 27002700, exhibits the difference. For k=−25k=-25, applying the printed boundary condition to the corrected enumeration removes both points (5,±10)(5,\pm10), which the published table does contain.

Full-range recomputation

The corrected cubic-form method gives the following results for 0<∣k∣≤1070<|k|\le10^7. The published lists serve only as comparison data.

CoefficientsCurves with integral pointsSigned integral points
1≤k≤1071\le k\le10^71,336,3753,434,079
−107≤k≤−1-10^7\le k\le-1834,6112,005,215
Total2,170,9865,439,294

The dataset records every coefficient, including the 17,829,014 curves with no integral points. The 783 differences from the published lists are classified below.

Solving and numerical exceptions

The implementation enumerates primitive forms: Their coefficients have no common factor greater than one, a necessary condition for representing 11. For irreducible forms, PARI/GP solves the Thue equations using thueinit(f, 1) followed by thue(T, 1), where f(t)=F(t,1)f(t)=F(t,1) and T is the initialized solver data. The flag 1 requests an unconditional computation, without assuming the generalized Riemann hypothesis.5 Reducible forms are treated by direct enumeration.

Eleven Thue equations required a local correction to PARI/GP 2.19.0. During semirational reduction, conversion of a large bound to an integer failed because the floating-point precision was insufficient to determine its integer part. The correction uses an existing PARI routine to round the bound upward safely, preserving a conservative bound. All eleven solution sets agree with a separate exact calculation in Magma V2.29-10, and PARI’s Thue and arithmetic-kernel tests pass with the patch. The repository provides the patch, application instructions, and cross-check outputs.

Algebraic exception

A separate PARI/GP 2.19.0 thue() failure at k=−432k = -432 is handled algebraically. For an integer solution, x3=y2+432>0x^3 = y^2 + 432 > 0, and

(36+y)3+(36−y)3=216(y2+432)=(6x)3.(36 + y)^3 + (36 - y)^3 = 216(y^2 + 432) = (6x)^3.

If all three cubes were nonzero, we could rearrange the equation to express one positive cube as the sum of two positive cubes. Fermat’s theorem for exponent three rules this out.6 Since x≠0x \ne 0, we obtain y=±36y = \pm 36 and x=12x = 12; both points satisfy the equation.

Enumeration yields only (a,b,c,d)=(1,3,−3,−9)(a, b, c, d) = (1, 3, -3, -9). The polynomial z3+9z2−9z−9z^3 + 9z^2 - 9z - 9 is irreducible: None of its possible integer roots ±1,±3,±9\pm 1, \pm 3, \pm 9 is a root. Its Hessian map is x=12u2+36v2x = 12u^2 + 36v^2. Thus, x=12x = 12 forces u2+3v2=1u^2 + 3v^2 = 1, giving v=0v = 0 and u=±1u = \pm 1; F(u,v)=1F(u, v) = 1 selects (u,v)=(1,0)(u, v) = (1, 0) and completes the Thue solve.

Verification

The computation includes the following checks:

  • The batch enumeration agrees with a separately written per-curve enumerator using the same reduction theory on all 20,000 nonzero coefficients with ∣k∣≤10,000|k|\le10{,}000 and on 5,649 selected coefficients elsewhere in the published range. Agreement concerns the complete candidate-form sets for those coefficients.
  • An exact rational-root calculation, separate from PARI, checks every cubic’s reducibility classification.
  • Exact-arithmetic replay checks coverage of the enumerated inputs and validity of every returned solution. Point reconstruction uses a derivative formula for the Jacobian, independently of the solver’s expanded formula for recovering yy. Exhaustiveness of each Thue solution list relies on PARI’s algorithm.
  • An independent search over −215≤x≤108-215\le x\le10^8 agrees with the corresponding part of the computed dataset and finds 781 of the 783 omissions. The lower bound covers every possible negative xx for ∣k∣≤107|k|\le10^7; the remaining pair lies above the upper bound.
  • Comparison with the published data recovers every listed point. Direct checks establish coefficient coverage and agreement between the per-curve and signed-point tables.

For 0<∣k∣≤10,0000<|k|\le10{,}000, all 17,158 signed points agree with the von Känel–Matschke data, obtained by a different method. This comparison and the coordinate search provide checks independent of the cubic-form implementation.

Completeness over 0<∣k∣≤1070<|k|\le10^7 rests on the classical correspondence and reduction theorems, their implementation, and PARI/GP’s unconditional Thue solver with the documented patch and the explicit treatment of k=−432k=-432.

Classification of the omissions

Reducible-form outputs in one interval

Counting each pair (x,±y)(x,\pm y) once, the direct enumeration of reducible forms gives 2,940 distinct points with y≥0y\ge0 and 1≤k≤1071\le k\le10^7. Exactly 385 lie in

1,000,000<k≤2,000,000.1{,}000{,}000<k\le2{,}000{,}000.

All 385 are absent from that interval’s published file; all other 2,555 points with y≥0y\ge0 are present. Of the 385 missing points, 25 have y=0y=0. Restoring both signs therefore gives

2⋅385−25=7452\cdot385-25=745

missing signed points.

Nine irreducible equations in the same interval

Another 20 missing points are the complete output of the nine equations

Fd(u,v)=u3+60u2v+6uv2+dv3=1,d=176,178,…,192.F_d(u,v)=u^3+60u^2v+6uv^2+dv^3=1, \quad d=176,178,\ldots,192.

These are the forms (a,b,c,d)=(1,20,2,d)(a,b,c,d)=(1,20,2,d). They satisfy both the printed and corrected conditions in Definition 3.4. Each has the solution (1,0)(1,0), whose image has x=398x=398 and y=8028,8029,…,8036y=8028,8029,\ldots,8036. The associated coefficients all lie in the same positive interval 106<k≤2⋅10610^6<k\le2\cdot10^6.

Complete Thue solving finds no other solutions except for d=180d=180, which also has (u,v)=(−1199,20)(u,v)=(-1199,20). That solution gives

k=1,436,108,x=574,083,998,y=±13,755,081,320,210.\begin{aligned} k&=1{,}436{,}108,\\ x&=574{,}083{,}998,\\ y&=\pm13{,}755{,}081{,}320{,}210. \end{aligned}

All ten point pairs are absent from the published lists. In the same family, the (1,0)(1,0) images for the other 54 even values of dd from 126 to 250 are present. The large pair lies beyond the coordinate search described above.

Seven negative coefficients

Seven rows are absent altogether. Their complete point sets are as follows:

  • k=−10,000k=-10{,}000: (25,±75)(25,\pm75)
  • k=−600,000k=-600{,}000: (136,±1384)(136,\pm1384)
  • k=−1,000,000k=-1{,}000{,}000: (100,0)(100,0)
  • k=−2,000,000k=-2{,}000{,}000: (129,±383)(129,\pm383), (300,±5000)(300,\pm5000)
  • k=−4,000,000k=-4{,}000{,}000: (200,±2000)(200,\pm2000), (500,±11000)(500,\pm11000)
  • k=−7,000,000k=-7{,}000{,}000: (200,±1000)(200,\pm1000), (3200,±181000)(3200,\pm181000)
  • k=−8,000,000k=-8{,}000{,}000: (200,0)(200,0)

These contribute 18 signed points. Five of these rows lie at the included upper boundaries in ∣k∣|k| of the negative files: k=−n⋅106k=-n\cdot10^6 for n=1,2,4,7,8n=1,2,4,7,8. The other five such boundaries have no integral points.

The three groups together give

745+20+18=783.745+20+18=783.

The printed dd-bound, cc-refinement, and boundary condition would remove points present in the tables. All four issues concern the irreducible branch; reducible forms account for 745 positive and ten negative missing points. The nine positive irreducible forms pass both versions of Definition 3.4. The remaining eight missing points are on three negative-kk curves with irreducible forms. The original implementation was unavailable to this audit, leaving the cause of the data omissions unresolved.

Data and code

The accompanying repository contains the complete corrected dataset, the 783 omitted points, computation and verification code, and result summaries. The full tables are included as compressed CSV and JSONL files. A script reconstructs the comparison snapshots from the published PDFs.

References

  1. M. A. Bennett and A. Ghadermarzi, “Mordell’s equation: A classical approach,” LMS Journal of Computation and Mathematics 18 (2015), 633–646. DOI: 10.1112/S1461157015000182. ↑

  2. Michael A. Bennett, “Data for Mordell curves.” Audited snapshot retrieved November 1, 2026; the repository’s source manifest records the PDF URLs and hashes. ↑

  3. Rafael von Känel and Benjamin Matschke, “Data for Mordell equations,” Table 1, accompanying arXiv:1605.06079. ↑

  4. Karim Belabas, “A fast algorithm to compute cubic fields,” Mathematics of Computation 66 (1997), 1213–1237. The formula comparison uses the author-hosted manuscript dated June 5, 2003, particularly Sections 3–4. ↑

  5. PARI/GP documentation for thueinit(). The computations used PARI/GP 2.19.0, including the local safe-rounding patch described above. ↑

  6. Fermat’s Last Theorem for exponent three, formalized in Mathlib. ↑