#8723: Change to return type of E.multiplication_by_m(m,True)
-------------------------------------+-------------------------------------
Reporter: cremona | Owner: cremona
Type: defect | Status: closed
Priority: minor | Milestone: sage-6.1
Component: elliptic curves | Resolution: fixed
Keywords: | Merged in:
Authors: Frédéric Chapoton | Reviewers: John Cremona
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/cremona/ticket/8723 | b8268eaa6c967c22fe13f08a13017f4e82ce8476
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by saraedum):
Replying to [comment:36 cremona]:
> Replying to [comment:35 saraedum]:
> > Replying to [comment:34 cremona]:
> > > I think the quick answer to the last question is "yes". Apart from
wanting to call the division poly functions with x's from different
polynomial rings, which is frequently needed,
> > But this does not seem to work if you pass in the same `cache`
dictionary. An `x` from different polynomial rings has the same hash
value, i.e., you get a result in the wrong ring.
> > {{{
> > sage: E = EllipticCurve([0,0,0,0,1])
> > sage: R.<x,y> = QQ[]
> > sage: cache = {}
> > sage: E.division_polynomial_0(1, cache=cache).parent()
> > Univariate Polynomial Ring in x over Rational Field
> > sage: E.division_polynomial_0(1, x, cache=cache).parent()
> > Univariate Polynomial Ring in x over Rational Field
> > }}}
> >
> > > there are places where instead of getting the polynomial and then
substituting a value for x, one can compute the polynomials already
evaluated, using the same recursion.
> > I see. But would you really want to store these in the same `cache`
dictionary?
> >
> > If I understand correctly, the `cache` parameter is needed because you
want to compute things for multiple values of `n`. Would it be acceptable
if the method accepted a list for `n`? Or is the `cache` keyword used
heavily by code outside the sage library?
>
> No, absolutely not. The cache variable is not intended for use by users
at all. (I did not design this!). It is for internal use so that the
function for one value of n can re-use its values for smaller n and the
same x. I'm sure there are are other (and possibly better) ways to do it.
Great. Thanks for your answers. I will try to implement this in a
different way at #16129 then.
--
Ticket URL: <http://trac.sagemath.org/ticket/8723#comment:37>
Sage <http://www.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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.