Explicit-Formulas Database
Genus-1 curves over large-characteristic fields
Jacobi quartics EFD / Genus-1 large-characteristic / Doubling-oriented XYZ coordinates for Jacobi quartics

Doubling-oriented XYZ coordinates for Jacobi quartics

An elliptic curve in Jacobi quartic form [more information] has parameters a and coordinates x y satisfying the following equations:
  y2=x4+2*a*x2+1

Doubling-oriented XYZ coordinates [database entry] make the additional assumptions

  a2+c2=1
and represent x y as X Y Z satisfying the following equations:
  x=X/Z
  y=Y/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 5M + 2S + 1*a 5M + 2S + 1*a
addition Z2=1 8M + 3S + 1*a 8M + 3S + 1*a
addition 10M + 3S + 1*a 9M + 3S + 1*a
addition 8M + 6S + 1*a 8M + 3S + 1*a
addition 10M + 4S + 1*a 9M + 2S + 1*a
addition b=-2*a 10M + 4S + 1*b 9M + 2S + 1*b
addition 19M + 8S + 1*a 18M + 6S + 1*a
addition Z1=1 and Z2=1 2I + 11M + 5S + 1*a 2I + 11M + 4S + 1*a
doubling a2=2*a and Z1=1 1M + 4S + 1*a2
doubling a2=2*a and c2=2*c 1M + 7S + 1*a2 + 1*c2 + 1*c
doubling b=4-4*a2 2M + 6S + 1*a + 1*b
doubling a2=2*a 2M + 6S + 1*a2
doubling a2=2*a 3M + 6S + 2*a2
doubling 1M + 9S + 1*a
doubling a2=2*a 2M + 5S + 14 + 1*a2 + 2*c
doubling 19M + 8S + 1*a
doubling 19M + 8S + 1*a
scaling 1I + 2M + 1S

Explicit formulas for addition

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

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

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

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

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

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

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

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

Explicit formulas for doubling

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

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

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

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

The "dbl-2002-bj" 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]: