Explicit-Formulas Database
Genus-1 curves over large-characteristic fields

# Short Weierstrass curves

An elliptic curve in short Weierstrass form [database entry; Sage verification script; Sage output] has parameters a b and coordinates x y satisfying the following equations:
```  y^2=x^3+a*x+b
```
```  x3 = (y2-y1)^2/(x2-x1)^2-x1-x2
y3 = (2*x1+x2)*(y2-y1)/(x2-x1)-(y2-y1)^3/(x2-x1)^3-y1
```
Affine doubling formulas: 2(x1,y1)=(x3,y3) where
```  x3 = (3*x1^2+a)^2/(2*y1)^2-x1-x1
y3 = (2*x1+x1)*(3*x1^2+a)/(2*y1)-(3*x1^2+a)^3/(2*y1)^3-y1
```
Affine negation formulas: -(x1,y1)=(x1,-y1).

The neutral element of the curve is the unique point at infinity, namely (0:1:0) in projective coordinates.

## Representations for fast computations

```  a=0
```
and represent x y as X Y Z satisfying the following equations:
```  x=X/Z^2
y=Y/Z^3
```

```  a=-3
```
and represent x y as X Y Z satisfying the following equations:
```  x=X/Z^2
y=Y/Z^3
```

Jacobian coordinates [more information] represent x y as X Y Z satisfying the following equations:

```  x=X/Z^2
y=Y/Z^3
```

Modified Jacobian coordinates [more information] represent x y as X Y Z T satisfying the following equations:

```  x=X/Z^2
y=Y/Z^3
T=a*Z^4
```

```  a=-1
```
and represent x y as X Y Z satisfying the following equations:
```  x=X/Z
y=Y/Z
```

```  a=-3
```
and represent x y as X Y Z satisfying the following equations:
```  x=X/Z
y=Y/Z
```

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

```  x=X/Z
y=Y/Z
```

```  b=0
```
and represent x y as X Y Z satisfying the following equations:
```  x=X/Z
y=Y/Z^2
```

```  a=-3
```
and represent x y as X Y ZZ ZZZ satisfying the following equations:
```  x=X/ZZ
y=Y/ZZZ
ZZ^3=ZZZ^2
```

XYZZ coordinates [more information] represent x y as X Y ZZ ZZZ satisfying the following equations:

```  x=X/ZZ
y=Y/ZZZ
ZZ^3=ZZZ^2
```

XZ coordinates [more information] represent x y as X Z satisfying the following equations:

```  x=X/Z
```