[seqfan] Problems with checking the correctness of an elliptic net given in literature.

Thomas Scheuerle Thomas.Scheuerle at kabelbw.de
Thu Jul 11 19:17:55 CEST 2024


Dear Seqfan list,

I was preparing for my next planned OEIS contribution to add the elliptic net of the curve:
y2 + y = x3 + x2 − 2x  to the database.
This curve is a rank 2 curve (smallest conductor for rank 2) and would result into a 2-dimmensional net, an elliptic divisibility sequence.
We may say a two-dimensional extension of the Somos-4 sequence A178624<https://oeis.org/A178624>.
Kate Stange gives this array on page 43. Here:
https://www.slideserve.com/loe/elliptic-nets-how-to-catch-an-elliptic-curve
and on page 2 here:
https://math.colorado.edu/~kstange/talks/Turku-Abstract-Stange.pdf

Her array starts:
0,1,1,-3,11,38,249,…
1,1,2,-5,7,89,-149,…
1,3,-1,-13,-36,181,-1535,…
-5,8,-19,-41,-151,989,-1466,…
-31,53,-33,-350,493,6627,48191,…
94,479,919,-2591,13751,68428,424345,…
4335,5959,12016,-55287,23921,1587077,-7159461,…
…

On page 42 (https://www.slideserve.com/loe/elliptic-nets-how-to-catch-an-elliptic-curve)  see the recurrence relation
for this sequence, but I decided not to start by recurrence, I rather preferred the definition based on the Weierstrass sigma function.
The definition based on the Weierstrass sigma function is given on page 41.
I implemented it in PARI:
T(n,k) = { local(E,z1);local(E,z2);E=ellinit([2,0,-1,-1,0]);z1=ellpointtoz(E,[0,0]);z2=ellpointtoz(E,[1,0]);round(ellsigma(E,n*z1+k*z2)/(ellsigma(E,z1)^(n^2-k*n)*ellsigma(E,z1+z2)^(k*n)*ellsigma(E,z2)^(k^2-k*n) )) }
With this implementation I get a different array which also appears to fit into all properties of such elliptic nets:
0,1,1,-3,11,38,249,…
1,1,1,-4,-1,47,-85,…
-1,2,-3,-5,-17,63,-184,…
-5,7,-1,-19,26,151,841,…
31,27,44,-67,129,709,55,…
94,299,-127,-535,-1187,3376,-19061,…
-4335,2869,-3269,-6522,-3079,47987,87039,…
…

Striking is the first column, it appears identical to the version given by Stange up to one sign  at “-1“.

If we use the Stange version for a Somos-4 recurrence:
m=30; v=concat([1, 1, -5, 31], vector(m-4)); for(n=5, m, v[n] = ( v[n-1]*v[n-3] + 5*v[n-2]^2)/v[n-4]); v
we get:
1, 1, -5, 31, 156, 4025, -49291, 2364959, 138890855, … which disagrees with all versions here.
If we use my version for a Somos-4 recurrence:
m=30; v=concat([1, 1, -5, 31], vector(m-4)); for(n=5, m, v[n] = ( v[n-1]*v[n-3] + 5*v[n-2]^2)/v[n-4]); v
we obtain:
1, -1, -5, 31, 94, -4335, 18041, 3085709, -124991065, -10462061444,…
This agrees with my array.

Can you help me to find my error or how to check which version is correct ?

Thank you

Thomas Scheuerle


More information about the SeqFan mailing list