a*x^2+y^2=1+d*x^2*y^2
Projective coordinates [database entry] represent x y as X Y Z satisfying the following equations:
x=X/Z y=Y/Z
Operation | Assumptions | Cost | Readdition cost |
---|---|---|---|
addition | Z1=1 and Z2=1 | 6M + 1S + 1*a + 1*d | 6M + 1S + 1*a + 1*d |
addition | Z2=1 | 9M + 1S + 1*a + 1*d | 9M + 1S + 1*a + 1*d |
addition | 10M + 1S + 1*a + 1*d | 10M + 1S + 1*a + 1*d | |
doubling | Z1=1 | 2M + 4S + 1*a | |
doubling | 3M + 4S + 1*a | ||
tripling | 9M + 3S + 1*a |
C = X1*X2
D = Y1*Y2
E = d*C*D
X3 = (1-E)*((X1+Y1)*(X2+Y2)-C-D)
Y3 = (1+E)*(D-a*C)
Z3 = 1-E^2
B = Z1^2
C = X1*X2
D = Y1*Y2
E = d*C*D
F = B-E
G = B+E
X3 = Z1*F*((X1+Y1)*(X2+Y2)-C-D)
Y3 = Z1*G*(D-a*C)
Z3 = F*G
A = Z1*Z2
B = A^2
C = X1*X2
D = Y1*Y2
E = d*C*D
F = B-E
G = B+E
X3 = A*F*((X1+Y1)*(X2+Y2)-C-D)
Y3 = A*G*(D-a*C)
Z3 = F*G
B = (X1+Y1)^2 C = X1^2 D = Y1^2 E = a*C F = E+D X3 = (B-C-D)*(F-2) Y3 = F*(E-D) Z3 = F^2-2*F
B = (X1+Y1)^2 C = X1^2 D = Y1^2 E = a*C F = E+D H = Z1^2 J = F-2*H X3 = (B-C-D)*J Y3 = F*(E-D) Z3 = F*J
YY = Y1^2 aXX = a*X1^2 Ap = YY+aXX B = 2*(2*Z1^2-Ap) xB = aXX*B yB = YY*B AA = Ap*(YY-aXX) F = AA-yB G = AA+xB X3 = X1*(yB+AA)*F Y3 = Y1*(xB-AA)*G Z3 = Z1*F*G