Explicit-Formulas Database
Genus-1 curves over large-characteristic fields
Doubling-oriented Doche–Icart–Kohel curves EFD / Genus-1 large-characteristic / Standard coordinates for doubling-oriented Doche–Icart–Kohel curves

Standard coordinates for doubling-oriented Doche–Icart–Kohel curves

An elliptic curve in doubling-oriented Doche–Icart–Kohel form [more information] has parameters a and coordinates x y satisfying the following equations:
  y2=x3+a*x2+16*a*x

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

  x=X/Z
  y=Y/ZZ
  ZZ=Z2

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 4M + 4S + 1*a 4M + 4S + 1*a
addition Z1=1 and Z2=1 4M + 4S + 1*a 4M + 4S + 1*a
addition Z1=1 and Z2=1 6M + 3S + 1*a 6M + 3S + 1*a
addition Z2=1 8M + 4S + 1*a 8M + 4S + 1*a
addition Z2=1 9M + 3S + 1*a 9M + 3S + 1*a
addition 12M + 5S + 1*a 12M + 5S + 1*a
addition 21M + 15S + 24 + 1*a 21M + 11S + 14 + 1*a
addition 7I + 12M + 9S + 14 + 1*a 4I + 9M + 8S + 14 + 1*a
doubling a2=2*a and a16=16*a and Z1=1 1M + 5S + 1*a2 + 1*a
doubling a2=2*a 2M + 5S + 1*a2 + 1*a
doubling a4=4*a 3M + 4S + 1*a + 1*a4
doubling a16=16*a 3M + 8S + 1*a16 + 2*a
scaling 1I + 2M + 1S

Explicit formulas for addition

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

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

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

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

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

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

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

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

Explicit formulas for doubling

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

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

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

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

Explicit formulas for tripling

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]: