y^2=x^3+a*x^2+16*a*xAffine addition formulas: (x1,y1)+(x2,y2)=(x3,y3) where
x3 = (-x1^3+(x2-a)*x1^2+(x2^2+2*a*x2)*x1+(y1^2-2*y2*y1+(-x2^3-a*x2^2+y2^2)))/(x1^2-2*x2*x1+x2^2) y3 = ((-y1+2*y2)*x1^3+(-a*y1+(-3*y2*x2+a*y2))*x1^2+((3*x2^2+2*a*x2)*y1-2*a*y2*x2)*x1+(y1^3-3*y2*y1^2+(-2*x2^3-a*x2^2+3*y2^2)*y1+(y2*x2^3+a*y2*x2^2-y2^3)))/(-x1^3+3*x2*x1^2-3*x2^2*x1+x2^3)Affine doubling formulas: 2(x1,y1)=(x3,y3) where
x3 = 1/(4*y1^2)*x1^4-8*a/y1^2*x1^2+64*a^2/y1^2 y3 = 1/(8*y1^3)*x1^6+((-a^2+40*a)/(4*y1^3))*x1^4+((a*y1^2+(16*a^3-640*a^2))/(4*y1^3))*x1^2+((-4*a^2*y1^2-512*a^3)/y1^3)Affine negation formulas: -(x1,y1)=(x1,-y1).
This curve shape was introduced in 2006 Doche–Icart–Kohel. The parameter a is required to have a(a-64) nonzero. The neutral element of the curve is the unique point at infinity, namely (0:1:0) in projective coordinates.
x=X/Z
y=Y/ZZ
ZZ=Z^2