Explicit-Formulas Database
Ordinary genus-1 curves over binary fields
Short Weierstrass curves EFD / Ordinary genus-1 binary / XZ coordinates for short Weierstrass curves

XZ coordinates for short Weierstrass curves

An elliptic curve in short Weierstrass form [more information] has parameters a2 a6 and coordinates x y satisfying the following equations:
  y2+x*y=x3+a2*x2+a6

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

  x=X/Z

Best operation counts

Smallest multiplication counts assuming I=10M, S=0M, *param=0M, add=0M, *const=0M: Smallest multiplication counts assuming I=10M, S=0.2M, *param=0M, add=0M, *const=0M:

Summary of all explicit formulas

OperationAssumptionsCostReaddition cost
doubling Z1=1 2S
doubling sqrta62=a6 1M + 3S + 1*sqrta6
doubling roota64=a6 1M + 3S + 1*roota6
doubling 1M + 4S + 1*a6
doubling 1M + 1S + 24 + 1*a6
diffadd Z1=1 4M + 1S
diffadd Z1=1 4M + 3S + 1*a6
diffadd 5M + 3S + 1*a6
diffadd 7M + 5S + 1*a6
ladder Z1=1 and a6=sqrta62 5M + 4S + 1*sqrta6
ladder Z1=1 5M + 5S + 1*a6
ladder Z1=1 and sqrta62=a6 5M + 5S + 2*sqrta6
ladder sqrta62=a6 6M + 5S + 2*sqrta6
ladder a6=sqrta62 and sqrta6=roota62 6M + 5S + 1*roota6 + 1*sqrta6
ladder 6M + 7S + 2*a6
ladder 8M + 6S + 24 + 2*a6
scaling 1I + 1M

Explicit formulas for addition

Explicit formulas for doubling

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

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

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

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

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

Explicit formulas for tripling

Explicit formulas for differential addition

The "mdadd-2003-s" differential-addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "mdadd-2003-s-2" differential-addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dadd-2003-s-2" differential-addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "dadd-2003-s" differential-addition formulas [database entry; Sage verification script; Sage output; three-operand code]:

Explicit formulas for differential addition and doubling

The "mladd-2003-s-2" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "mladd-2003-s" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "mladd-2003-s-3" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "ladd-2003-s-3" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "ladd-2003-s-4" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "ladd-2003-s-2" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

The "ladd-2003-s" differential-addition-and-doubling formulas [database entry; Sage verification script; Sage output; three-operand code]:

Explicit formulas for scaling

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