Explicit-Formulas Database
Genus-1 curves over large-characteristic fields
Hessian curves EFD / Genus-1 large-characteristic / Projective coordinates for Hessian curves

Projective coordinates for Hessian curves

An elliptic curve in Hessian form [more information] has parameters d and coordinates x y satisfying the following equations:
  x3+y3+1=3*d*x*y

Projective coordinates [database entry] represent x y as X Y Z satisfying the following equations:

  x=X/Z
  y=Y/Z

Best operation counts

Smallest multiplication counts assuming I=100M, S=1M, *param=0M, add=0M, *const=0M: Smallest multiplication counts assuming I=100M, S=0.8M, *param=0M, add=0M, *const=0M: Smallest multiplication counts assuming I=100M, S=0.67M, *param=0M, add=0M, *const=0M:

Summary of all explicit formulas

OperationAssumptionsCostReaddition cost
addition Z1=1 and Z2=1 8M 7M
addition Z2=1 10M 10M
addition 12M 12M
addition 12M 12M
addition 12M 12M
addition X2=1 5M + 9S 5M + 6S
addition 6M + 12S 6M + 6S
addition 12M + 6S 9M + 3S
doubling Z1=1 3M + 3S
doubling 7M + 1S
doubling 7M + 1S
doubling 3M + 6S
doubling 3M + 6S
doubling 6M + 3S
doubling 12M
doubling 3M + 63
tripling 3*b*d=1 8M + 6S + 1*b
tripling a=3*d 11M + 4S + 2*a
tripling 10M + 1S + 293 + 2*d
scaling 1I + 2M

Explicit formulas for addition

The "mmadd" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "madd" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "add-2001-jq" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "add-2009-bkl" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "add2" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "xmadd-2007-hcd" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "add-2008-hwcd" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "add" addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

Explicit formulas for doubling

The "mdbl-2007-hcd" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl-2007-hcd-2" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl-2007-hcd" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl-2007-hcd-3" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl-2007-hcd-4" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl2" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl-2001-jq" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

Explicit formulas for tripling

The "tpl-2007-hcd-3" tripling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "tpl-2007-hcd-2" tripling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "tpl-2007-hcd" tripling formulas [database entry; Sage verification script; Sage output; three-operand code]:

Explicit formulas for differential addition

Explicit formulas for differential addition and doubling

Explicit formulas for scaling

The "z" scaling formulas [database entry; Sage verification script; Sage output; three-operand code]: