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