Algebraic geometry for elliptic curves

 As a preliminary for the next few posts which will cover Liam Eagen's inner product protocol, I will introduce some algebraic geometry about elliptic curves. Let F be an algebraic closure of a finite field Fq. Let E be an elliptic curve which is defined by the Weierstrass equation y2z=x3+Axz2+Bz3 over Fq. The elliptic curve is defined by a closed subvariety of the projective space

P2={(x:y:z)F3{(0:0:0)}}/

where (x:y:z)(cx:cy:cz) for c0F. But, you can dehomogenize the equation with z=1. So, the points of an elliptic curve E(F) is the union of a subvariety defined by y2=x3+Ax+B in F2 and a point (0:1:0). We will call the point O=(0:1:0) the point at infinity.

E(F)={(x,y)F2y2=x3+Ax+B}{O}.

And, the rational points of E is

E(Fq)={(x,y)Fq2y2=x3+Ax+B}{O}.


Divisor group

Now, the divisor group of an elliptic curve is defined by the formal finite sum of points in elliptic curves. That is,

Div(E)={PE(F)vP[P]vpZ,vp=0 for all but finitely many}.

Let's denote as [P] to emphasize it's different from the elliptic curve point. Div(E) has a natural abelian group structure. Then,

Div0(E)={PE(F)vP[P]vP=0}

is a subgroup. This natural object can explain why we define addition on elliptic curves in such a ridiculous way.


Rational functions

The polynomial ring F[x,y] is a ring of "regular" functions from F2 to F. Likely, we can consider the ring of polynomial functions from an elliptic curve to F, which is called the coordinate ring. For simplicity, I will restrict the elliptic curves out of the point at infinity. Since we identify two polynomials which have the same values on each point in elliptic curves, the coordinate ring is isomorphic to the quotient ring,

F[E]F[x,y]/(y2x3AxB).

The quotient field of F[x,y] is a function field F(x,y), which consists of all rational functions with indeterminates x,y. We may consider the function field F as a field of "rational" functions from F2 to F{}. Similarly, we can define the field of rational functions from an elliptic curve to F{}, which is isomorphic to the quotient field of the coordinate ring.

F(E)Frac(F[x,y]/(y2x3AxB))

How do the elements in F(E) look like? Every element in F(E) is of the form g(x,y)h(x,y) for some g,hF[E]. Since y2=x3+Ax+B in F[E], we have h1,h2F[x] such that

h(x,y)=h1(x)+yh2(x)F[E].

Then,

gh=gh1+yh2=g(h1yh2)(h1+yh2)(h1yh2)=g(h1yh2)h12(x2+Ax+B)h22.

So, we have a(x),b(x)F(x) such that gh=a(x)yb(x)F(E).


Picard group and elliptic curve addition

For any nonzero rational function fF(E), we can find its zeros and poles of f. For any PE(F){O}, define

vP(f)={(order of zero)if f(P)=0,(order of pole)if f(P)=,0otherwise.

and define vO(f)=PE(F){O}vP(f). It's always true that vPZ are finite. Then, you can see that vP(f1f21)=vP(f1)vP(f2). So,

div:F(E)×Div0(E)

defines a homomorphism. Now, define the Picard group of an elliptic curve by

Pic(E)=Div0(E)/div(F(E)×).

Algebraic geometers show that the Picard group is bijective to E(F) via

E(F)Pic(E), by P[P][O]

Now, we can define an addition on E(F) using the natural addition of Div0(E). Then, what is P+QE(F)? Let lF(E) be a line through P and Q. Bezout's theorem says l has three zeros at P,Q, and another R (here, just ignore the multiplicity or the point at infinity). Then,

div(l)=[P]+[Q]+[R]3[O]=([P][O])+([Q][O])+([R][O])=0Pic(E)

Let R be the y-inversion of R, and l be the line through R and R. Then,

div(l)=[R]+[R]2[O]=([R][O])+([R][O])Pic(E)

Therefore,

([P][O])+([Q][O])=([R][O])Pic(E) and P+Q=RE(F).


Weil reciprocity

Next, we want to introduce a theorem that is critically used in Eagen's protocol. For any f,gF(E), we define a local symbol for PE(F),

f,gP=(1)vP(div(f))vP(div(g))f(P)vP(div(g))g(P)vP(div(f))

For P=O, f(O) depends on d=vO(div(f)). If d>0 then f(O)= of order d. If d<0 then f(O)=0 of order d. If d=0 then f is a  constant function. The Weil reciprocity says that after multiplying all local symbols, it will be one.

PE(F)f,gP=1

Note that the product is finite since vO(div(f)) and vO(div(g)) are zero for all P but finitely many. I'd like to emphasize that some local symbols can be zero or infinity, but we can remove singularities after multiplying.

댓글