id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,merged,author,reviewer,upstream,work_issues,branch,commit,dependencies,stopgaps
24640,Avoid order computation in EllipticCurveIsogeny function,m3vandyk,,"When computing the points in the kernel set of the isogeny, it is unnecessary and slow to perform the computation of P.order(): slow because computing the order requires factoring the order of E in many cases, and unnecessary because the preceding code block checks that P has finite order, and in the finite order case we can just compute all multiples of P until we get the identity since we need to compute all of these points anyway in order to list the kernel set. For curves of cryptographic size and kernels of small order, we have measured that eliminating the P.order() computation makes the EllipticCurveIsogeny function run 200 times faster.
I (David) discussed this problem with William Stein and Kevin Lui at JMM 2017, and Kevin identified the source of the problem, but seems to have never checked in a fix.",enhancement,closed,major,sage-8.2,elliptic curves,fixed,"elliptic curve, isogeny",,,Madison Van Dyk; David Jao,Kevin Lui,N/A,,926ff9b5a81a114433221c2ac9e9d4be6e70d0d9,926ff9b5a81a114433221c2ac9e9d4be6e70d0d9,,