The simplest workaround, I think, is to set

E._point_class =
sage.schemes.elliptic_curves.ell_field.EllipticCurve_finite_field

after creating E and before attempting to create points.

Example:

sage: E6 = EllipticCurve(Integers(6),[0,0,1,-1,0])
sage: E6._point_class =
sage.schemes.elliptic_curves.ell_point.EllipticCurvePoint_finite_field
sage: P = E6(0,-1)
sage: P
(0 : 5 : 1)
sage: 2*P
(1 : 5 : 1)
sage: 3*P
(5 : 0 : 1)
sage: 4*P
(2 : 2 : 1)
sage: 5*P

boom!  but helpfully:

ZeroDivisionError: Inverse of 4 does not exist

enabling one to find a factorization of 6.

For a less trivial example (Taken from my own lecture notes):

sage: N = 1715761513
sage: E = EllipticCurve(Integers(N),[3,-13])
sage: E._point_class =
sage.schemes.elliptic_curves.ell_point.EllipticCurvePoint_finite_field
sage: P = E(2,1)
sage: m = LCM([2..100])
sage: m*P
...
ZeroDivisionError: Inverse of 1317188059 does not exist
sage: gcd(1317188059, N)
26927
sage: N.factor()
26927 * 63719

John

On May 4, 8:59 am, Jeroen Demeyer <jdeme...@cage.ugent.be> wrote:
> On 2010-05-03 16:46, Mike Hansen wrote:
>
> > Hello,
>
> > On Mon, May 3, 2010 at 1:34 AM, Jeroen Demeyer <jdeme...@cage.ugent.be> 
> > wrote:
> >> I wonder if there is a way to make Sage compute with points on elliptic
> >> curves over rings which are not fields.  I would like to use it for a
> >> very simple implementation of the ECM factoring algorithm for
> >> educational purposes.  The obvious doesn't work:
>
> > There is a workaround.  Please see:
> >http://www.mail-archive.com/sage-support@googlegroups.com/msg18282.html
>
> Thanks a lot for the pointer!
> Jeroen.
>
> --
> To post to this group, send email to sage-support@googlegroups.com
> To unsubscribe from this group, send email to 
> sage-support+unsubscr...@googlegroups.com
> For more options, visit this group 
> athttp://groups.google.com/group/sage-support
> URL:http://www.sagemath.org

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to