source 2006 Doche--Icart--Kohel "Efficient scalar multiplication by isogeny decompositions", page 197, middle display, plus substitution Z2=1 assume Z1 = 1 assume Z2 = 1 compute A = Y1-Y2 compute B = X1-X2 compute C = B compute Z3 = C^2 compute D = X1 Z3 compute E = A^2 compute F = X2 B C compute X3 = E - a Z3 - D - F compute G = Z3^2 compute H = A C compute Y3 = H(D-X3) - Y1 G compute ZZ3 = G