Algebraic Geometric Coding Theory presented by Jake Hustad John Hanson Berit Rollay Nick Bremer Tyler Stelzer Robert Coulson Contents I. Review of Codes II. The Performance Parameters III. Reed-Solomon Code IV. Finite Fields/Algebraic Closure V. The Projective Plane VI. Bezout’s Theorem VII. Frobenius Maps VIII. Nonsingularity and Genus IX. Goppa’s Construction X. Conclusion Review of Codes Jake Hustad Introduction • Basic Overview of Coding Theory - Coding theory is the branch of mathematics concerned with transmitting data across noisy channels and recovering the message. Coding theory is about making messages easy to read and finding efficient ways of encoding data. What is a Code? Here is the formal definition of a code: A code C over an alphabet is simply a subset of An = A x…x A(n copies). A A Where is usually a finite field. Objectives for efficient codes: Detection and correction of errors due to noise Efficient transmission of data Easy encoding and decoding schemes The Ideal Code Ideally, we would like a code that is capable of correcting all errors due to noise. In general, the more errors that a code needs to correct per message digit, the less efficient the transmission and also the more complicated the encoding and decoding schemes. Code Parameters The Performance Parameters “n” is the total number of available symbols for a code word. “k” is the number of information symbols in a given code word. “k” is the size of the code. “d” is the distance between two code words. This is a Hamming distance. The Hamming Distance The Hamming distance between two words is the number of places where the digits differ. Example u = “111” v = “110” (Transmitted Code) (Received Code) They differ only in the last digit, so the Hamming distance, d(u,v) = 1. The Hamming Distance This distance is significant because it gives us an idea of how many errors can be detected. The larger this distance is, the more errors can be detected. The Minimum Distance The minimum distance is the smallest Hamming distance between any two possible code words. The Minimum Distance Suppose that the minimum distance for the coding function is 3. Then, given any codeword, at least 3 places in it have to be changed before it gets converted into another codeword. In other words, if up to 2 errors occur, the resulting word will not be a codeword, and we detect the occurrence of errors. The Minimum Distance Fact: If the minimum distance between code words is d, then up to d – 1 errors can be detected. Reed-Solomon Codes A Case Study John Hanson Definitions Fq ~ field with q elements Lr := { f Fq[x] | deg(f) r } {0} r is non-negative note: this is a vector subspace over Fq with dim = r+1 basis = [ 1 x x2 … xr ] Procedure Label q-1 nonzero elements of Fq as: 1, 2,…, q-1 Pick a k Z such that 1 k q-1 Then we have: RS(k,q) := { ( f( 1), f( 2),…,f( q-1) )| f Lk-1 } Notice RS(k,q) is a subset of Fqq 1:= FqxFqx…xFq q-1 copies so this is a code over the alphabet Fq Summary Through our research and presentation last semester, we proved that for Reed-Solomon codes: n=q–1 k = k (which was chosen) d=n–k+1 Algebraic Geometry Background By Nick Bremer and Berit Rollay Contents Finite Fields/Algebraic Closure Projective Planes Bezout’s Theorem Algebraically Closed Fields A field k is algebraically closed if every nonconstant polynomial in k[x] has at least one root. Ex) f(x) x 1 2 x i This is not closed under R because i R, but it is closed under C. Definition: Algebraic Closure Let k be a field. An algebraic closure of k is a field K with k K satisfying: K is algebraically closed, and If L is a field such that k L K and L is algebraically closed, then L = K. Are Algebraic Closures Unique? It turns out they are. Every field has an unique algebraic closure, up to isomorphism. This theorem allows us to call k the algebraic closure of k. Ex) R C Theorem Let k be an algebraically closed field and let f ( x) k[ x] be a polynomial of degree n. Then there exists a non-zero u and 1 ,..., n k (not necessarily distinct) such that: f(x) u(x 1 )...( x n ) In particular, counting multiplicity, f has exactly n roots in k. Diophantine Equations A Diophantine Equation is a polynomial with integer or rational coefficients, such as 2 2 x 2 y 1. A useful problem to solve is how many rational solutions does this equation have? In order to answer this question, we need to define points at “infinity.” Projective Plane 2 Let k be a field. The projective plane P (k ) is defined as: P 2 (k ) : (k 3 \ {( 0,0,0)}) / ~ where ( X 0 , Y0 , Z 0 ) ~ ( X 1 , Y1 , Z1 ) if and only if there is some non-zero with X 1 X 0 , Y1 Y0 and Z1 Z 0 . Projective Plane, con’t To further understand the projective plane, consider the following illustration: The projective plane can be described as all of the lines in R3 that pass through the origin. Further, we can say that lines that intersect the plane P shown above represent “real” points, and lines that do not intersect the plane represent points at “infinity.” These terms will be defined in more depth momentarily. Homogenization Let k be a field, f ( x, y) k[ x, y] a polynomial of degree d, and Cf the curve associated to f (f(x,y)=0). The projective closure of the curve Cf is: Cˆ f : {( X 0 : Y0 : Z 0 ) P 2 | F ( X 0 , Y0 , Z 0 ) 0} Where the homogenization of f is: X Y F ( X , Y , Z ) : Z ( , ) k[ X , Y , Z ] Z Z d Example of Homogenization Consider the curve f ( x, y) y x x 1. If we take the Homogenization, we get: 2 3 X X 3 Y f ( x, y ) Z 1 Z Z Z 2 Y Z X XZ Z 2 3 2 3 3 Now we are ready to solve the Diophantine Equation. Remember the Diophantine Equation? Now we can find all solutions to a Diophantine Equation, including solutions that occur at “infinity.” Any point in the homogenization that is of the form ( X 0 : Y0 : Z 0 ) with Z 0 0 is called a point at infinity. All other points are called affine points. Bezout’s Theorem If f , g k[ x, y ] are polynomials of degrees d and e respectively, then C f and C g intersect in at most de points. Further, Ĉ f and Ĉ g intersect in exactly de points of 2 P (k ) , when points are counted with multiplicity. This is used in a classical proof of algebraic geometry, but we will not go into that at this time. Points, Divisors and Rational Functions By Tyler Stelzer and Bob Coulson Frobenius Maps Suppose Fq is a finite field (recall this means that q must be a prime power) and that n >= 1. The Frobenius Automorphism is the map σq,n : Fqn Fqn defined by σq,n(α) = αq, for any α Fqn Relative and Absolute Frobenius If q = pr where p is prime and r >= 2, then • the map σq,n is often called the relative Frobenius • the function σp,n if often called the absolute Frobenius Composing Frobenius with Itself The symbol σjq,n represents the map obtained by composing σq,n with itself j times. For example: σ2q,n (α) = σq,n (σq,n(α)). Nonsingularity When constructing a code, one of the elements needed is a nonsingular projective plane curve. A projective plane curve, Cf, is nonsingular when no singular points exist on it. Singular Points A singular point of Cf is a point (x0,y0) k x k such that f (x0,y0) = 0 and fx(x0,y0) = 0 and fy(x0,y0) = 0. Or if F(X,Y,Z) is the homogenization of f(x,y), then (X0:Y0:Z0) is a singular point of Cf if the point is on the curve and: F (X0:Y0:Z0) = Fx (X0:Y0:Z0) = Fy (X0:Y0:Z0) = Fz (X0:Y0:Z0) = 0. What are f(x,y), fx(x,y) f y(x,y)? What is f(x,y)? A singular point of Cf is a point (x0,y0) k x k such that f(x0,y0) = 0 and fx(x0,y0) = 0 and fy(x0,y0) = 0. k[x,y] where k[x,y] is the set of polynomials having coefficients from k and two variables, x and y. Example: Let k = Z5 = {0,1,2,3,4}. Then one possible polynomial is: f(x,y) = 2x2y + xy3 + x2 + 2y f(x,y) What are f(x,y), fx(x,y) f y(x,y)? What is fx(x,y)? A singular point of Cf is a point (x0,y0) k x k such that f(x0,y0) = 0 and fx(x0,y0) = 0 and fy(x0,y0) = 0. fx(x,y) is the partial derivative of f(x,y) with respect to x. Example: Let f(x,y) = 2x2y + xy3 + x2 + 2y Then fx(x,y) = 4xy + y3 + 2x. What are K, f(x,y), fx(x,y) f y(x,y)? What is f y(x,y)? A singular point of Cf is a point (x0,y0) k x k such that f(x0,y0) = 0 and fx(x0,y0) = 0 and fy(x0,y0) = 0. fy(x,y) is the partial derivative of f(x,y) with respect to y. Example: Let f(x,y) = 2x2y + xy3 + x2 + 2y Then fy(x,y) = 2x2 + 3xy2 + 2. Genus and the Plϋcker Formula A nonsingular curve can be realized as a torus-like object with one or more holes in R3. This torus has a certain number of holes which is called the topological genus (g). The genus is given by the formula g = (d-1)(d-2)/2 where d is the degree of the polynomial which makes the curve nonsingular. This formula is called the Plϋcker Formula. Points, Functions, and Divisors on Curves Let k be a field, and let C be the projective plane curve defined by F = 0, where F = F(X,Y,Z) k[X,Y,Z] is a homogenous polynomial. For any field K containing k, we define a K-rational point on C to be a point (X0 : Y0 : Z0) P2(K) such that F(X0,Y0,Z0) = 0. The set of all K-rational points on C is denoted C(K). Elements of C(k) are called points of degree one or simply rational points. Points, Functions, and Divisors on Curves Let C be a nonsingular projective plane curve. A point of degree n on C over Fq is a set P = {P0,…,Pn-1} of n distinct points in C(Fqn) such that Pi = σiq,n(P0) for i = 1,…, n-1. Points, Functions, and Divisors on Curves A divisor D on X, a nonsingular projective plane curve, over Fq is an element of the free abelian group on the set of points on X over Fq. Every divisor is of the form D nqQ where the nQ are integers and each Q is a point on X. If nQ 0 for all Q, D is effective and D 0. The degree of D nq degQ . The support of D is suppD = {Q | nQ 0}. Points, Functions, and Divisors on Curves Let F(X,Y,Z) be the polynomial which defines the nonsingular projective plane cure C over the field Fq. The field of rational functions on C is g ( X , Y , Z ) g,h F [X,Y,Z] Fq (C ) : | are homogeneous {0} / ~ of the same degree h ( X , Y , Z ) q where g/h ~ g`/ h` if and only if gh` - g`h ‹F› Fq[X,Y,Z]. Points, Functions, and Divisors on Curves Let C be a curve defined over Fq and let f := g/h Fq(C). The divisor of f is defined to be div(f) := Σ P – Σ Q, where Σ P is the intersection divisor C Cg and Σ Q is the intersection divisor C Ch. Points, Functions, and Divisors on Curves Let D be a divisor on the nonsingular projective plane curve C defined over the field Fq. Then the space of rational functions associated to D is L(D) := {f Fq(C) | div(f) + D >= 0} {0}. Riemann-Roch Theorem Let C be a nonsingular projective plane curve of genus g defined over the field Fq and let D be a divisor on X. Then dim L(D) >= deg D + 1 – g. Further, if deg D > 2g – 2, then dim L(D) = deg D + 1 – g. Algebraic Geometric ReedSolomon Codes Goppa’s Construction Goppa’s construction is extended from the Reed-Solomon Code formula: RS(k,q) := { ( f( 1), f( 2),…,f( q-1) )| f Lk-1 } Goppa’s idea behind this construction was to generalize the formula. This new formula is: C(X,P,D) := {( f (P1) , … ,(Pn) ) | f L(D) } Definitions for: C(X,P,D) := {( f (P1) , … ,(Pn) ) | f L(D) } Definition of X: X is a projective nonsingular plane curve over Fq, a finite field with q number of elements. Definitions for: C(X,P,D) := {( f (P1) , … ,(Pn) ) | f L(D) } Definition of P: P = {P1,…,Pn} X(Fq) i.e. P is the set of n distinct Fq-rational points on X. Definitions for: C(X,P,D) := {( f (P1) , … ,(Pn) ) | f L(D) } Definition of D: D is a divisor on X. Definitions for: C(X,P,D) := {( f (P1) , … ,(Pn) ) | f L(D) } Definition of L(D): L(D) is the space of rational functions associated with the defined divisor D over X. Goppa’s Construction - History In 1981, Goppa derived a class of linear codes from algebraic curves over finite fields which are quite general as codes have parameters circumscribed by the Riemann-Roch theorem History (cont…) The discovery of these codes also gave renewed stimulus to investigations on the number of rational points on an algebraic curve for a particular genus as well as to asymptotic values of the ratio of the number of points to the genus. Goppa – The Problem The three most important parameters of a linear code over the finite field are the length n which gives the speed of transmission the dimension k which gives the number of words in the code and the minimum distance d which gives the number of errors that can be corrected. “Good” Codes “Good” codes have the following properties: a large information rate R = k / n and a large relative distance δ = d / n The relation between R and δ as n gets large is given by the Gilbert-Varshamov bound. Good codes can be constructed from an algebraic curve of genus g, and particular examples show that the G-V bound is not best possible. This brings to the fore the problem of determining the limit β of n / g for a sequence of curves. Final Thoughts In the past two years, the goal of finding explicit codes which reach the limits predicted by early coding mathematicians has been achieved. The constructions require techniques from a surprisingly wide range of pure mathematics: linear algebra, the theory of fields and algebraic geometry all play a vital role. Not only has coding theory helped to solve problems of vital importance in the world outside mathematics, it has enriched other branches of mathematics, with new problems as well as new solutions. References Codes and Curves by Judy L. Walker - American Mathematical Society, 2000 Coding theory: the first 50 years - http://pass.maths.org.uk/issue3/codes/