Neither of these is "strange", this is perfectly normal behaviour and
output for a 2-descent. It gives lower and upper bounds for the rank,
and these may not be equal. Specifically, they will differ by (at
least) the 2-rank of the Tate-Shafarevich group (Sha) of the curve.
2-descent by itself is not sufficient to determine the rank of all
elliptic curves, though it does work for many (specifically, those for
which Sha has no elements of order 2 and none of the curve's
generators is too large (since some point-searching on the associated
homogeneous spaces is carried out to actually find points).
Secondly, the output of E.simon_two_descent() is supposed to be
filtered so that the points listed are independent modulo torsion;
2-descent itself should give points which are independent in E/2E but
that can still include torsion points.
John
On 5 August 2013 07:33, Georgi Guninski wrote:
> The same curve is strange over QQ[sqrt(5)]:
>
> sage:
> Z1.=ZZ[];Nf.=NumberField(Z**2-5);E=EllipticCurve(Nf,[-256,0]);ge=E.gens();[i.order()
> for i in ge]
> [+Infinity, +Infinity]
> sage: ge
> [(1600*v + 3200 : -128000*v - 256000 : 1),
> (-1600*v + 3200 : -128000*v + 256000 : 1)]
> sage: (ge[0]-ge[1]).order()
> 2
> E.rank()
> ValueError: There is insufficient data to determine the rank - 2-descent gave
> lower bound 1 and upper bound 3
>
> Is it true that the rank is at least 2 since there at least two gens of
> infinite order?
>
>
> Another one:
>
> sage:
> Z1.=ZZ[];Nf.=NumberField(Z**2-5);E=EllipticCurve(Nf,[-256,0]);ge=E.gens();[i.order()
> for i in ge]
> [+Infinity, +Infinity, +Infinity, +Infinity]
> sage: E.rank()
> ValueError: There is insufficient data to determine the rank - 2-descent gave
> lower bound 1 and upper bound 3
> sage: ge
>
> [(8*v + 8 : -32*v - 32 : 1),
> (16*v + 32 : -128*v - 256 : 1),
> (-8*v + 8 : -32*v + 32 : 1),
> (-16*v + 32 : -128*v + 256 : 1)]
> sage: (ge[0]+ge[1]).order()
> 2
>
>
>
>
> On Sun, Aug 04, 2013 at 02:54:32PM +0100, John Cremona wrote:
>> On 4 August 2013 13:43, Georgi Guninski wrote:
>> > Not sure what exactly "deprecated" is, but IMO don't ditch it.
>> >
>> > Maybe warn once or every time.
>> >
>>
>> What I meant was this. For a long time E.gens() was NotImplemented
>> over number fields, and the only way to get information about possible
>> generators was to (know what youwere doing and) run
>> E.simon_two_descent(). Then someone observed that in cases where
>> E.simon_two_descent() does actually return equal lower and upper
>> bounds for the rank, with that number of generators, then E.gens()
>> should be able to return an actually correct set of generators.
>> Instead, it seems to return whatever generators E.simon_two_descent()
>> has been able to find (possibly none) even if the number of generators
>> thus returned is strictly less than the rank upper bound computed. And
>> *that* is misleading, even if documented.
>>
>> Another little feature is that simon_two_descent (or at least the
>> underlying script) can increase the lower rank bound by 1 in line with
>> the (in general not proved) parity conjecture, so the number of
>> generators returned is then 1 less than the rank lower bound. I think
>> that the wrapping code undoes this.
>>
>> John
>>
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/groups/opt_out.