| Bill Allombert on Mon, 15 Apr 2024 12:00:45 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: general question relating to elliptic curves and their rational points and creating a pool of rational points of count N |
On Sun, Apr 14, 2024 at 05:51:24PM -0700, American Citizen wrote: > Hello: > > I am currently working with rational Diophantine sextuples, example: [5/4, > 5/36, 32/9, 189/4, 665/1521, 3213/676] where the product of any pair + 1 is > a rational square. > > If we select 3 of the ratios, making a triple, say [5/4, 5/36, 32/9], we can > create an elliptic curve associated with the triple [a,b,c] > > E: [0,(a*b+a*c+b*c),0,(a*b*c)*(a+b+c),(a*b*c)^2] > > I have been working with 758 sextuples, and found elliptic curves of rank =1 > through rank = 10 for Diophantine triples derived from the sextuples. (20 > triples per sextuple). > > My question to the group is this, given the Mordell-Weil basis (which seems > quite easy to find for E), how can I determine a cut-off value of elliptic > curve point heights for creating a pool of 10K points that are on the curve? > > I am using a gp-pari command called "ellpool(E,p,h)" where E is the curve, p > > I need to determine h such that the count of the pool is around 10K or so. > Determining h seems somewhat hard to figure out, although I was using the > regulator^(1/rank) * F to set the height h (where F is around 5 to 12 or so) > and that generally works, but not always. Of course the torsion group for > the curve E plays a huge part too in finding the pool of points, as the > torsion points automatically increase the rational points found. > > Has someone done this work before? Can any papers be cited? This is just come from lattice theory: M=ellheightmatrix(E,MW_basis) gives you a lattice and you can use qfminim(M,B,,2) to find short vectors in your lattices. Each lattice vectors will give you #tors points having the same height. So pick N=10000/elltors(E)[1] What you need to do then is to pick B so that qfminim return about N vectors. The expected relation between N and B is something like this: B = sqrtn((N /(Pi^(n/2) / gamma(n/2 + 1)))^2*reg,n) when n is the rank. E=ellinit([0, 6625/1296, 0, 2225/729, 2500/6561]) MW_basis = [[124/9, 4879/81], [1600/9, 194750/81]] M=ellheightmatrix(E,MW_basis) n=#MW_basis; reg = matdet(M); tors=elltors(E); N=10000/tors[1]; B = sqrtn((N /(Pi^(n/2) / gamma(n/2 + 1)))^2*reg,n) qfminim(M,B,,2) %8 = [2500,2826.9854922754748719832305224795906320 We are very lucky, we get exactly the number we asked for! Cheers, Bill.