Thanks to John Cremona and Paul Zimmermann I'm impressed, I didn't expect such quick response from leading specialists in the field. Thank you very much! The answers were extremly interesting an concrete but I can't agree with last John Cremona's statement: "we have answered the original question!" The original question "how to check associativity of ell curve add. in SAGE" remains open to me (mayby not to SAGE team?). Of course the presented SAGE (and consequentle MAPLE) code was connected with very special case and "there are an awful lot of special cases to consider" (Silverman, Tate, p.32) but it would be realy nice to tell the elliptic curve users that the awful work is done by SAGE. I don't know if elegant Paul Zimmermann's MAPLE solution has counterpart in SAGE (I'm affraid it hasn't) but his remark on the Groebner bases (SINGULAR, MACAULAY2 interf?) may be essentiall. On the other side, some early versions of William Stein's ent.pdf contain MAGMA code doing the job, without considering special cases. Does the discussion mean that I have to use the closed source software? Still waiting for reply. Andrzej Chrzeszczyk
On 9 Sty, 20:31, "John Cremona" <[EMAIL PROTECTED]> wrote: > Thanks Paul, I was too lazy to try that myself. Now I am puzzled by > what I remembered being possible and impossible, but never mind -- we > have answered the original question! > > John > > On 09/01/2008, Paul Zimmermann <[EMAIL PROTECTED]> wrote: > > > > > > > John, > > > > As far as I know you cannot check associativity in this naive way. > > > > For a start, nowhere in your code do you use the equation of the > > > curve. If that is (say) y^2=x^3+a*x+b, then your equation will only > > > be correct modulo the relations y1^2=x1^3+a*x1+b and so on. > > > this is correct, but the first statement is not, since Maple can do it > > (sorry for that :-) > > > |\^/| Maple 10 (IBM INTEL LINUX) > > ._|\| |/|_. Copyright (c) Maplesoft, a division of Waterloo Maple Inc. > > 2005 > > \ MAPLE / All rights reserved. Maple is a trademark of > > <____ ____> Waterloo Maple Inc. > > | Type ? for help. > > > lambda12 := (y1 - y2)/(x1 - x2): > > > x4 := (lambda12*lambda12 - x1 - x2): > > > nu12 := (y1 - lambda12*x1): > > > y4 := (-lambda12*x4 - nu12): > > > lambda23 := ((y2 - y3)/(x2 - x3)): > > > x5 := (lambda23*lambda23 - x2 - x3): > > > nu23 := (y2 - lambda23*x2): > > > y5 := (-lambda23*x5 - nu23): > > > s1 :=(x1 - x5)*(x1 - x5)*((y3 - y4)*(y\ > > > 3 - y4) - (x3 + x4)*(x3 - x4)*(x3 - x4)): > > > s2 :=(x3 - x4)*(x3 - x4)*((y1 - y5)*(y\ > > > 1 - y5) - (x1 + x5)*(x1 - x5)*(x1 - x5)): > > > numer(s1-s2): > > > simplify(%, {y1^2=x1^3+a*x1+b,y2^2=x2^3+a*x2+b,y3^2=x3^3+a*x3+b}); > > 0 > > > Note the simplify(..., {eqs}) command, which computes the normal form of a > > polynomial with respect to a set of polynomial equations. This is quite > > useful > > for the user who is not aware of Gröbner bases (or the aware-user who > > prefers > > a simple command). Does a similar command exist in SAGE? > > > Paul Zimmermann > > -- > John Cremona --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://sage.math.washington.edu/sage/ and http://sage.scipy.org/sage/ -~----------~----~----~----~------~----~------~--~---