source Faster Group Operations on Elliptic Curves (Hisil--Wong--Carter--Dawson): https://eprints.qut.edu.au/27634/1/27634_hisil_2010000583.pdf, page 6
parameter k
assume k*c = 1
assume Z2 = 1
compute A = X1
compute B = Y1
compute C = Z1 X2
compute D = Z1 Y2
compute E = A B
compute F = C D
compute G = E+F
compute H = E-F
compute J = (A-C)(B+D)-H
compute K = (A+D)(B+C)-G
compute X3 = G J
compute Y3 = H K
compute Z3 = k J K
