American Citizen on Sat, 10 Feb 2024 21:50:10 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
trying to use qflllgram on the height matrix of elliptic curve points sometimes gives odd results |
Hello everyone:I have a certain rank=4 Z2xZ6 curve, from an isogenous Z12 rank 4 curve discovered by Tom Fisher in 2008, which I am currently using to analyze certain points on the curve, but these points are compositions of the Mordell-Weil basis points which are known.
The basic idea is this h = ellheightmatrix(E,[p[1], p[2], p[3], p[4], q]); mattranspose( qflllgram(h) ) Which normally will produce a matrix like such [1 -1 0 0 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0]where the first row [ 1 -1 0 0 1 ] actually gives the composition of point q as the addition and/or subtraction of the known Mordell Weil basis points p[1], p[2], p[3], p[4] for this curve. Rows 2-5 actually inform us that they are the Mordell-Weil basis points and are unique. In the example given, then q = P1 - P2.
But sometimes the matrix does NOT come out right, and occasionally the gp pari program hangs up and then starts to add to the heap requesting gigabytes of ram stuck on apparently trying to do the qflllgram factoring.
Questions:Is qflllgram(ellheightmatrix(e,pts)) the right way to discover the points composition of the unknown point q and the MW basis p1-4 ?
Should I be using a different matrix factoring command? If so, which one?Why is qflllgram hanging up on certain unknown points q? I actually went to precision 500, but the qflllgram step failed to resolve and kept asking for more memory.
I would like to have all my output be like above, if possible.Attached is the input file and the results file from my run until the hangup occurred. I flagged the strange results with an asterisk *.
Thanks for taking a look at this. Randall
default precision: 57 point:1 [1 -1 0 0 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:2 [-1 0 0 0 1] [ 1 0 0 0 0] [ 0 1 0 0 0] [ 0 0 1 0 0] [ 0 0 0 1 0] point:3 [0 -1 1 -1 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:4 [0 -1 1 0 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:5 [-1 0 0 1 1] [ 0 0 0 1 1] [-1 1 0 1 1] [ 0 0 1 0 0] [-1 0 0 2 1] point:6 [0 0 1 -1 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:7 [1 -1 1 -1 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:8 [1 -1 1 -1 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:9 * [-1 0 0 0 1] [ 0 0 0 0 1] [-1 1 0 0 1] [ 1 0 1 0 -1] [-1 0 0 1 1] point:10 * [-2 1 0 0 1] [ 1 0 0 0 0] [ 0 1 0 0 0] [ 0 0 1 0 0] [ 0 0 0 1 0] point:11 * [-1 0 0 1 1] [ 0 0 0 1 1] [ 0 1 0 0 0] [ 0 0 1 0 0] [ 0 0 0 1 0] point:12 [1 0 -1 0 1] [1 0 0 0 0] [0 1 0 0 0] [0 0 1 0 0] [0 0 0 1 0] point:13 * [ 1 0 0 1 1] [ 0 0 0 -1 -1] [16 1 0 16 16] [ 8 0 1 8 8] [ 0 0 0 1 0] point:14 * [0 1 0 1 1] [1 0 0 0 0] [0 1 0 0 0] [0 2 1 2 2] [0 0 0 1 0] point:15 * [0 0 1 0 1] [1 0 2 0 2] [0 1 6 0 6] [0 0 1 0 0] [0 0 4 1 4] point:16 Hangs up and starts asking for huge chunks of system RAM
Attachment:
303.gp
Description: application/gnuplot