The Basic Theory

2.1 Weierstrass Equations

For most situations in this book, an elliptic curve E is the graph of an

equation of the form

y 2 = x3 + Ax + B,

where A and B are constants. This will be referred to as the Weierstrass

equation for an elliptic curve. We will need to specify what set A, B, x, and

y belong to. Usually, they will be taken to be elements of a ¬eld, for example,

the real numbers R, the complex numbers C, the rational numbers Q, one of

the ¬nite ¬elds Fp (= Zp ) for a prime p, or one of the ¬nite ¬elds Fq , where

q = pk with k ≥ 1. In fact, for almost all of this book, the reader who is

not familiar with ¬elds may assume that a ¬eld means one of the ¬elds just

listed. If K is a ¬eld with A, B ∈ K, then we say that E is de¬ned over

K. Throughout this book, E and K will implicitly be assumed to denote an

elliptic curve and a ¬eld over which E is de¬ned.

If we want to consider points with coordinates in some ¬eld L ⊇ K, we

write E(L). By de¬nition, this set always contains the point ∞ de¬ned later

in this section:

E(L) = {∞} ∪ (x, y) ∈ L — L | y 2 = x3 + Ax + B .

It is not possible to draw meaningful pictures of elliptic curves over most

¬elds. However, for intuition, it is useful to think in terms of graphs over the

real numbers. These have two basic forms, depicted in Figure 2.1.

The cubic y 2 = x3 ’ x in the ¬rst case has three distinct real roots. In the

second case, the cubic y 2 = x3 + x has only one real root.

What happens if there is a multiple root? We don™t allow this. Namely, we

assume that

4A3 + 27B 2 = 0.

If the roots of the cubic are r1 , r2 , r3 , then it can be shown that the discrimi-

nant of the cubic is

2

((r1 ’ r2 )(r1 ’ r3 )(r2 ’ r3 )) = ’(4A3 + 27B 2 ).

9

© 2008 by Taylor & Francis Group, LLC

10 CHAPTER 2 THE BASIC THEORY

y 2 = x3 ’ x (b) y 2 = x3 + x

(a)

Figure 2.1

Therefore, the roots of the cubic must be distinct. However, the case where the

roots are not distinct is still interesting and will be discussed in Section 2.10.

In order to have a little more ¬‚exibility, we also allow somewhat more

general equations of the form

y 2 + a1 xy + a3 y = x3 + a2 x2 + a4 x + a6 , (2.1)

where a1 , . . . , a6 are constants. This more general form (we™ll call it the gen-

eralized Weierstrass equation) is useful when working with ¬elds of char-

acteristic 2 and characteristic 3. If the characteristic of the ¬eld is not 2, then

we can divide by 2 and complete the square:

a2 a2

2

a1 x a3 a1 a3

1 3

= x3 + a2 + x2 + a4 +

+ x+ + a6 ,

y+

2 2 4 2 4

which can be written as

y1 = x3 + a2 x2 + a4 x + a6 ,

2

with y1 = y + a1 x/2 + a3 /2 and with some constants a2 , a4 , a6 . If the charac-

teristic is also not 3, then we can let x1 = x + a2 /3 and obtain

y1 = x3 + Ax1 + B,

2

1

for some constants A, B.

© 2008 by Taylor & Francis Group, LLC

11

SECTION 2.1 WEIERSTRASS EQUATIONS

In most of this book, we will develop the theory using the Weierstrass

equation, occasionally pointing out what modi¬cations need to be made in

characteristics 2 and 3. In Section 2.8, we discuss the case of characteristic 2 in

more detail, since the formulas for the (nongeneralized) Weierstrass equation

do not apply. In contrast, these formulas are correct in characteristic 3 for

curves of the form y 2 = x3 + Ax + B, but there are curves that are not of

this form. The general case for characteristic 3 can be obtained by using the

present methods to treat curves of the form y 2 = x3 + Cx2 + Ax + B.

Finally, suppose we start with an equation

cy 2 = dx3 + ax + b

with c, d = 0. Multiply both sides of the equation by c3 d2 to obtain

(c2 dy)2 = (cdx)3 + (ac2 d)(cdx) + (bc3 d2 ).

The change of variables

y1 = c2 dy, x1 = cdx

yields an equation in Weierstrass form.

Later in this chapter, we will meet other types of equations that can be

transformed into Weierstrass equations for elliptic curves. These will be useful

in certain contexts.

For technical reasons, it is useful to add a point at in¬nity to an elliptic

curve. In Section 2.3, this concept will be made rigorous. However, it is

easiest to regard it as a point (∞, ∞), usually denoted simply by ∞, sitting

at the top of the y-axis. For computational purposes, it will be a formal

symbol satisfying certain computational rules. For example, a line is said to

pass through ∞ exactly when this line is vertical (i.e., x =constant). The

point ∞ might seem a little unnatural, but we will see that including it has

very useful consequences.

We now make one more convention regarding ∞. It not only is at the top of

the y-axis, it is also at the bottom of the y-axis. Namely, we think of the ends

of the y-axis as wrapping around and meeting (perhaps somewhere in the back

behind the page) in the point ∞. This might seem a little strange. However,

if we are working with a ¬eld other than the real numbers, for example, a

¬nite ¬eld, then there might not be any meaningful ordering of the elements

and therefore distinguishing a top and a bottom of the y-axis might not make

sense. In fact, in this situation, the ends of the y-axis do not have meaning

until we introduce projective coordinates in Section 2.3. This is why it is best

to regard ∞ as a formal symbol satisfying certain properties. Also, we have

arranged that two vertical lines meet at ∞. By symmetry, if they meet at the

top of the y-axis, they should also meet at the bottom. But two lines should

intersect in only one point, so the “top ∞” and the “bottom ∞” need to be

the same. In any case, this will be a useful property of ∞.

© 2008 by Taylor & Francis Group, LLC

12 CHAPTER 2 THE BASIC THEORY

2.2 The Group Law

As we saw in Chapter 1, we could start with two points, or even one point,

on an elliptic curve, and produce another point. We now examine this process

in more detail.

P™

3

P2

P1

P3

Figure 2.2

Adding Points on an Elliptic Curve

Start with two points

P1 = (x1 , y1 ), P2 = (x2 , y2 )

on an elliptic curve E given by the equation y 2 = x3 + Ax + B. De¬ne a new

point P3 as follows. Draw the line L through P1 and P2 . We™ll see below that

L intersects E in a third point P3 . Re¬‚ect P3 across the x-axis (i.e., change

the sign of the y-coordinate) to obtain P3 . We de¬ne

P1 + P2 = P3 .

Examples below will show that this is not the same as adding coordinates of

the points. It might be better to denote this operation by P1 +E P2 , but we

opt for the simpler notation since we will never be adding points by adding

coordinates.

Assume ¬rst that P1 = P2 and that neither point is ∞. Draw the line L

through P1 and P2 . Its slope is

y2 ’ y 1

m= .

x2 ’ x1

© 2008 by Taylor & Francis Group, LLC

13

SECTION 2.2 THE GROUP LAW

If x1 = x2 , then L is vertical. We™ll treat this case later, so let™s assume that

x1 = x2 . The equation of L is then

y = m(x ’ x1 ) + y1 .

To ¬nd the intersection with E, substitute to get

2

(m(x ’ x1 ) + y1 ) = x3 + Ax + B.

This can be rearranged to the form

0 = x3 ’ m2 x2 + · · · .

The three roots of this cubic correspond to the three points of intersection of

L with E. Generally, solving a cubic is not easy, but in the present case we

already know two of the roots, namely x1 and x2 , since P1 and P2 are points

on both L and E. Therefore, we could factor the cubic to obtain the third

value of x. But there is an easier way. As in Chapter 1, if we have a cubic

polynomial x3 + ax2 + bx + c with roots r, s, t, then

x3 + ax2 + bx + c = (x ’ r)(x ’ s)(x ’ t) = x3 ’ (r + s + t)x2 + · · · .

Therefore,

r + s + t = ’a.

If we know two roots r, s, then we can recover the third as t = ’a ’ r ’ s.

In our case, we obtain

x = m2 ’ x1 ’ x2

and

y = m(x ’ x1 ) + y1 .

Now, re¬‚ect across the x-axis to obtain the point P3 = (x3 , y3 ):

x3 = m2 ’ x1 ’ x2 , y3 = m(x1 ’ x3 ) ’ y1 .

In the case that x1 = x2 but y1 = y2 , the line through P1 and P2 is a vertical

line, which therefore intersects E in ∞. Re¬‚ecting ∞ across the x-axis yields

the same point ∞ (this is why we put ∞ at both the top and the bottom of

the y-axis). Therefore, in this case P1 + P2 = ∞.

Now consider the case where P1 = P2 = (x1 , y1 ). When two points on

a curve are very close to each other, the line through them approximates a

tangent line. Therefore, when the two points coincide, we take the line L

through them to be the tangent line. Implicit di¬erentiation allows us to ¬nd

the slope m of L:

3x2 + A

dy

dy

=1

= 3x2 + A, so m= .

2y

dx dx 2y1

© 2008 by Taylor & Francis Group, LLC

14 CHAPTER 2 THE BASIC THEORY

If y1 = 0 then the line is vertical and we set P1 +P2 = ∞, as before. (Technical

point: if y1 = 0, then the numerator 3x2 +A = 0. See Exercise 2.5.) Therefore,

1

assume that y1 = 0. The equation of L is

y = m(x ’ x1 ) + y1 ,

as before. We obtain the cubic equation

0 = x3 ’ m2 x2 + · · · .

This time, we know only one root, namely x1 , but it is a double root since L

is tangent to E at P1 . Therefore, proceeding as before, we obtain

x3 = m2 ’ 2x1 , y3 = m(x1 ’ x3 ) ’ y1 .

Finally, suppose P2 = ∞. The line through P1 and ∞ is a vertical line

that intersects E in the point P1 that is the re¬‚ection of P1 across the x-axis.

When we re¬‚ect P1 across the x-axis to get P3 = P1 + P2 , we are back at P1 .

Therefore

P1 + ∞ = P 1

for all points P1 on E. Of course, we extend this to include ∞ + ∞ = ∞.

Let™s summarize the above discussion:

GROUP LAW

Let E be an elliptic curve de¬ned by y 2 = x3 + Ax + B. Let P1 = (x1 , y1 ) and

P2 = (x2 , y2 ) be points on E with P1 , P2 = ∞. De¬ne P1 + P2 = P3 = (x3 , y3 )

as follows:

1. If x1 = x2 , then

y2 ’ y 1

x3 = m2 ’ x1 ’ x2 , y3 = m(x1 ’ x3 ) ’ y1 , where m = .

x2 ’ x1

2. If x1 = x2 but y1 = y2 , then P1 + P2 = ∞.

3. If P1 = P2 and y1 = 0, then

3x2 + A

1

x3 = m2 ’ 2x1 , y3 = m(x1 ’ x3 ) ’ y1 , where m = .

2y1

4. If P1 = P2 and y1 = 0, then P1 + P2 = ∞.

Moreover, de¬ne

P +∞=P

for all points P on E.

© 2008 by Taylor & Francis Group, LLC

15

SECTION 2.2 THE GROUP LAW

Note that when P1 and P2 have coordinates in a ¬eld L that contains A and

B, then P1 + P2 also has coordinates in L. Therefore E(L) is closed under

the above addition of points.

This addition of points might seem a little unnatural. Later (in Chapters 9

and 11), we™ll interpret it as corresponding to some very natural operations,

but, for the present, let™s show that it has some nice properties.

THEOREM 2.1

The addition of points on an elliptic curve E satis¬es the following properties:

1. (commutativity) P1 + P2 = P2 + P1 for all P1 , P2 on E.

2. (existence of identity) P + ∞ = P for all points P on E.

3. (existence of inverses) Given P on E, there exists P on E with P +P =

∞. This point P will usually be denoted ’P .

4. (associativity) (P1 + P2 ) + P3 = P1 + (P2 + P3 ) for all P1 , P2 , P3 on E.

In other words, the points on E form an additive abelian group with ∞ as the

identity element.

PROOF The commutativity is obvious, either from the formulas or from

the fact that the line through P1 and P2 is the same as the line through P2

and P1 . The identity property of ∞ holds by de¬nition. For inverses, let P

be the re¬‚ection of P across the x-axis. Then P + P = ∞.

Finally, we need to prove associativity. This is by far the most subtle and

nonobvious property of the addition of points on E. It is possible to de¬ne

many laws of composition satisfying (1), (2), (3) for points on E, either simpler

or more complicated than the one being considered. But it is very unlikely

that such a law will be associative. In fact, it is rather surprising that the

law of composition that we have de¬ned is associative. After all, we start

with two points P1 and P2 and perform a certain procedure to obtain a third

point P1 + P2 . Then we repeat the procedure with P1 + P2 and P3 to obtain

(P1 + P2 ) + P3 . If we instead start by adding P2 and P3 , then computing

P1 + (P2 + P3 ), there seems to be no obvious reason that this should give the

same point as the other computation.

The associative law can be veri¬ed by calculation with the formulas. There

are several cases, depending on whether or not P1 = P2 , and whether or not

P3 = (P1 + P2 ), etc., and this makes the proof rather messy. However, we

prefer a di¬erent approach, which we give in Section 2.4.

Warning: For the Weierstrass equation, if P = (x, y), then ’P = (x, ’y).

For the generalized Weierstrass equation (2.1), this is no longer the case. If

P = (x, y) is on the curve described by (2.1), then (see Exercise 2.9)

’P = (x, ’a1 x ’ a3 ’ y).

© 2008 by Taylor & Francis Group, LLC

16 CHAPTER 2 THE BASIC THEORY

Example 2.1

The calculations of Chapter 1 can now be interpreted as adding points on

elliptic curves. On the curve

x(x + 1)(2x + 1)

y2 = ,

6

we have

11 11

(0, 0) + (1, 1) = ( , ’ ), ( , ’ ) + (1, 1) = (24, ’70).

22 22

On the curve

y 2 = x3 ’ 25x,

we have

1681 62279

,’

2(’4, 6) = (’4, 6) + (’4, 6) = .

144 1728

We also have

2(0, 0) = 2(’5, 0) = 2(5, 0) = ∞.

(0, 0) + (’5, 0) = (5, 0),

The fact that the points on an elliptic curve form an abelian group is be-

hind most of the interesting properties and applications. The question arises:

what can we say about the groups of points that we obtain? Here are some

examples.

1. An elliptic curve over a ¬nite ¬eld has only ¬nitely many points with

coordinates in that ¬nite ¬eld. Therefore, we obtain a ¬nite abelian

group in this case. Properties of such groups, and applications to cryp-

tography, will be discussed in later chapters.

2. If E is an elliptic curve de¬ned over Q, then E(Q) is a ¬nitely generated

abelian group. This is the Mordell-Weil theorem, which we prove in

Chapter 8. Such a group is isomorphic to Zr • F for some r ≥ 0

and some ¬nite group F . The integer r is called the rank of E(Q).

Determining r is fairly di¬cult in general. It is not known whether r

can be arbitrarily large. At present, there are elliptic curves known with

rank at least 28. The ¬nite group F is easy to compute using the Lutz-

Nagell theorem of Chapter 8. Moreover, a deep theorem of Mazur says

that there are only ¬nitely many possibilities for F , as E ranges over all

elliptic curves de¬ned over Q.

3. An elliptic curve over the complex numbers C is isomorphic to a torus.

This will be proved in Chapter 9. The usual way to obtain a torus is as

C/L, where L is a lattice in C. The usual addition of complex numbers

induces a group law on C/L that corresponds to the group law on the

elliptic curve under the isomorphism between the torus and the elliptic

curve.

© 2008 by Taylor & Francis Group, LLC

17

SECTION 2.2 THE GROUP LAW

Figure 2.3

An Elliptic Curve over C

4. If E is de¬ned over R, then E(R) is isomorphic to the unit circle S 1

or to S 1 • Z2 . The ¬rst case corresponds to the case where the cubic

polynomial x3 + Ax + B has only one real root (think of the ends of the

graph in Figure 2.1(b) as being hitched together at the point ∞ to get a

loop). The second case corresponds to the case where the cubic has three

real roots. The closed loop in Figure 2.1(a) is the set S 1 • {1}, while the

open-ended loop can be closed up using ∞ to obtain the set S 1 • {0}.

If we have an elliptic curve E de¬ned over R, then we can consider its

complex points E(C). These form a torus, as in (3) above. The real

points E(R) are obtained by intersecting the torus with a plane. If the

plane passes through the hole in the middle, we obtain a curve as in

Figure 2.1(a). If it does not pass through the hole, we obtain a curve as

in Figure 2.1(b) (see Section 9.3).

If P is a point on an elliptic curve and k is a positive integer, then kP

denotes P + P + · · · + P (with k summands). If k < 0, then kP = (’P ) +

(’P ) + · · · (’P ), with |k| summands. To compute kP for a large integer k, it

is ine¬cient to add P to itself repeatedly. It is much faster to use successive

doubling. For example, to compute 19P , we compute

2P, 4P = 2P +2P, 8P = 4P +4P, 16P = 8P +8P, 19P = 16P +2P +P.

This method allows us to compute kP for very large k, say of several hundred

digits, very quickly. The only di¬culty is that the size of the coordinates of

the points increases very rapidly if we are working over the rational numbers

(see Theorem 8.18). However, when we are working over a ¬nite ¬eld, for

example Fp , this is not a problem because we can continually reduce mod p

and thus keep the numbers involved relatively small. Note that the associative

© 2008 by Taylor & Francis Group, LLC

18 CHAPTER 2 THE BASIC THEORY

law allows us to make these computations without worrying about what order

we use to combine the summands.

The method of successive doubling can be stated in general as follows:

INTEGER TIMES A POINT

Let k be a positive integer and let P be a point on an elliptic curve. The

following procedure computes kP .

1. Start with a = k, B = ∞, C = P .

2. If a is even, let a = a/2, and let B = B, C = 2C.

3. If a is odd, let a = a ’ 1, and let B = B + C, C = C.

4. If a = 0, go to step 2.

5. Output B.

The output B is kP (see Exercise 2.8).

On the other hand, if we are working over a large ¬nite ¬eld and are given

points P and kP , it is very di¬cult to determine the value of k. This is called

the discrete logarithm problem for elliptic curves and is the basis for the

cryptographic applications that will be discussed in Chapter 6.

2.3 Projective Space and the Point at In¬nity

We all know that parallel lines meet at in¬nity. Projective space allows us

to make sense out of this statement and also to interpret the point at in¬nity

on an elliptic curve.

Let K be a ¬eld. Two-dimensional projective space P2 over K is given by

K

equivalence classes of triples (x, y, z) with x, y, z ∈ K and at least one of x, y, z

nonzero. Two triples (x1 , y1 , z1 ) and (x2 , y2 , z2 ) are said to be equivalent if

there exists a nonzero element » ∈ K such that

(x1 , y1 , z1 ) = (»x2 , »y2 , »z2 ).

We write (x1 , y1 , z1 ) ∼ (x2 , y2 , z2 ). The equivalence class of a triple only

depends on the ratios of x to y to z. Therefore, the equivalence class of

(x, y, z) is denoted (x : y : z).

If (x : y : z) is a point with z = 0, then (x : y : z) = (x/z : y/z : 1). These

are the “¬nite” points in P2 . However, if z = 0 then dividing by z should

K

be thought of as giving ∞ in either the x or y coordinate, and therefore the

points (x : y : 0) are called the “points at in¬nity” in P2 . The point at

K

© 2008 by Taylor & Francis Group, LLC

19

SECTION 2.3 PROJECTIVE SPACE AND THE POINT AT INFINITY

in¬nity on an elliptic curve will soon be identi¬ed with one of these points at

in¬nity in P2 .

K

The two-dimensional a¬ne plane over K is often denoted

A2 = {(x, y) ∈ K — K}.

K

We have an inclusion

A2 ’ P2

K K

given by

(x, y) ’ (x : y : 1).

In this way, the a¬ne plane is identi¬ed with the ¬nite points in P2 . Adding K

the points at in¬nity to obtain P2 can be viewed as a way of “compactifying”

K

the plane (see Exercise 2.10).

A polynomial is homogeneous of degree n if it is a sum of terms of the

form axi y j z k with a ∈ K and i + j + k = n. For example, F (x, y, z) =

2x3 ’ 5xyz + 7yz 2 is homogeneous of degree 3. If a polynomial F is homoge-

neous of degree n then F (»x, »y, »z) = »n F (x, y, z) for all » ∈ K. It follows

that if F is homogeneous of some degree, and (x1 , y1 , z1 ) ∼ (x2 , y2 , z2 ), then

F (x1 , y1 , z1 ) = 0 if and only if F (x2 , y2 , z2 ) = 0. Therefore, a zero of F in P2

K

does not depend on the choice of representative for the equivalence class, so

the set of zeros of F in P2 is well de¬ned.

K

If F (x, y, z) is an arbitrary polynomial in x, y, z, then we cannot talk about

a point in P2 where F (x, y, z) = 0 since this depends on the representative

K

(x, y, z) of the equivalence class. For example, let F (x, y, z) = x2 + 2y ’ 3z.

Then F (1, 1, 1) = 0, so we might be tempted to say that F vanishes at (1 : 1 :

1). But F (2, 2, 2) = 2 and (1 : 1 : 1) = (2 : 2 : 2). To avoid this problem, we

need to work with homogeneous polynomials.

If f (x, y) is a polynomial in x and y, then we can make it homogeneous by

inserting appropriate powers of z. For example, if f (x, y) = y 2 ’ x3 ’ Ax ’ B,

then we obtain the homogeneous polynomial F (x, y, z) = y 2 z ’ x3 ’ Axz 2 ’

Bz 3 . If F is homogeneous of degree n then

xy

F (x, y, z) = z n f ( , )

zz

and

f (x, y) = F (x, y, 1).

We can now see what it means for two parallel lines to meet at in¬nity. Let

y = mx + b1 , y = mx + b2

be two nonvertical parallel lines with b1 = b2 . They have the homogeneous

forms

y = mx + b1 z, y = mx + b2 z.

© 2008 by Taylor & Francis Group, LLC

20 CHAPTER 2 THE BASIC THEORY

(The preceding discussion considered only equations of the form f (x, y) = 0

and F (x, y, z) = 0; however, there is nothing wrong with rearranging these

equations to the form “homogeneous of degree n = homogeneous of degree

n.”) When we solve the simultaneous equations to ¬nd their intersection, we

obtain

z = 0 and y = mx.

Since we cannot have all of x, y, z being 0, we must have x = 0. Therefore, we

can rescale by dividing by x and ¬nd that the intersection of the two lines is

(x : mx : 0) = (1 : m : 0).

Similarly, if x = c1 and x = c2 are two vertical lines, they intersect in the

point (0 : 1 : 0). This is one of the points at in¬nity in P2 .

K

Now let™s look at the elliptic curve E given by y 2 = x3 + Ax + B. Its

homogeneous form is y 2 z = x3 + Axz 2 + Bz 3 . The points (x, y) on the

original curve correspond to the points (x : y : 1) in the projective version. To

see what points on E lie at in¬nity, set z = 0 and obtain 0 = x3 . Therefore

x = 0, and y can be any nonzero number (recall that (0 : 0 : 0) is not allowed).

Rescale by y to ¬nd that (0 : y : 0) = (0 : 1 : 0) is the only point at in¬nity on

E. As we saw above, (0 : 1 : 0) lies on every vertical line, so every vertical line

intersects E at this point at in¬nity. Moreover, since (0 : 1 : 0) = (0 : ’1 : 0),

the “top” and the “bottom” of the y-axis are the same.

There are situations where using projective coordinates speeds up compu-

tations on elliptic curves (see Section 2.6). However, in this book we almost

always work in a¬ne (nonprojective) coordinates and treat the point at in¬n-

ity as a special case when needed. An exception is the proof of associativity

of the group law given in Section 2.4, where it will be convenient to have the

point at in¬nity treated like any other point (x : y : z).

2.4 Proof of Associativity

In this section, we prove the associativity of addition of points on an elliptic

curve. The reader who is willing to believe this result may skip this section

without missing anything that is needed in the rest of the book. However,

as corollaries of the proof, we will obtain two results, namely the theorems of

Pappus and Pascal, that are not about elliptic curves but which are interesting

in their own right.

The basic idea is the following. Start with an elliptic curve E and points

P, Q, R on E. To compute ’ ((P + Q) + R) we need to form the lines 1 =

P Q, m2 = ∞, P + Q, and 3 = R, P + Q, and see where they intersect E.

To compute ’ ((P + (Q + R)) we need to form the lines m1 = QR, 2 =

∞, Q + R, and m3 = P, Q + R. It is easy to see that the points Pij = i © mj

© 2008 by Taylor & Francis Group, LLC

21

SECTION 2.4 PROOF OF ASSOCIATIVITY

lie on E, except possibly for P33 . We show in Theorem 2.6 that having the

eight points Pij = P33 on E forces P33 to be on E. Since 3 intersects E at

the points R, P + Q, ’ ((P + Q) + R), we must have ’ ((P + Q) + R) = P33 .

Similarly, ’ (P + (Q + R)) = P33 , so

’ ((P + Q) + R) = ’ (P + (Q + R)) ,

which implies the desired associativity.

There are three main technicalities that must be treated. First, some of

the points Pij could be at in¬nity, so we need to use projective coordinates.

Second, a line could be tangent to E, which means that two Pij could be

equal. Therefore, we need a careful de¬nition of the order to which a line

intersects a curve. Third, two of the lines could be equal. Dealing with these

technicalities takes up most of our attention during the proof.

First, we need to discuss lines in P2 . The standard way to describe a line

K

is by a linear equation: ax + by + cz = 0. Sometimes it is useful to give a

parametric description:

x = a1 u + b1 v

y = a2 u + b2 v (2.2)

z = a3 u + b3 v

where u, v run through K, and at least one of u, v is nonzero. For example, if

a = 0, the line

ax + by + cz = 0

can be described by

x = ’(b/a)u ’ (c/a)v, y = u, z = v.

Suppose all the vectors (ai , bi ) are multiples of each other, say (ai , bi ) =

»i (a1 , b1 ). Then (x, y, z) = x(1, »2 , »3 ) for all u, v such that x = 0. So we get

a point, rather than a line, in projective space. Therefore, we need a condition

on the coe¬cients a1 , . . . , b3 that ensure that we actually get a line. It is not

hard to see that we must require the matrix

⎛ ⎞

a1 b1

⎝ a2 b2 ⎠

a3 b3

to have rank 2 (cf. Exercise 2.12).

If (u1 , v1 ) = »(u2 , v2 ) for some » ∈ K — , then (u1 , v1 ) and (u2 , v2 ) yield

equivalent triples (x, y, z). Therefore, we can regard (u, v) as running through

points (u : v) in 1-dimensional projective space P1 . Consequently, a line

K

corresponds to a copy of the projective line P1 embedded in the projective

K

plane.

© 2008 by Taylor & Francis Group, LLC

22 CHAPTER 2 THE BASIC THEORY

We need to quantify the order to which a line intersects a curve at a point.

The following gets us started.

LEMMA 2.2

Let G(u, v) be a nonzero homogeneous polynomial and let (u0 : v0 ) ∈ P1 . K

Then there exists an integer k ≥ 0 and a polynomial H(u, v) with H(u0 , v0 ) =

0 such that

G(u, v) = (v0 u ’ u0 v)k H(u, v).

PROOF Suppose v0 = 0. Let m be the degree of G. Let g(u) = G(u, v0 ).

By factoring out as large a power of u ’ u0 as possible, we can write g(u) =

(u ’ u0 )k h(u) for some k and for some polynomial h of degree m ’ k with

h(u0 ) = 0. Let H(u, v) = (v m’k /v0 )h(uv0 /v), so H(u, v) is homogeneous of

m

degree m ’ k. Then

m

v m’k

uv0 uv0

v k

= m (v0 u ’ u0 v) h

g

G(u, v) =

v0 v v0 v

=(v0 u ’ u0 v)k H(u, v),

as desired.

If v0 = 0, then u0 = 0. Reversing the roles of u and v yields the proof in

this case.

Let f (x, y) = 0 (where f is a polynomial) describe a curve C in the a¬ne

plane and let

x = a1 t + b1 , y = a2 t + b2

be a line L written in terms of the parameter t. Let

˜

f (t) = f (a1 t + b1 , a2 t + b2 ).

Then L intersects C when t = t0 if f (t0 ) = 0. If (t ’ t0 )2 divides f (t),

˜ ˜

then L is tangent to C (if the point corresponding to t0 is nonsingular. See

Lemma 2.5). More generally, we say that L intersects C to order n at the

point (x, y) corresponding to t = t0 if (t ’ t0 )n is the highest power of (t ’ t0 )

˜

that divides f (t).

The homogeneous version of the above is the following. Let F (x, y, z) be a

homogeneous polynomial, so F = 0 describes a curve C in P2 . Let L be a

K

line given parametrically by (2.2) and let

˜

F (u, v) = F (a1 u + b1 v, a2 u + b2 v, a3 u + b3 v).

We say that L intersects C to order n at the point P = (x0 : y0 : z0 )

corresponding to (u : v) = (u0 : v0 ) if (v0 u ’ u0 v)n is the highest power of

˜

(v0 u ’ u0 v) dividing F (u, v). We denote this by

ordL,P (F ) = n.

© 2008 by Taylor & Francis Group, LLC

23

SECTION 2.4 PROOF OF ASSOCIATIVITY

˜

If F is identically 0, then we let ordL,P (F ) = ∞. It is not hard to show that

ordL,P (F ) is independent of the choice of parameterization of the line L. Note

that v = v0 = 1 corresponds to the nonhomogeneous situation above, and the

de¬nitions coincide (at least when z = 0). The advantage of the homogeneous

formulation is that it allows us to treat the points at in¬nity along with the

¬nite points in a uniform manner.

LEMMA 2.3

Let L1 and L2 be lines intersecting in a point P , and, for i = 1, 2, let

Li (x, y, z) be a linear polynomial de¬ning Li . Then ordL1 ,P (L2 ) = 1 unless

L1 (x, y, z) = ±L2 (x, y, z) for some constant ±, in which case ordL1 ,P (L2 ) =

∞.

PROOF When we substitute the parameterization for L1 into L2 (x, y, z),

˜

we obtain L2 , which is a linear expression in u, v. Let P correspond to (u0 :

˜ ˜

v0 ). Since L2 (u0 , v0 ) = 0, it follows that L2 (u, v) = β(v0 u ’ u0 v) for some

constant β. If β = 0, then ordL1 ,P (L2 ) = 1. If β = 0, then all points on

L1 lie on L2 . Since two points in P2 determine a line, and L1 has at least

K

1

three points (PK always contains the points (1 : 0), (0 : 1), (1 : 1)), it follows

that L1 and L2 are the same line. Therefore L1 (x, y, z) is proportional to

L2 (x, y, z).

Usually, a line that intersects a curve to order at least 2 is tangent to the

curve. However, consider the curve C de¬ned by

F (x, y, z) = y 2 z ’ x3 = 0.

Let

x = au, y = bu, z=v

be a line through the point P = (0 : 0 : 1). Note that P corresponds to

(u : v) = (0 : 1). We have F (u, v) = u2 (b2 v ’ a3 u), so every line through P

˜

intersects C to order at least 2. The line with b = 0, which is the best choice

for the tangent at P , intersects C to order 3. The a¬ne part of C is the curve

y 2 = x3 , which is pictured in Figure 2.7. The point (0, 0) is a singularity of

the curve, which is why the intersections at P have higher orders than might

be expected. This is a situation we usually want to avoid.

DEFINITION 2.4 A curve C in P2 de¬ned by F (x, y, z) = 0 is said to be

K

nonsingular at a point P if at least one of the partial derivatives Fx , Fy , Fz

is nonzero at P .

For example, consider an elliptic curve de¬ned by F (x, y, z) = y 2 z ’ x3 ’

Axz 2 ’ Bz 3 = 0, and assume the characteristic of our ¬eld K is not 2 or 3.

© 2008 by Taylor & Francis Group, LLC

24 CHAPTER 2 THE BASIC THEORY

We have

Fx = ’3x2 ’ Az 2 , Fz = y 2 ’ 2Axz ’ 3Bz 2 .

Fy = 2yz,

Suppose P = (x : y : z) is a singular point. If z = 0, then Fx = 0 implies

x = 0 and Fz = 0 implies y = 0, so P = (0 : 0 : 0), which is impossible.

Therefore z = 0, so we may take z = 1 (and therefore ignore it). If Fy = 0,

then y = 0. Since (x : y : 1) lies on the curve, x must satisfy x3 + Ax + B = 0.

If Fx = ’(3x2 + A) = 0, then x is a root of a polynomial and a root of its

derivative, hence a double root. Since we assumed that the cubic polynomial

has no multiple roots, we have a contradiction. Therefore an elliptic curve has

no singular points. Note that this is true even if we are considering points with

coordinates in K (= algebraic closure of K). In general, by a nonsingular

curve we mean a curve with no singular points in K.

If we allow the cubic polynomial to have a multiple root x, then it is easy to

see that the curve has a singularity at (x : 0 : 1). This case will be discussed

in Section 2.10.

If P is a nonsingular point of a curve F (x, y, z) = 0, then the tangent line

at P is

Fx (P )x + Fy (P )y + Fz (P )z = 0.

For example, if F (x, y, z) = y 2 z ’ x3 ’ Axz 2 ’ Bz 3 = 0, then the tangent

line at (x0 : y0 : z0 ) is

(’3x2 ’ Az0 )x + 2y0 z0 y + (y0 ’ 2Ax0 z0 ’ 3Bz0 )z = 0.

2 2 2

0

If we set z0 = z = 1, then we obtain

(’3x2 ’ A)x + 2y0 y + (y0 ’ 2Ax0 ’ 3B) = 0.

2

0

Using the fact that y0 = x3 + Ax0 + B, we can rewrite this as

2

0

(’3x2 ’ A)(x ’ x0 ) + 2y0 (y ’ y0 ) = 0.

0

This is the tangent line in a¬ne coordinates that we used in obtaining the

formulas for adding a point to itself on an elliptic curve. Now let™s look at

the point at in¬nity on this curve. We have (x0 : y0 : z0 ) = (0 : 1 : 0). The

tangent line is given by 0x + 0y + z = 0, which is the “line at in¬nity” in P2 .

K

It intersects the elliptic curve only in the point (0 : 1 : 0). This corresponds

to the fact that ∞ + ∞ = ∞ on an elliptic curve.

LEMMA 2.5

Let F (x, y, z) = 0 de¬ne a curve C. If P is a nonsingular point of C, then

there is exactly one line in P2 that intersects C to order at least 2, and it is

K

the tangent to C at P .

PROOF Let L be a line intersecting C to order k ≥ 1. Parameterize L

˜

by (2.2) and substitute into F . This yields F (u, v). Let (u0 : v0 ) correspond

© 2008 by Taylor & Francis Group, LLC

25

SECTION 2.4 PROOF OF ASSOCIATIVITY

˜

to P . Then F = (v0 u ’ u0 v)k H(u, v) for some H(u, v) with H(u0 , v0 ) = 0.

Therefore,

˜

Fu (u, v) = kv0 (v0 u ’ u0 v)k’1 H(u, v) + (v0 u ’ u0 v)k Hu (u, v)

and

˜

Fv (u, v) = ’ku0 (v0 u ’ u0 v)k’1 H(u, v) + (v0 u ’ u0 v)k Hv (u, v).

˜ ˜

It follows that k ≥ 2 if and only if Fu (u0 , v0 ) = Fv (u0 , v0 ) = 0.

Suppose k ≥ 2. The chain rule yields

˜ ˜

Fu = a1 Fx + a2 Fy + a3 Fz = 0, F v = b 1 F x + b2 F y + b3 F z = 0 (2.3)

at P . Recall that since the parameterization (2.2) yields a line, the vectors

(a1 , a2 , a3 ) and (b1 , b2 , b3 ) must be linearly independent.

Suppose L is another line that intersects C to order at least 2. Then we

obtain another set of equations

a1 Fx + a2 Fy + a3 Fz = 0, b1 Fx + b2 Fy + b3 Fz = 0

at P .

If the vectors a = (a1 , a2 , a3 ) and b = (b1 , b2 , b3 ) span the same plane in

3

K as a = (a1 , a2 , a3 ) and b = (b1 , b2 , b3 ), then

a = ±a + βb, b = γa + δb

±β

for some invertible matrix . Therefore,

γδ

ua + vb = (u± + vγ)a + (uβ + vδ)b = u1 a + v1 b

for a new choice of parameters u1 , v1 . This means that L and L are the same

line.

If L and L are di¬erent lines, then a, b and a , b span di¬erent planes, so

the vectors a, b, a , b must span all of K 3 . Since (Fx , Fy , Fz ) has dot product

0 with these vectors, it must be the 0 vector. This means that P is a singular

point, contrary to our assumption.

Finally, we need to show that the tangent line intersects the curve to order

at least 2. Suppose, for example, that Fx = 0 at P . The cases where Fy = 0

and Fz = 0 are similar. The tangent line can be given the parameterization

x = ’(Fy /Fx )u ’ (Fz /Fx )v, y = u, z = v,

so

a1 = ’Fy /Fx , b1 = ’Fz /Fx , a2 = 1, b2 = 0, a3 = 0, b3 = 1

in the notation of (2.2). Substitute into (2.3) to obtain

˜ ˜

Fu = (’Fy /Fx )Fx + Fy = 0, Fv = (’Fz /Fx )Fx + Fz = 0.

© 2008 by Taylor & Francis Group, LLC

26 CHAPTER 2 THE BASIC THEORY

By the discussion at the beginning of the proof, this means that the tangent

line intersects the curve to order k ≥ 2.

The associativity of elliptic curve addition will follow easily from the next

result. The proof can be simpli¬ed if the points Pij are assumed to be distinct.

The cases where points are equal correspond to situations where tangent lines

are used in the de¬nition of the group law. Correspondingly, this is where

it is more di¬cult to verify the associativity by direct calculation with the

formulas for the group law.

THEOREM 2.6

Let C(x, y, z) be a homogeneous cubic polynomial, and let C be the curve in

P2 described by C(x, y, z) = 0. Let 1 , 2 , 3 and m1 , m2 , m3 be lines in P2

K K

such that i = mj for all i, j. Let Pij be the point of intersection of i and

mj . Suppose Pij is a nonsingular point on the curve C for all (i, j) = (3, 3).

In addition, we require that if, for some i, there are k ≥ 2 of the points

Pi1 , Pi2 , Pi3 equal to the same point, then i intersects C to order at least k

at this point. Also, if, for some j, there are k ≥ 2 of the points P1j , P2j , P3j

equal to the same point, then mj intersects C to order at least k at this point.

Then P33 also lies on the curve C.

PROOF Express 1 in the parametric form (2.2). Then C(x, y, z) becomes

˜

C(u, v). The line 1 passes through P11 , P12 , P13 . Let (u1 : v1 ), (u2 : v2 ), (u3 :

v3 ) be the parameters on 1 for these points. Since these points lie on C, we

˜

have C(ui , vi ) = 0 for i = 1, 2, 3.

Let mj have equation mj (x, y, z) = aj x + bj y + cj z = 0. Substituting

the parameterization for 1 yields mj (u, v). Since Pij lies on mj , we have

˜

mj (uj , vj ) = 0 for j = 1, 2, 3. Since 1 = mj and since the zeros of mj yield the

˜ ˜

intersections of 1 and mj , the function mj (u, v) vanishes only at P1j , so the

˜

linear form mj is nonzero. Therefore, the product m1 (u, v)m2 (u, v)m3 (u, v)

˜ ˜ ˜ ˜

is a nonzero cubic homogeneous polynomial. We need to relate this product

˜

to C.

LEMMA 2.7

Let R(u, v) and S(u, v) be homogeneous polynomials of degree 3, with S(u, v)

not identically 0, and suppose there are three points (ui : vi ), i = 1, 2, 3, at

which R and S vanish. Moreover, if k of these points are equal to the same

point, we require that R and S vanish to order at least k at this point (that

is, (vi u ’ ui v)k divides R and S). Then there is a constant ± ∈ K such that

R = ±S.

PROOF First, observe that a nonzero cubic homogeneous polynomial

S(u, v) can have at most 3 zeros (u : v) in P1 (counting multiplicities).

K

© 2008 by Taylor & Francis Group, LLC

27

SECTION 2.4 PROOF OF ASSOCIATIVITY

This can be proved as follows. Factor o¬ the highest possible power of v, say

v k . Then S(u, v) vanishes to order k at (1 : 0), and S(u, v) = v k S0 (u, v) with

S0 (1, 0) = 0. Since S0 (u, 1) is a polynomial of degree 3 ’ k, the polynomial

S0 (u, 1) can have at most 3 ’ k zeros, counting multiplicities (it has exactly

3 ’ k if K is algebraically closed). All points (u : v) = (1 : 0) can be written

in the form (u : 1), so S0 (u, v) has at most 3 ’ k zeros. Therefore, S(u, v) has

at most k + (3 ’ k) = 3 zeros in P1 . K

It follows easily that the condition that S(u, v) vanish to order at least k

could be replaced by the condition that S(u, v) vanish to order exactly k.

However, it is easier to check “at least” than “exactly.” Since we are allowing

the possibility that R(u, v) is identically 0, this remark does not apply to R.

Let (u0 , : v0 ) be any point in P1 not equal to any of the (ui : vi ). (Technical

K

point: If K has only two elements, then P1 has only three elements. In this

K

case, enlarge K to GF (4). The ± we obtain is forced to be in K since it is the

ratio of a coe¬cient of R and a coe¬cient of S, both of which are in K.) Since

S can have at most three zeros, S(u0 , v0 ) = 0. Let ± = R(u0 , v0 )/S(u0 , v0 ).

Then R(u, v) ’ ±S(u, v) is a cubic homogeneous polynomial that vanishes at

the four points (ui : vi ), i = 0, 1, 2, 3. Therefore R ’ ±S must be identically

zero.

˜

Returning to the proof of the theorem, we note that C and m1 m2 m3 vanish

˜˜˜

at the points (ui : vi ), i = 1, 2, 3. Moreover, if k of the points P1j are the

same point, then k of the linear functions vanish at this point, so the product

˜

m1 (u, v)m2 (u, v)m3 (u, v) vanishes to order at least k. By assumption, C

˜ ˜ ˜

vanishes to order at least k in this situation. By the lemma, there exists a

constant ± such that

˜

C = ± m1 m 2 m 3 .

˜˜˜

Let

C1 (x, y, z) = C(x, y, z) ’ ±m1 (x, y, z)m2 (x, y, z)m3 (x, y, z).

The line 1 can be described by a linear equation 1 (x, y, z) = ax+by +cz =

0. At least one coe¬cient is nonzero, so let™s assume a = 0. The other cases

are similar. The parameterization of the line 1 can be taken to be

x = ’(b/a)u ’ (c/a)v, y = u, z = v. (2.4)

˜

Then C1 (u, v) = C1 (’(b/a)u ’ (c/a)v, u, v). Write C1 (x, y, z) as a polynomial

in x with polynomials in y, z as coe¬cients. Writing

n

xn = (1/an ) ((ax + by + cz) ’ (by + cz)) = (1/an ) ((ax + by + cz)n + · · · ) ,

we can rearrange C1 (x, y, z) to be a polynomial in ax + by + cz whose coe¬-

cients are polynomials in y, z:

C1 (x, y, z) = a3 (y, z)(ax + by + cz)3 + · · · + a0 (y, z). (2.5)

© 2008 by Taylor & Francis Group, LLC

28 CHAPTER 2 THE BASIC THEORY

Substituting (2.4) into (2.5) yields

˜

0 = C1 (u, v) = a0 (u, v),

since ax + by + cz vanishes identically when x, y, z are written in terms of u, v.

Therefore a0 (y, z) = a0 (u, v) is the zero polynomial. It follows from (2.5) that

C1 (x, y, z) is a multiple of 1 (x, y, z) = ax + by + cz.

Similarly, there exists a constant β such that C(x, y, z) ’ β 1 2 3 is a mul-

tiple of m1 .

Let

D(x, y, z) = C ’ ±m1 m2 m3 ’ β 1 2 3.

Then D(x, y, z) is a multiple of and a multiple of m1 .

1

LEMMA 2.8

D(x, y, z) is a multiple of 1 (x, y, z)m1 (x, y, z).

PROOF Write D = m1 D1 . We need to show that 1 divides D1 . We

could quote some result about unique factorization, but instead we proceed

as follows. Parameterize the line 1 via (2.4) (again, we are considering the

˜ ˜˜

case a = 0). Substituting this into the relation D = m1 D1 yields D = m1 D1 .

˜

Since 1 divides D, we have D = 0. Since m1 = 1 , we have m1 = 0. Therefore

˜

˜ 1 (u, v) is the zero polynomial. As above, this implies that D1 (x, y, z) is a

D

multiple of 1 , as desired.

By the lemma,

D(x, y, z) = 1 m1 ,

where (x, y, z) is linear. By assumption, C = 0 at P22 , P23 , P32 . Also, 1 2 3

and m1 m2 m3 vanish at these points. Therefore, D(x, y, z) vanishes at these

points. Our goal is to show that D is identically 0.

LEMMA 2.9

(P22 ) = (P23 ) = (P32 ) = 0.

PROOF First suppose that P13 = P23 . If 1 (P23 ) = 0, then P23 is on

the line 1 and also on 2 and m3 by de¬nition. Therefore, P23 equals the

intersection P13 of 1 and m3 . Since P23 and P13 are for the moment assumed

to be distinct, this is a contradiction. Therefore 1 (P23 ) = 0. Since D(P23 ) =

0, it follows that m1 (P23 ) (P23 ) = 0.

Suppose now that P13 = P23 . Then, by the assumption in the theo-

rem, m3 is tangent to C at P23 , so ordm3 ,P23 (C) ≥ 2. Since P13 = P23

and P23 lies on m3 , we have ordm3 ,P23 ( 1 ) = ordm3 ,P23 ( 2 ) = 1. There-

fore, ordm3 ,P23 (± 1 2 3 ) ≥ 2. Also, ordm3 ,P23 (βm1 m2 m3 ) = ∞. Therefore,

© 2008 by Taylor & Francis Group, LLC

29

SECTION 2.4 PROOF OF ASSOCIATIVITY

ordm3 ,P23 (D) ≥ 2, since D is a sum of terms, each of which vanishes to order

at least 2. But ordm3 ,P23 ( 1 ) = 1, so we have

ordm3 ,P23 (m1 ) = ordm3 ,P23 (D) ’ ordm3 ,P23 ( 1 ) ≥ 1.

Therefore m1 (P23 ) (P23 ) = 0.

In both cases, we have m1 (P23 ) (P23 ) = 0.

If m1 (P23 ) = 0, then (P23 ) = 0, as desired.

If m1 (P23 ) = 0, then P23 lies on m1 , and also on 2 and m3 , by de¬nition.

Therefore, P23 = P21 , since 2 and m1 intersect in a unique point. By as-

sumption, 2 is therefore tangent to C at P23 . Therefore, ord 2 ,P23 (C) ≥ 2.

As above, ord 2 ,P23 (D) ≥ 2, so

) ≥ 1.

ord ( 1

2 ,P23

If in this case we have 1 (P23 ) = 0, then P23 lies on 1 , 2 , m3 . Therefore

P13 = P23 . By assumption, the line m3 is tangent to C at P23 . Since P23 is a

nonsingular point of C, Lemma 2.5 says that 2 = m3 , contrary to hypothesis.

Therefore, 1 (P23 ) = 0, so (P23 ) = 0.

Similarly, (P22 ) = (P32 ) = 0.

If (x, y, z) is identically 0, then D is identically 0. Therefore, assume that

(x, y, z) is not zero and hence it de¬nes a line .

First suppose that P23 , P22 , P32 are distinct. Then and 2 are lines through

P23 and P22 . Therefore = 2 . Similarly, = m2 . Therefore 2 = m2 ,

contradiction.

Now suppose that P32 = P22 . Then m2 is tangent to C at P22 . As before,

ordm2 ,P22 ( 1 m1 ) ≥ 2.

We want to show that this forces to be the same line as m2 .

If m1 (P22 ) = 0, then P22 lies on m1 , m2 , 2 . Therefore, P21 = P22 . This

means that 2 is tangent to C at P22 . By Lemma 2.5, 2 = m2 , contradiction.

Therefore, m1 (P22 ) = 0.

If 1 (P22 ) = 0, then ordm2 ,P22 ( ) ≥ 2. This means that is the same line as

m2 .

If 1 (P22 ) = 0, then P22 = P32 lies on 1 , 2 , 3 , m2 , so P12 = P22 =

P32 . Therefore ordm2 ,P22 (C) ≥ 3. By the reasoning above, we now have

ordm2 ,P22 ( 1 m1 ) ≥ 3. Since we have proved that m1 (P22 ) = 0, we have

ordm2 ,P22 ( ) ≥ 2. This means that is the same line as m2 .

So now we have proved, under the assumption that P32 = P22 , that is the

same line as m2 . By Lemma 2.9, P23 lies on , and therefore on m2 . It also

lies on 2 and m3 . Therefore, P22 = P23 . This means that 2 is tangent to C

at P22 . Since P32 = P22 means that m2 is also tangent to C at P22 , we have

2 = m2 , contradiction. Therefore, P32 = P22 (under the assumption that

= 0).

© 2008 by Taylor & Francis Group, LLC

30 CHAPTER 2 THE BASIC THEORY

Similarly, P23 = P22 .

Finally, suppose P23 = P32 . Then P23 lies on 2 , 3 , m2 , m3 . This forces

P22 = P32 , which we have just shown is impossible.

Therefore, all possibilities lead to contradictions. It follows that (x, y, z)

must be identically 0. Therefore D = 0, so

C=± + βm1 m2 m3 .

123

Since 3 and m3 vanish at P33 , we have C(P33 ) = 0, as desired. This completes

the proof of Theorem 2.6.

REMARK 2.10 Note that we proved the stronger result that

C=± + βm1 m2 m3

123

for some constants ±, β. Since there are 10 coe¬cients in an arbitrary ho-

mogeneous cubic polynomial in three variables and we have required that C

vanish at eight points (when the Pij are distinct), it is not surprising that the

set of possible polynomials is a two-parameter family. When the Pij are not

distinct, the tangency conditions add enough restrictions that we still obtain

a two-parameter family.

We can now prove the associativity of addition for an elliptic curve. Let

P, Q, R be points on E. De¬ne the lines

= ∞, Q + R,

= P Q, = R, P + Q

1 2 3

m2 = ∞, P + Q,

m1 = QR, m3 = P, Q + R.

We have the following intersections:

1 2 3

’(Q + R)

m1 Q R

’(P + Q) ∞

m2 P +Q

m3 P Q+R X

Assume for the moment that the hypotheses of the theorem are satis¬ed.

Then all the points in the table, including X, lie on E. The line 3 has three

points of intersection with E, namely R, P + Q, and X. By the de¬nition of

addition, X = ’((P + Q) + R). Similarly, m3 intersects C in 3 points, which

means that X = ’(P + (Q + R)). Therefore, after re¬‚ecting across the x-axis,

we obtain (P + Q) + R = P + (Q + R), as desired.

It remains to verify the hypotheses of the theorem, namely that the orders

of intersection are correct and that the lines i are distinct from the lines mj .

First we want to dispense with cases where ∞ occurs. The problem is that

we treated ∞ as a special case in the de¬nition of the group law. However,

© 2008 by Taylor & Francis Group, LLC

31

SECTION 2.4 PROOF OF ASSOCIATIVITY

as pointed out earlier, the tangent line at ∞ intersects the curve only at ∞

(and intersects to order 3 at ∞). It follows that if two of the entries in a row

or column of the above table of intersections are equal to ∞, then so is the

third, and the line intersects the curve to order 3. Therefore, this hypothesis

is satis¬ed.

It is also possible to treat directly the cases where some of the intersection

points P, Q, R, ±(P + Q), ±(Q + R) are ∞. In the cases where at least one of

P, Q, R is ∞, associativity is trivial.

If P + Q = ∞, then (P + Q) + R = ∞ + R = R. On the other hand,

the sum Q + R is computed by ¬rst drawing the line L through Q and R,

which intersects E in ’(Q + R). Since P + Q = ∞, the re¬‚ection of Q across

the x-axis is P . Therefore, the re¬‚ection L of L passes through P , ’R, and

Q + R. The sum P + (Q + R) is found by drawing the line through P and

Q + R, which is L . We have just observed that the third point of intersection

of L with E is ’R. Re¬‚ecting yields P + (Q + R) = R, so associativity holds

in this case.

Similarly, associativity holds when Q + R = ∞.

Finally, we need to consider what happens if some line i equals some line

mj , since then Theorem 2.6 does not apply.

First, observe that if P, Q, R are collinear, then associativity is easily veri¬ed

directly.

Second, suppose that P, Q, Q + R are collinear. Then P + (Q + R) = ’Q.

Also, P + Q = ’(Q + R), so (P + Q) + R = ’(Q + R) + R. The second

equation of the following shows that associativity holds in this case.

LEMMA 2.11

Let P1 , P2 be points on an elliptic curve. Then (P1 + P2 ) ’ P2 = P1 and

’(P1 + P2 ) + P2 = ’P1 .

PROOF The two relations are re¬‚ections of each other, so it su¬ces to

prove the second one. The line L through P1 and P2 intersects the elliptic

curve in ’(P1 + P2 ). Regarding L as the line through ’(P1 + P2 ) and P2

yields ’(P1 + P2 ) + P2 = ’P1 , as claimed.

Suppose that i = mj for some i, j. We consider the various cases. By the

above discussion, we may assume that all points in the table of intersections

are ¬nite, except for ∞ and possibly X. Note that each i and each mj meets

E in three points (counting multiplicity), one of which is Pij . If the two lines

coincide, then the other two points must coincide in some order.

1. = m1 : Then P, Q, R are collinear, and associativity follows.

1

= m2 : In this case, P, Q, ∞ are collinear, so P +Q = ∞; associativity

2. 1

follows by the direct calculation made above.

© 2008 by Taylor & Francis Group, LLC

32 CHAPTER 2 THE BASIC THEORY

3. = m1 : Similar to the previous case.

2

4. = m3 : Then P, Q, Q+R are collinear; associativity was proved above.

1

5. = m1 : Similar to the previous case.

3

= m2 : Then P + Q must be ±(Q + R). If P + Q = Q + R, then

6. 2

commutativity plus the above lemma yields

P = (P + Q) ’ Q = (Q + R) ’ Q = R.

Therefore,

(P + Q) + R = R + (P + Q) = P + (P + Q) = P + (R + Q) = P + (Q + R).

If P + Q = ’(Q + R), then

(P + Q) + R = ’(Q + R) + R = ’Q

and

P + (Q + R) = P ’ (P + Q) = ’Q,

so associativity holds.

7. = m3 : In this case, the line m3 through P and (Q + R) intersects E

2

in ∞, so P = ’(Q + R). Since ’(Q + R), Q, R are collinear, we have

that P, Q, R are collinear and associativity holds.

8. = m2 : Similar to the previous case.

3

9. = m3 : Since 3 cannot intersect E in 4 points (counting multiplici-

3

ties), it is easy to see that P = R or P = P + Q or Q + R = P + Q or

Q + R = R. The case P = R was treated in the case 2 = m2 . Assume

P = P + Q. Adding ’P and applying Lemma 2.11 yields ∞ = Q, in

which case associativity immediately follows. The case Q + R = R is

similar. If Q + R = P + Q, then adding ’Q and applying Lemma 2.11

yields P = R, which we have already treated.

If i = mj for all i, j, then the hypotheses of the theorem are satis¬ed, so

the addition is associative, as proved above. This completes the proof of the

associativity of elliptic curve addition.

REMARK 2.12 Note that for most of the proof, we did not use the

Weierstrass equation for the elliptic curve. In fact, any nonsingular cubic

curve would su¬ce. The identity O for the group law needs to be a point

whose tangent line intersects to order 3. Three points sum to 0 if they lie

on a straight line. Negation of a point P is accomplished by taking the line

through O and P . The third point of intersection is then ’P . Associativity

of this group law follows just as in the Weierstrass case.

© 2008 by Taylor & Francis Group, LLC

33

SECTION 2.4 PROOF OF ASSOCIATIVITY

2.4.1 The Theorems of Pappus and Pascal

Theorem 2.6 has two other nice applications outside the realm of elliptic

curves.

THEOREM 2.13 (Pascal™s Theorem)

Let ABCDEF be a hexagon inscribed in a conic section (ellipse, parabola,

or hyperbola), where A, B, C, D, E, F are distinct points in the a¬ne plane.

Let X be the intersection of AB and DE, let Y be the intersection of BC and

EF , and let Z be the intersection of CD and F A. Then X, Y, Z are collinear

(see Figure 2.4).

Figure 2.4

Pascal™s Theorem

REMARK 2.14 (1) A conic is given by an equation q(x, y) = ax2 + bxy +

cy 2 +dx +ey +f = 0 with at least one of a, b, c nonzero. Usually, it is assumed

that b2 ’4ac = 0; otherwise, the conic degenerates into a product of two linear

factors, and the graph is the union of two lines. The present theorem holds

even in this case, as long as the points A, C, E lie on one of the lines, B, D, F

lie on the other, and none is the intersection of the two lines.

(2) Possibly AB and DE are parallel, for example. Then X is an in¬nite

point in P2 .

K

(3) Note that X, Y, Z will always be distinct. This is easily seen as follows:

First observe that X, Y, Z cannot lie on the conic since a line can intersect

© 2008 by Taylor & Francis Group, LLC

34 CHAPTER 2 THE BASIC THEORY

the conic in at most two points; the points A, B, C, D, E, F are assumed to

be distinct and therefore exhaust all possible intersections. If X = Y , then

AB and BC meet in both B and Y , and therefore the lines are equal. But

this means that A = C, contradiction. Similarly, X = Z and Y = Z.

PROOF De¬ne the following lines:

= EF , = AB, = CD, m1 = BC, m2 = DE, m3 = F A.

1 2 3

We have the following table of intersections:

1 2 3

m1 Y B C

m2 E X D

m3 F A Z