MATH 470 Lecture 23

From Notes
Jump to navigation Jump to search

« previous | Thursday, April 11, 2013 | next »


Going back to last time, we defined an elliptic curve over is the zero set (including the point at infinity) in of a polynomial with

  1. the Newton polygon having exactly 1 point with integer coordinates in its interior.
  2. a smooth curve

Let's call this our 2nd definition.

Let our first definition be the zero set of a polynmial in weierstrass normal form (including the point at infinity)

3rd (classical) definition: A curve of genus one. So somehow, elliptic curves correspond to tori

So the number of interior lattice points in a Newton polygon is somehow related to the genus (under certain conditions).

What's a Genus

The classification of surfaces boils down to the number of holes (or number of handles, not that holes and handles are the same things...)

  • Genus 0: Imagine a sphere
  • Genus 1: Imagine a donut
  • Genus 2: Handcuffs
  • ...

A curve over is actually a surface over two real dimensions.

For example, zero set of in over is really just the zero set of the real part and the imaginary part.


Finite Fields

A finite field is any set of numbers closed on multiplicative inversion: all nonzero elements in the field have a multiplicative inverse in the same field.

For any prime , (also written ) is defined to be a field with elements. For example, .

Can be a field? No. (2 and 3 do not have inverses)

Finite fields need not have prime number of elements, only a prime power number of elements.

We'll study with for any prime (and elliptic curves over ).

Note:

We define as the set of polynomials in with coefficients in .

If , we derive

as polynomials mod .

(what's with these polynomials mod other polynomials?)

is just the polynomials in of degree less than that of with +, −, and × performed mod .

Example


Addition Table
+ 0 1 x x+1
0 0 1 x x+1
1 1 0 x+1 x
x x x+1 0 1
x+1 x+1 x 1 0
Multiplication Table
× 0 1 x x+1
0 0 0 0 0
1 0 1 x x+1
x 0 x x+1 1
x+1 0 x+1 1 x
Note: Reducing mod means you declare , so

See that , , and are all well-defined, nonzero, invertible elements. Thus we have a realization of


What if we chose ?

Our multiplication table would be different:


Multiplication Table
× 0 1 x x+1
0 0 0 0 0
1 0 1 x x+1
x 0 x 1 x+1
x+1 0 x+1 x+1 0

Note that makes no sense.

Irreducibility

We call irreducable iff implies that or . In other words, has no non-trivial factorization.

Example 1

is irreducable over .

Proof. Indeed, if had a non-trivial factorization (other than const × degree 2), then it must factor as .

Then means that has a root in . But the squares in are 0 and 1. vanishes at neither, so is irreducable.

Q.E.D.

However, is reducable over

  • :
  • :
Fact: can be realized as for any irreducable of degree .

Example 2

can be realized as :

Deciding Realizations

Which realization you use is very important in practice.

The Intel 8051 is a chip with 256 bytes of onboard RAM running at 12 MHz, used in some smart cards around 2000. This is an incredible hardware limitation, and operations can take a significant amount of time and power if the field realization is not chosen carefully.

Here's a table for the number of cycles needed to multiply two field elements:

Field Number of Cycles
19,600
7479
5084

Upshot: Picking the right is key to going faster and saving power

Primitivity

We call an irreducable primitive iff has a primitive element for as one of its roots (generator).

Example

is primitive over . In particular, observe the powers of in

We've realized and with an explicit generator for .

Note: is comparable to : nonzero elements of the referenced collection
Note: not all irreducible are primitive: is irreducable in but not primitive

Sparsity

is irreducible over and has only 3 terms. Therefore, powering is much faster.

For example, Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle x^{167} = x^6+1} . If we worked mod a non-sparse polynomial, we'd get

So what's so good about curves over Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbb{F}_p} ?
Elliptic curves can be used to factor integers!

Factoring with Elliptic Curves

Classical factoring algorithms worked with arithmetic in Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbb{F}_p^*} or Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left( \mathbb{Z} / n \mathbb{Z} \right)^*} for some prime Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle p} . Working with elliptic curves over gives more flexibility

The number of elements in is Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle p-1} . The number of elliptic curves in the same field is Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle p+1+\text{wiggle}}

Hasse's Theorem

(1933)

If is the number of points on an elliptic curve over Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbb{F}_q} ,

And, for any such , there is a curve over Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbb{F}_q} with that many points.