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

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

An elliptic curve in tripling-oriented Doche–Icart–Kohel form [more information] has parameters a and coordinates x y satisfying the following equations:
  y2=x3+3*a*(x+1)2

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

  x=X/Z2
  y=Y/Z3
  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 a3=3*a and Z1=1 and Z2=1 4M + 2S + 1*a3 4M + 2S + 1*a3
addition a3=3*a and Z1=1 and Z2=1 4M + 3S + 1*a3 4M + 3S + 1*a3
addition a3=3*a and Z2=1 7M + 4S + 1*a3 7M + 4S + 1*a3
addition a3=3*a and Z2=1 8M + 3S + 1*a3 8M + 3S + 1*a3
addition a3=3*a 11M + 6S + 1*a3 10M + 6S + 1*a3
addition a3=3*a 13M + 4S + 1*a3 12M + 4S + 1*a3
addition 15M + 11S + 53 + 1*a 15M + 7S + 33 + 1*a
addition 7I + 11M + 9S + 53 + 1*a 5I + 9M + 8S + 43 + 1*a
doubling a2=2*a and a3=3*a and Z1=1 1M + 5S + 1*a2 + 1*a3
doubling a2=2*a and a3=3*a 2M + 7S + 1*a2 + 1*a3
doubling a3=3*a 4M + 5S + 1*a3 + 1*a
doubling a3=3*a 4M + 5S + 14 + 1*a3 + 2*a
tripling 6M + 6S + 2*a
tripling b=4*a-9 and c=-3*a 6M + 7S + 1*a + 1*b + 1*c
scaling 1I + 3M + 1S

Explicit formulas for addition

The "mmadd-2007-bblp" 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-bblp" 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-2007-bblp" 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-bblp" doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dbl-2007-bblp" 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

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

The "tpl-2006-dik" 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]: