On Sat, Apr 10, 2010 at 5:08 PM, Kenneth A. Ribet <[email protected]> wrote:
> Hi,
>
> I'd like to present Lenstra's elliptic curve factoring method to a class.  
> This means that I'd like to define an elliptic curve over Integers(N), where 
> N is composite, and then add points on that curve in sage.  I may be doing 
> something stupid, but I'm getting a NotImplementedError with the method I'm 
> using:
>
> sage: E=EllipticCurve([0,Mod(1,59)]); E
> Elliptic Curve defined by y^2 = x^3 + 1 over Ring of integers modulo 59
> sage: E([0,1])
> (0 : 1 : 1)
> sage: E=EllipticCurve([0,Mod(1,5963)]); E
> Elliptic Curve defined by y^2 = x^3 + 1 over Ring of integers modulo 5963
> sage: E([0,1])
> Traceback (most recent call last):
> ...
> NotImplementedError
>
> Is there a workaround?  Does an alternative approach allow the desired 
> computations?
>
> Thanks much in advance!

You can see how I do this in the code samples in Chapter 6.3 of my
elementary number theory book:

   http://wstein.org/ent/ent.pdf

The key trick is:

sage: R = Integers(2010)
sage: # Make Sage think that R is a field
sage: R.is_field = lambda : True
sage: E = EllipticCurve(R, [0,1])
sage: E
Elliptic Curve defined by y^2 = x^3 + 1 over Ring of integers modulo 2010


William



 -- William

-- 
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-support
URL: http://www.sagemath.org

To unsubscribe, reply using "remove me" as the subject.

Reply via email to