2
$\begingroup$

Let $P_1(x_1,y_1),P_2(x_2,y_2)...P_n(x_n,y_n)$ be $n$ rational points on given Elliptic curve. How do we prove they are independent? Are there any theorems/results/algorithms/softwares to prove their independence?

$\endgroup$
  • 2
    $\begingroup$ In general, this is a difficult problem. I think that they are $\Bbb Z$-linearly independent iff the determinant of the matrix $(\langle P_i, P_j \rangle)_{i,j}$ is not zero, where $\langle -,- \rangle$ is the Néron-Tate height pairing. $\endgroup$ – Watson Dec 1 '18 at 15:14
  • $\begingroup$ @Watson The application of this result is exactly what I found in one of the papers. But, I am not able to find resources/references for this result? $\endgroup$ – ersh Dec 1 '18 at 18:06
  • 2
    $\begingroup$ See §2.7 in Lozano-Robledo Elliptic curves, modular forms, and their L-functions, or prop. 4.10 here (click on "view" on the bottom of the page). $\endgroup$ – Watson Dec 1 '18 at 18:46
  • $\begingroup$ Thank you! This is very helpful! $\endgroup$ – ersh Dec 1 '18 at 22:07
3
$\begingroup$

This has already somewhat been answered in the comments but I'd like to add a little example of a Sage session playing with this.

The point is that the canonical height pairing is a symmetric bilinear map $$ E(\mathbf Q ) \times E(\mathbf Q) \to \mathbf R $$ so if there is a linear relationship between some points, their should be the same relationship between all of their heights.

You should be able to do all of this in a Sage session (Sage is free!) (there was a bug with the rational_points command in some recent versions of sage so that might not work depending on your version)

Let's start with a not-so-randomly-chosen elliptic curve (I picked this one to have rank 4 so that this would be interesting, see http://www.lmfdb.org/EllipticCurve/Q/?rank=4)

sage: E = EllipticCurve([1, -1, 0, -79, 289])
sage: E.rational_points(bound=10)
[(-10 : 3 : 1),
 (-10 : 7 : 1),
 (-9 : -10 : 1),
 (0 : 1 : 0),
 (3 : -10 : 1),
 (3 : 7 : 1),
 (4 : -7 : 1),
 (4 : 3 : 1),
 (5 : -3 : 1),
 (5 : -2 : 1),
 (6 : -5 : 1),
 (6 : -1 : 1),
 (7 : -10 : 1),
 (7 : 3 : 1),
 (8 : 7 : 1)]
sage: L = E.rational_points(bound=10)

L is the list of a whole bunch of points we found now

We take the pairing matrix of the first two points, looks rank 1 so determinant 0!

sage: E.height_pairing_matrix(L[0:2])
[ 2.38682061714418 -2.38682061714418]
[-2.38682061714418  2.38682061714418]

and it is! we should expect this though, points 0 and 1 have the same x-coord so are inverses of each other

sage: E.height_pairing_matrix(L[0:2]).determinant()
0.000000000000000

what about points 1,2?

sage: E.height_pairing_matrix(L[1:3])
[ 2.38682061714418 0.126691370405363]
[0.126691370405363  2.68947630168514]

doesn't look rank $\lt 2$ at all! though it is always symmetric

Similar for points 7,8

sage: E.height_pairing_matrix(L[7:9])
[ 1.17647633591898 0.167621062889770]
[0.167621062889770  1.20262600414243]
sage: E.height_pairing_matrix(L[7:9]).determinant()
1.38676421411007

We can try 3 other points now

sage: L[5:10:2]
[(3 : 7 : 1), (4 : 3 : 1), (5 : -2 : 1)]
sage: E.height_pairing_matrix(L[5:10:2]).determinant()
1.30015022478383

this is clearly non-zero so assuming correctness of the software these three points are independent.

What about non-independence, in general it is notoriously hard to prove real numbers are zero on a computer, leading to problems when trying to prove dependence in general. With rational points of elliptic curves though we are fundamentally in a finitely generated abelian group though, so we can do more

Here are 4 points, which don't have an obvious relationship by glancing at!

sage: L[4:12:2]
[(3 : -10 : 1), (4 : -7 : 1), (5 : -3 : 1), (6 : -5 : 1)]
sage: E.height_pairing_matrix(L[4:12:2])
[  1.72683492334016 -0.959801459379726  0.222652978555837  0.767033463960439]
[-0.959801459379726   1.17647633591898 -0.167621062889770  0.216674876539249]
[ 0.222652978555837 -0.167621062889770   1.20262600414243 0.0550319156660674]
[ 0.767033463960439  0.216674876539249 0.0550319156660674  0.983708340499687]

Looks like the determinant is zero:

sage: E.height_pairing_matrix(L[4:12:2]).det()
-2.66453525910038e-15

So are they dependent? Lets give the matrix we think has some kernel a name.

sage: M = E.height_pairing_matrix(L[4:12:2])

Sage will complain if you ask it for the kernel as we are over the reals to some finite precision, so we use a little trick:

sage: M.change_ring(QQ).eigenvectors_right()
[(1.833143676963028?e-16,
  [(1, 1.000000000000000?, 1.?e-16, -1.000000000000000?)],
  1),
 (1.135131138616548?,
  [(1, -2.478168820884934?, -8.24803196664211?, -1.478168820884934?)],
  1),
 (1.289199998123811?,
  [(1, 3.978262464606312?, -1.966228843927413?, 4.978262464606312?)],
  1),
 (2.665314467160902?,
  [(1, -0.615399695397310?, 0.2372153947344239?, 0.3846003046026902?)],
  1)]

So it looks like $(1,1,0,-1)$ is a kernel vector (i.e. $L[4] + L[6] = L[10]$)

sage: M*matrix([[1],[1],[0],[-1]])
[    0.000000000000000]
[ 5.55111512312578e-17]
[-5.55111512312578e-17]
[-1.11022302462516e-16]
sage: L[4] + L[6] - L[10]
(0 : 1 : 0)

indeed this is a relation.

$\endgroup$
  • $\begingroup$ That is very helpful . Thanks for your time! $\endgroup$ – ersh Dec 4 '18 at 1:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.