#6045: [with patch, needs review] Computation of Heegner points
---------------------------+------------------------------------------------
Reporter: robertwb | Owner: was
Type: defect | Status: new
Priority: major | Milestone: sage-4.1
Component: number theory | Keywords:
Reviewer: | Author:
Merged: |
---------------------------+------------------------------------------------
Comment(by robertwb):
Replying to [comment:16 cremona]:
> Modular param: type "and and" in a comment.
Not sure what you meant by this...
> Why do you reverse the order of summation of a_n/n?
Because there's less rounding error by starting with the tail.
{{{
sage: E = EllipticCurve('37a')
sage: tau = E._heegner_best_tau(-7, prec=100)
sage: r1 = sum([an/(m+1)*tau**(m+1) for m, an in
enumerate(E.anlist(100))])
sage: r2 = sum(reversed([an/(m+1)*tau**(m+1) for m, an in
enumerate(E.anlist(100))]))
sage: tau500 = E._heegner_best_tau(-7, prec=500)
sage: r = sum([an/(m+1)*tau500**(m+1) for m, an in
enumerate(E.anlist(100))])
sage: (r1-r)
9.8607613152626475676466070660e-32 - 3.6977854932234928378674776498e-32*I
sage: (r2-r)
2.4651903288156618919116517665e-32*I
}}}
Not that that's really much of a difference...
> Can you sum the series using an iterator for the an instead of forming
the whole list?
There's not a way to get the {{{a_n}}} as an iterator rather than a list.
FYI, I do plan on optimizing this part a lot more.
>
> _heegner_forms_list: (this only depends on N and D so could perhaps be
> factored out of the class to a stand-alone function).
Perhaps, although I couldn't think of a better place to put it (one
advantage of having it there is it's defined close to where it's used).
> More seriously, this function is *wrong*!
I was thinking of this as the {{{H_N^D}}} rather than the
{{{H_N^D(\beta)}}} from Mark Watkins "Some Remarks on Heegner Point
Computations," though I see that it may not have been a complete set.
I not make it take the chosen square root as a parameter, and it returns
all the forms associated to that square root. I'm actually not using this
function right now (as I only want a single surd to recover the Heegner
point over the Hilbert Class Field) but it will be valuable when
implementing computation of the Heegner point traced down to Q (which we
should definitely have n optimized version of in Sage).
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6045#comment:20>
Sage <http://sagemath.org/>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---