Error Correcting Codes from Algebraic Geometry · Meet Algebraic Geometry (AG) Codes [Goppa...
Transcript of Error Correcting Codes from Algebraic Geometry · Meet Algebraic Geometry (AG) Codes [Goppa...
Error Correcting Codes from Algebraic Geometry
Anton Stolbunov
Trondheim, January 23, 2012
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
2 / 17
Outline
Introduction to Coding Theory
Introduction to Algebraic Geometry
Algebraic Geometry Codes
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
3 / 17
Communication over Noisy Channel
[Shannon 1948] proved that reliable communication is possible atany rate below the channel “capacity”.Also described a code due to Hamming for correcting up to oneerror in a 7-bit block that encodes 4 bits of information.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
4 / 17
Error Correcting CodesBlock codes Fixed-size blocks processed independently. E.g.:
— Hamming codes [1950];— Reed-Solomon codes [1960];— algebraic geometry codes [Goppa 1977];— LDPC [Gallager 1960], [MacKay and Neal 1995].
Convolutional codes Processing of symbols in a stream dependson previous symbols. Soft-decision algorithms. E.g.:— Viterbi algorithm [1967];— turbo codes [Berrou et al. 1993].
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
5 / 17
Linear CodesA (block) code C over Fq is a subset of Fn
q.A linear code C is an Fq-vector subspace of Fn
q.
Parameters of a linear code C = [n, k ,d ]qn block length;k dimension of C. k = dimFq (C). k is information length;
d distance of C. d = min{d(~a, ~b) : ~a 6= ~b ∈ C}, whered(~a, ~b) = #{i : ai 6= bi} is the Hamming distance.
Code C can correct up to⌊
d−12
⌋errors;
q alphabet size.
Example{000,111} is a [3,1,3]2 linear code with F2-basis {111}.A codeword encodes one bit of data. Can correct up to one error.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
6 / 17
How Good Can a Block Code Be?We want to maximize dimension k and distance d given n and q.Bounds for small n: precomputed at www.codetables.deAsymptotic bounds as block size n→∞
R := k/n information rate,
δ := d/n relative distance.
Figure for binary codes, q = 2.
The Gilbert-Varshamovasymptotic bound [1952] is alower bound, meaning thatsuch codes exist. Remainingfunctions are upper bounds.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
7 / 17
Meet Algebraic Geometry (AG) Codes
[Goppa 1977] introduced AG-codes as linear codes coming fromvector spaces of rational functions on curves.Dimension and distance of AG-codes are determinedby the Riemann-Roch theorem;
[Tsfasman, Vladut and Zink 1982] if q ≥ 49 is a square then thereis a sequence of AG-codes over Fq that exceeds theasymptotic Gilbert-Varshamov bound.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
8 / 17
Projective Plane
Let F be a field.The projective plane P2(F ) is the set of equivalence classes
P2(F ) :={
F 3 \ (0,0,0)}/ ∼
with the equivalence relation (X ,Y ,Z ) ∼ (aX ,aY ,aZ ), a ∈ F ∗.
ExampleP2(F3) consists of 13 points:(0 : 0 : 1), (1 : 0 : 1), (2 : 0 : 1),(0 : 1 : 1), (1 : 1 : 1), (2 : 1 : 1),(0 : 2 : 1), (1 : 2 : 1), (2 : 2 : 1),(0 : 1 : 0), (1 : 1 : 0), (2 : 1 : 0), (1 : 0 : 0).
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
9 / 17
Projective Algebraic CurvesA polynomial f ∈ F [X ,Y ,Z ] is called homogeneous if everymonomial of f has the same degree.Then the equation f (P) = 0 is well defined for P ∈ P2(F ).
A projective algebraic curve A defined by an irreduciblehomogeneous polynomial f ∈ F [X ,Y ,Z ] is the zero set
A :={
P ∈ P2(F ) : f (P) = 0}.
The set of F -rational points of A is A(F ) := A ∩ P2(F ).
Example (cont.)F3-points of the curve defined by Y 2Z + 2X 3 + XZ 2 + 2Z 3 areA(F3) = {(0 : 1 : 1), (0 : 2 : 1), (1 : 1 : 1), (1 : 2 : 1), (2 : 1 : 1),(2 : 2 : 1), (0 : 1 : 0)}.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
10 / 17
Functions on Projective CurvesLet A be a smooth projective curve defined by an irreduciblehomogeneous polynomial f ∈ F [X ,Y ,Z ].
The set of equivalence classes F (A) :={g(X ,Y ,Z )
h(X ,Y ,Z ): g,h ∈ F [X ,Y ,Z ] homog. of same degree,h 6∈ (f )
}/ ∼
with the equivalence relationgh∼ g′
h′⇐⇒ gh′ − g′h ∈ (f )
is called the field of F -rational functions of A.
x(P) is independent of representations of x ∈ F (A) and P ∈ A(F ).
Example (cont.)Let f = Y 2Z + 2X 3 + XZ 2 + 2Z 3 over F3. ThenY 2
Z 2 ∼X 3 + 2XZ 2 + Z 3
Z 3 since Y 2Z 3 +Z 2(2X 3 +XZ 2 + 2Z 3) = Z 2f .
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
11 / 17
Zeros and Poles of Functions on CurvesLet
gh∈ F (A) be a function on A, and P ∈ A(F ) a point. Define:
ordP(g) := 0 + [multiplicity of intersection of (g = 0) and A at P],
ordP
(gh
):= ordP(g)− ordP(h).
P is called a zero ofgh
if ordP
(gh
)> 0, and a pole if ordP
(gh
)< 0.
Example (cont.)Let f = Y 2Z + 2X 3 + XZ 2 + 2Z 3 over F3. Consider the function X
Z .(X = 0) ∩ A(F3) = {(0 : 1 : 1), (0 : 2 : 1), (0 : 1 : 0)};(Z = 0) ∩ A(F3) = {(0 : 1 : 0)} with multiplicity 3 by Bezout’s th.
Hence ord(0:1:0)
(XZ
)= 1− 3 = −2, and ord(0:1:1)
(XZ
)= 1.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
12 / 17
Riemann-Roch SpaceAn F -rational divisor on a curve A is a formal sum of points
D := v1P1 + · · ·+ vr Pr ,
where supp(D) := {P1, . . . ,Pr} ⊆ A(F ) and all vi ∈ Z.
The Riemann-Roch space associated to D is
LF (D) :=
{x ∈ F (A) : ordP(x) ≥ −vP , P ∈ supp(D);
ordP(x) ≥ 0, P ∈ A(F ) \ supp(D)
}∪{0}.
LF (D) is an F -vector space of rational functions on A.
Example (cont.)Let the curve A be as before, choose a divisor D = 3 (0 : 1 : 0).The space LF3(D) has a basis
{1, X
Z ,YZ
}over F3. #LF3(D) = 27.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
13 / 17
Algebraic Geometry CodesNotation
A a smooth projective curve over a finite field Fq;Q = {Q1, . . . ,Qn} ⊂ A(Fq) a set of distinct points;D a divisor on A such that supp(D) ∩Q = ∅.
The AG-code associated with Q and D is
CL(Q,D) :={(x(Q1), . . . , x(Qn)) : x ∈ LFq (D)
}⊆ Fn
q.
Example (cont.)Let the divisor D = 3 (0 : 1 : 0) be as before, and choose Q ={(0 : 1 : 1), (0 : 2 : 1), (1 : 1 : 1), (1 : 2 : 1), (2 : 1 : 1), (2 : 2 : 1)}.Function X+Y
Z yields the codeword (1 2 2 0 0 1).
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
14 / 17
Dimension and Distance of AG-CodesNotation
deg(D) :=∑r
i=1 vi degree of divisor D =∑r
i=1 viPi ;g := (dA − 1)(dA − 2)/2 genus of a smooth curve A
defined by an irreducible polynomial of degree dA.
Theorem (Goppa, using Riemann-Roch)Suppose n = #Q > deg(D). Then CL(Q,D) is [n, k ,d ]q code with
k = dim(LFq (D)) ≥ deg(D) + 1− g,d ≥ n − deg(D).
If n > deg(D) > 2g − 2, then k = deg(D) + 1− g.
Example (cont.)We have: deg(D) = 3 and g = 1, hence CL is a [6,3,3]3 code.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
15 / 17
Encoding with AG-CodesLet deg(D) < n, and let {x1, . . . , xk} be a basis of LFq (D).Then rows of the matrix
G :=
x1(Q1) x1(Q2) · · · x1(Qn)x2(Q1) x2(Q2) · · · x2(Qn)
......
. . ....
xk (Q1) xk (Q2) · · · xk (Qn)
form a basis for CL(Q,D). G is called a generator matrix for CL.
A message m ∈ Fkq is encoded as the codeword mG ∈ Fn
q.
Example (cont.)Encoding of m = (0 1 2):
mG = (0 1 2)
1 1 1 1 1 10 0 1 1 2 21 2 1 2 1 2
= (2 1 0 2 1 0).
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
16 / 17
Decoding AG-Codes
d∗ := n − deg(D) is called the designed distance of CL(Q,D).
Unique decodingCan correct up to
⌊d∗−1
2
⌋errors in time O(n3) using the majority
voting scheme algorithm [Feng and Rao 1993], [Duursma 1993].
List decodingCan correct beyond d/2 errors producing a list of candidatemessages in polynomial time [Shokrollahi and Wasserman 1999],[Guruswami and Sudan 1999].
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry
17 / 17
Further Reading1
Patrick J. MorandiError correcting codes and algebraic curvesLecture Notes. New Mexico State University, 2001.
Henning StichtenothAlgebraic function fields and codesSecond edition. Graduate Texts in Mathematics, 254.Springer-Verlag, Berlin, 2009.
Eds.: Edgar Martnez-Moro, Carlos Munuera and Diego RuanoAdvances in algebraic geometry codesSeries on Coding Theory and Cryptology, 5. World ScientificPublishing Co. Pte. Ltd., Hackensack, NJ, 2008.
1Figures on slides 3 and 6 are from W.C. Huffman and V. Pless, Fundamentals ofError-Correcting Codes, Cambridge University Press 2003. Images on slide 4 weredownloaded from www.images.google.com and www.barcode-generator.org.
www.ntnu.no Anton Stolbunov, Error Correcting Codes from Algebraic Geometry