name short Weierstrass curves parameter a2 parameter a6 coordinate x coordinate y satisfying y^2 + x y = x^3 + a2 x^2 + a6 addition x = ((y1+y2)/(x1+x2))^2+((y1+y2)/(x1+x2))+x1+x2+a2 addition y = ((y1+y2)/(x1+x2))^3+(x2+a2+1)*((y1+y2)/(x1+x2))+x1+x2+a2+y1 doubling x = (x1+y1/x1)^2 + (x1+y1/x1) + a2 doubling y = (x1+y1/x1)^3 + (x1 + a2 + 1)*(x1+y1/x1) + a2 + y1 negation x = x1 negation y = x1 + y1 toweierstrass weierx = x toweierstrass weiery = y a0 = 1 a1 = 1 a2 = a2 a3 = 0 a4 = 0 a6 = a6 fromweierstrass x = weierx fromweierstrass y = weiery