Upload
others
View
35
Download
0
Embed Size (px)
Citation preview
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algebraic Geometry Codes
Shelly Manber
December 2, 2011
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
References
Main Source: Stichtenoth, Henning. “Algebraic FunctionFields and Codes”. Springer, 2009.
Other Sources:
Høholdt, Lint and Pellikaan. “Algebraic geometry codes.”Handbook of Coding Theory, vol 1, p 871-961,Amsterdam, 2011.
Bartley and Walker. “Algebraic Geometric Codes overRings.” World Scientific Review, June 2008.
Guruswami,Venkatesan. “Notes 2: Gilbert-Varshamovbound.” Jan 2010.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Correcting Codes
Natural way of sending information is a stream of bits:011100010100100011...
If one bit is off, the entire message may be 100% different
Error Correcting Codes: a way to send information along anoisy channel so that the original message can berecovered with high probability
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Correcting Codes
Natural way of sending information is a stream of bits:011100010100100011...
If one bit is off, the entire message may be 100% different
Error Correcting Codes: a way to send information along anoisy channel so that the original message can berecovered with high probability
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Correcting Codes
Natural way of sending information is a stream of bits:011100010100100011...
If one bit is off, the entire message may be 100% different
Error Correcting Codes: a way to send information along anoisy channel so that the original message can berecovered with high probability
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Correcting Codes
Natural way of sending information is a stream of bits:011100010100100011...
If one bit is off, the entire message may be 100% different
Error Correcting Codes: a way to send information along anoisy channel so that the original message can berecovered with high probability
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definitions
Definition: A linear code C is a linear subpace of Fnq.
Definition: The dimension k of a linear code is its dimensionas a vector space
Definition: The Hamming distance between two elements ofFn
q is the number of coefficients on which the two elementsdiffer. The weight of an element, wt(e), is the number ofnonzero coefficients.
Definition: The minimum distance of a code is the minimumHamming distance between any two elements of the linear code(equivalently the minimum weight of a codeword)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definitions
Definition: A linear code C is a linear subpace of Fnq.
Definition: The dimension k of a linear code is its dimensionas a vector space
Definition: The Hamming distance between two elements ofFn
q is the number of coefficients on which the two elementsdiffer. The weight of an element, wt(e), is the number ofnonzero coefficients.
Definition: The minimum distance of a code is the minimumHamming distance between any two elements of the linear code(equivalently the minimum weight of a codeword)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definitions
Definition: A linear code C is a linear subpace of Fnq.
Definition: The dimension k of a linear code is its dimensionas a vector space
Definition: The Hamming distance between two elements ofFn
q is the number of coefficients on which the two elementsdiffer. The weight of an element, wt(e), is the number ofnonzero coefficients.
Definition: The minimum distance of a code is the minimumHamming distance between any two elements of the linear code(equivalently the minimum weight of a codeword)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definitions
Definition: A linear code C is a linear subpace of Fnq.
Definition: The dimension k of a linear code is its dimensionas a vector space
Definition: The Hamming distance between two elements ofFn
q is the number of coefficients on which the two elementsdiffer. The weight of an element, wt(e), is the number ofnonzero coefficients.
Definition: The minimum distance of a code is the minimumHamming distance between any two elements of the linear code(equivalently the minimum weight of a codeword)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Encoding
An encoding is a map from a message into the code C
A generator matrix is a k × n matrix whose rows are abasis for C
A generator matrix gives an encoding:
(x1 x2 x3
) a1 a2 a3 a4 a5
b1 b2 b3 b4 b5
c1 c2 c3 c4 c5
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Encoding
An encoding is a map from a message into the code C
A generator matrix is a k × n matrix whose rows are abasis for C
A generator matrix gives an encoding:
(x1 x2 x3
) a1 a2 a3 a4 a5
b1 b2 b3 b4 b5
c1 c2 c3 c4 c5
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Encoding
An encoding is a map from a message into the code C
A generator matrix is a k × n matrix whose rows are abasis for C
A generator matrix gives an encoding:
(x1 x2 x3
) a1 a2 a3 a4 a5
b1 b2 b3 b4 b5
c1 c2 c3 c4 c5
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Checking
Definition: The dual C⊥ of a code C is its dual as a vectorspace under the canonical inner product.
Definition: A parity check matrix M for C is an (n − k)× nmatrix whose rows are a basis for C⊥
Claim: A vector x := (x1, . . . , xn) ∈ Fnq is in C if and only if
Mx = 0.
Proof.
(C⊥)⊥ = C , so
x ∈ C ⇔ 〈x , c〉 = 0 ∀c ∈ C⊥ ⇔ Mx = 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Checking
Definition: The dual C⊥ of a code C is its dual as a vectorspace under the canonical inner product.
Definition: A parity check matrix M for C is an (n − k)× nmatrix whose rows are a basis for C⊥
Claim: A vector x := (x1, . . . , xn) ∈ Fnq is in C if and only if
Mx = 0.
Proof.
(C⊥)⊥ = C , so
x ∈ C ⇔ 〈x , c〉 = 0 ∀c ∈ C⊥ ⇔ Mx = 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Checking
Definition: The dual C⊥ of a code C is its dual as a vectorspace under the canonical inner product.
Definition: A parity check matrix M for C is an (n − k)× nmatrix whose rows are a basis for C⊥
Claim: A vector x := (x1, . . . , xn) ∈ Fnq is in C if and only if
Mx = 0.
Proof.
(C⊥)⊥ = C , so
x ∈ C ⇔ 〈x , c〉 = 0 ∀c ∈ C⊥ ⇔ Mx = 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Checking
Definition: The dual C⊥ of a code C is its dual as a vectorspace under the canonical inner product.
Definition: A parity check matrix M for C is an (n − k)× nmatrix whose rows are a basis for C⊥
Claim: A vector x := (x1, . . . , xn) ∈ Fnq is in C if and only if
Mx = 0.
Proof.
(C⊥)⊥ = C , so
x ∈ C ⇔ 〈x , c〉 = 0 ∀c ∈ C⊥ ⇔ Mx = 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Checking
Definition: The dual C⊥ of a code C is its dual as a vectorspace under the canonical inner product.
Definition: A parity check matrix M for C is an (n − k)× nmatrix whose rows are a basis for C⊥
Claim: A vector x := (x1, . . . , xn) ∈ Fnq is in C if and only if
Mx = 0.
Proof.
(C⊥)⊥ = C , so
x ∈ C ⇔ 〈x , c〉 = 0 ∀c ∈ C⊥
⇔ Mx = 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Error Checking
Definition: The dual C⊥ of a code C is its dual as a vectorspace under the canonical inner product.
Definition: A parity check matrix M for C is an (n − k)× nmatrix whose rows are a basis for C⊥
Claim: A vector x := (x1, . . . , xn) ∈ Fnq is in C if and only if
Mx = 0.
Proof.
(C⊥)⊥ = C , so
x ∈ C ⇔ 〈x , c〉 = 0 ∀c ∈ C⊥ ⇔ Mx = 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding
Let C be an [n, k , d ] code. If x ∈ Fnq has Hamming distance
≤ (d − 1)/2 from a codeword c ∈ C then c is the uniquecodeword with minimal distance to x .
Definition: A decoding is an algorithm, given a ∈ Fnq and the
guarantee that a = c + e for some c ∈ C and e ∈ Fnq with
weight ≤ (d − 1)/2, to recover c .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding
Let C be an [n, k , d ] code. If x ∈ Fnq has Hamming distance
≤ (d − 1)/2 from a codeword c ∈ C then c is the uniquecodeword with minimal distance to x .
Definition: A decoding is an algorithm, given a ∈ Fnq and the
guarantee that a = c + e for some c ∈ C and e ∈ Fnq with
weight ≤ (d − 1)/2, to recover c .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?
Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
To maximize code efficacy:
Should d be higher or lower with respect to n?Should k be higher or lower with respect to n?
Theorem (Singleton Bound): for all linear codes
k + d ≤ n + 1
Proof.
LetV := (a1, ..., an) ∈ Fn
q | ai = 0 ∀i ≥ d
So dim(V ) = d − 1 and V ∩ C = ∅, so
n = dim(Fnq) ≥ dim(V + C ) = dim(V ) + dim(C )
= (d − 1) + k
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Example: Reed-Solomon Codes
Let n = q − 1 and Fq = 0, 1, α, . . . , αn−1. Choose k ≤ n,and define
Lk = f ∈ Fq[X ] | deg f ≤ k − 1
Define
CRS = (f (1), f (α), . . . , f (αn−1) | f ∈ Lk
Claim: CRS is an [n, k , n − k + 1] code.
Proof.
1 Lk → CRS is an injective Fq-linear map
2 A polynomial of degree k − 1 has at most k − 1 zeros, sod ≥ n − k + 1
3 By the Singleton bound, d ≤ n − k + 1
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Example: Reed-Solomon Codes
Let n = q − 1 and Fq = 0, 1, α, . . . , αn−1. Choose k ≤ n,and define
Lk = f ∈ Fq[X ] | deg f ≤ k − 1
Define
CRS = (f (1), f (α), . . . , f (αn−1) | f ∈ Lk
Claim: CRS is an [n, k , n − k + 1] code.
Proof.
1 Lk → CRS is an injective Fq-linear map
2 A polynomial of degree k − 1 has at most k − 1 zeros, sod ≥ n − k + 1
3 By the Singleton bound, d ≤ n − k + 1
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Example: Reed-Solomon Codes
Let n = q − 1 and Fq = 0, 1, α, . . . , αn−1. Choose k ≤ n,and define
Lk = f ∈ Fq[X ] | deg f ≤ k − 1
Define
CRS = (f (1), f (α), . . . , f (αn−1) | f ∈ Lk
Claim: CRS is an [n, k , n − k + 1] code.
Proof.
1 Lk → CRS is an injective Fq-linear map
2 A polynomial of degree k − 1 has at most k − 1 zeros, sod ≥ n − k + 1
3 By the Singleton bound, d ≤ n − k + 1
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Example: Reed-Solomon Codes
Let n = q − 1 and Fq = 0, 1, α, . . . , αn−1. Choose k ≤ n,and define
Lk = f ∈ Fq[X ] | deg f ≤ k − 1
Define
CRS = (f (1), f (α), . . . , f (αn−1) | f ∈ Lk
Claim: CRS is an [n, k , n − k + 1] code.
Proof.
1 Lk → CRS is an injective Fq-linear map
2 A polynomial of degree k − 1 has at most k − 1 zeros, sod ≥ n − k + 1
3 By the Singleton bound, d ≤ n − k + 1
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Example: Reed-Solomon Codes
Let n = q − 1 and Fq = 0, 1, α, . . . , αn−1. Choose k ≤ n,and define
Lk = f ∈ Fq[X ] | deg f ≤ k − 1
Define
CRS = (f (1), f (α), . . . , f (αn−1) | f ∈ Lk
Claim: CRS is an [n, k , n − k + 1] code.
Proof.
1 Lk → CRS is an injective Fq-linear map
2 A polynomial of degree k − 1 has at most k − 1 zeros, sod ≥ n − k + 1
3 By the Singleton bound, d ≤ n − k + 1
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definition
Given:
X a curve of genus g over Fq with function field F
P1, . . . ,Pn distinct places of F of degree one
D := P1 + · · ·+ Pn a divisor of X
G a divisor of X such that Supp G ∩ Supp D = ∅Define
CL (D,G ) := (x(P1), . . . , x(Pn)) | x ∈ L (G ) ⊂ Fnq
Claim: k = `(G )− `(G − D) and d ≥ n − deg G .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definition
Given:
X a curve of genus g over Fq with function field F
P1, . . . ,Pn distinct places of F of degree one
D := P1 + · · ·+ Pn a divisor of X
G a divisor of X such that Supp G ∩ Supp D = ∅Define
CL (D,G ) := (x(P1), . . . , x(Pn)) | x ∈ L (G ) ⊂ Fnq
Claim: k = `(G )− `(G − D) and d ≥ n − deg G .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definition
Given:
X a curve of genus g over Fq with function field F
P1, . . . ,Pn distinct places of F of degree one
D := P1 + · · ·+ Pn a divisor of X
G a divisor of X such that Supp G ∩ Supp D = ∅Define
CL (D,G ) := (x(P1), . . . , x(Pn)) | x ∈ L (G ) ⊂ Fnq
Claim: k = `(G )− `(G − D) and d ≥ n − deg G .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definition
Given:
X a curve of genus g over Fq with function field F
P1, . . . ,Pn distinct places of F of degree one
D := P1 + · · ·+ Pn a divisor of X
G a divisor of X such that Supp G ∩ Supp D = ∅Define
CL (D,G ) := (x(P1), . . . , x(Pn)) | x ∈ L (G ) ⊂ Fnq
Claim: k = `(G )− `(G − D) and d ≥ n − deg G .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Definition
Given:
X a curve of genus g over Fq with function field F
P1, . . . ,Pn distinct places of F of degree one
D := P1 + · · ·+ Pn a divisor of X
G a divisor of X such that Supp G ∩ Supp D = ∅Define
CL (D,G ) := (x(P1), . . . , x(Pn)) | x ∈ L (G ) ⊂ Fnq
Claim: k = `(G )− `(G − D) and d ≥ n − deg G .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Some Nice Properties
If deg G < n then
1 k = `(G ) ≥ deg(G ) + 1− g (Riemann-Roch)
2 L (G )→ CL (D,G ) is injective
3 For a basis x1, . . . , xk of L (G ), the matrix:x1(P1) x1(P2) . . . x1(Pn)x2(P1) x2(P2) . . . x2(Pn). . . . . . . . . . . .
xn(P1) xn(P2) . . . xn(Pn)
is a generator matrix for CL .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Some Nice Properties
If deg G < n then
1 k = `(G ) ≥ deg(G ) + 1− g (Riemann-Roch)
2 L (G )→ CL (D,G ) is injective
3 For a basis x1, . . . , xk of L (G ), the matrix:x1(P1) x1(P2) . . . x1(Pn)x2(P1) x2(P2) . . . x2(Pn). . . . . . . . . . . .
xn(P1) xn(P2) . . . xn(Pn)
is a generator matrix for CL .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Some Nice Properties
If deg G < n then
1 k = `(G ) ≥ deg(G ) + 1− g (Riemann-Roch)
2 L (G )→ CL (D,G ) is injective
3 For a basis x1, . . . , xk of L (G ), the matrix:x1(P1) x1(P2) . . . x1(Pn)x2(P1) x2(P2) . . . x2(Pn). . . . . . . . . . . .
xn(P1) xn(P2) . . . xn(Pn)
is a generator matrix for CL .
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
If deg G < n then k ≥ deg(G ) + 1− g and d ≥ n − deg G so
k + d ≥ n + 1− g
But recall thatk + d ≤ n + 1
So for genus 0 curves,
k + d = n + 1
Unfortunately, for genus zero curves, n ≤ q + 1, so over a fixedalphabet, we can’t send very large messages.
Goal of coding theory: To construct asymptotically goodcurves
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
If deg G < n then k ≥ deg(G ) + 1− g and d ≥ n − deg G so
k + d ≥ n + 1− g
But recall thatk + d ≤ n + 1
So for genus 0 curves,
k + d = n + 1
Unfortunately, for genus zero curves, n ≤ q + 1, so over a fixedalphabet, we can’t send very large messages.
Goal of coding theory: To construct asymptotically goodcurves
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
If deg G < n then k ≥ deg(G ) + 1− g and d ≥ n − deg G so
k + d ≥ n + 1− g
But recall thatk + d ≤ n + 1
So for genus 0 curves,
k + d = n + 1
Unfortunately, for genus zero curves, n ≤ q + 1, so over a fixedalphabet, we can’t send very large messages.
Goal of coding theory: To construct asymptotically goodcurves
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
If deg G < n then k ≥ deg(G ) + 1− g and d ≥ n − deg G so
k + d ≥ n + 1− g
But recall thatk + d ≤ n + 1
So for genus 0 curves,
k + d = n + 1
Unfortunately, for genus zero curves, n ≤ q + 1, so over a fixedalphabet, we can’t send very large messages.
Goal of coding theory: To construct asymptotically goodcurves
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
If deg G < n then k ≥ deg(G ) + 1− g and d ≥ n − deg G so
k + d ≥ n + 1− g
But recall thatk + d ≤ n + 1
So for genus 0 curves,
k + d = n + 1
Unfortunately, for genus zero curves, n ≤ q + 1, so over a fixedalphabet, we can’t send very large messages.
Goal of coding theory: To construct asymptotically goodcurves
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
If deg G < n then k ≥ deg(G ) + 1− g and d ≥ n − deg G so
k + d ≥ n + 1− g
But recall thatk + d ≤ n + 1
So for genus 0 curves,
k + d = n + 1
Unfortunately, for genus zero curves, n ≤ q + 1, so over a fixedalphabet, we can’t send very large messages.
Goal of coding theory: To construct asymptotically goodcurves
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Asymptotically Good Curves
Definition: For an [n, k , d ] code:
R = k/n is called the information rate, and
δ = d/n is called the relative distance
Theorem (Gilbert-Varshamov bound): For any fixed q andδ ≤ 1− 1/q, and an arbitrarily small ε > 0 there exists aninfinite family of codes with
R ≥ 1− hq(δ)− ε
where hq(x) is the entropy function:
hq(x) := xlogq(q − 1)− xlogq(x)− (1− x)logq(1− x)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Asymptotically Good Curves
Definition: For an [n, k , d ] code:
R = k/n is called the information rate, and
δ = d/n is called the relative distance
Theorem (Gilbert-Varshamov bound): For any fixed q andδ ≤ 1− 1/q, and an arbitrarily small ε > 0 there exists aninfinite family of codes with
R ≥ 1− hq(δ)− ε
where hq(x) is the entropy function:
hq(x) := xlogq(q − 1)− xlogq(x)− (1− x)logq(1− x)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Residues of Differentials
Let P be a place of F with local parameter t.
Claim: Any x ∈ F can be written uniquely as∑∞
i=m ai ti with
ai ∈ Fq for some integer m.
Definition: For any differential ω of F , write
ω = f dt
f =∞∑
i=m
ai ti
Define resP(ω) := a−1
Claim: Residue is well-defined.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Residues of Differentials
Let P be a place of F with local parameter t.
Claim: Any x ∈ F can be written uniquely as∑∞
i=m ai ti with
ai ∈ Fq for some integer m.
Definition: For any differential ω of F , write
ω = f dt
f =∞∑
i=m
ai ti
Define resP(ω) := a−1
Claim: Residue is well-defined.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Residues of Differentials
Let P be a place of F with local parameter t.
Claim: Any x ∈ F can be written uniquely as∑∞
i=m ai ti with
ai ∈ Fq for some integer m.
Definition: For any differential ω of F , write
ω = f dt
f =∞∑
i=m
ai ti
Define resP(ω) := a−1
Claim: Residue is well-defined.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Residues of Differentials
Let P be a place of F with local parameter t.
Claim: Any x ∈ F can be written uniquely as∑∞
i=m ai ti with
ai ∈ Fq for some integer m.
Definition: For any differential ω of F , write
ω = f dt
f =∞∑
i=m
ai ti
Define resP(ω) := a−1
Claim: Residue is well-defined.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Another Algebraic Geometry Code
Given:
P1, . . . ,Pn distinct places of F of degree one
D = P1 + · · ·+ Pn a divisor of X
G a divisor of X such that Supp G ∩ Supp D = ∅as before, define
CΩ(D,G ) := (resP1(ω), . . . , resPn(ω)) | ω ∈ ΩF (G − D)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Duals
Proposition: CΩ(D,G ) = CL (D,G )⊥
Proposition: There exists a Weil Differential η which can beexplicitly computed such that
CΩ(D,G )⊥ = CL (D,G ) = CΩ(D,D − G + (η))
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Duals
Proposition: CΩ(D,G ) = CL (D,G )⊥
Proposition: There exists a Weil Differential η which can beexplicitly computed such that
CΩ(D,G )⊥ = CL (D,G ) = CΩ(D,D − G + (η))
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Hermitian Codes
Let
F := Fq2(x , y) with yq + y = xq+1
Pα,β be the unique place such that x(Pα,β) = α andy(Pα,β) = β and P∞ be the common pole of x and y .
D =∑
βq+β=αq+1 Pα,β
For each 0 < r < q3 + q2 − q − 2 define
Cr := CL (D, rP∞)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Hermitian Codes
Let
F := Fq2(x , y) with yq + y = xq+1
Pα,β be the unique place such that x(Pα,β) = α andy(Pα,β) = β and P∞ be the common pole of x and y .
D =∑
βq+β=αq+1 Pα,β
For each 0 < r < q3 + q2 − q − 2 define
Cr := CL (D, rP∞)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Hermitian Codes
Let
F := Fq2(x , y) with yq + y = xq+1
Pα,β be the unique place such that x(Pα,β) = α andy(Pα,β) = β and P∞ be the common pole of x and y .
D =∑
βq+β=αq+1 Pα,β
For each 0 < r < q3 + q2 − q − 2 define
Cr := CL (D, rP∞)
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Generating Hermitian Codes
Proposition: For each r ≥ 0, the elements of the form x iy j
with
0 ≤ i
0 ≤ j ≤ q − 1
iq + j(q + 1) ≤ r
form a basis for L (rP∞)
Corollary: The generating matrix for Cr is the matrix whoserows are (αiβj)βq+β=αq+1 where i and j satisfy the aboveconditions.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Generating Hermitian Codes
Proposition: For each r ≥ 0, the elements of the form x iy j
with
0 ≤ i
0 ≤ j ≤ q − 1
iq + j(q + 1) ≤ r
form a basis for L (rP∞)
Corollary: The generating matrix for Cr is the matrix whoserows are (αiβj)βq+β=αq+1 where i and j satisfy the aboveconditions.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Bounds
Let N(r) be the number of pairs i , j satisfying the propertiespreviously mentioned.
Proposition:
n = q3
k = dim Cr =
N(r) 0 ≤ r < q3
n − N(r) q3 ≤ r ≤ q3 + q2 − q − 2
d ≥ n − r
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Numerical Example: q = 2
Let F4 = 0, 1, a, a + 1, C defined by y2z + yz2 + x3, i.e.F = Frac(Fq[x , y , z ]/(y2z + yz2 + x3))
Rational points:[(0 : 0 : 1), (0 : 1 : 0), (0 : 1 : 1), (1 : a : 1), (1 : a + 1 : 1), (a :a : 1), (a : a + 1 : 1), (a + 1 : a : 1), (a + 1 : a + 1 : 1)]
Let r = 5. Then the basis for L (r(0 : 1 : 0)) is
1, x , y , x2, xy
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Numerical Example: q = 2
Let F4 = 0, 1, a, a + 1, C defined by y2z + yz2 + x3, i.e.F = Frac(Fq[x , y , z ]/(y2z + yz2 + x3))
Rational points:[(0 : 0 : 1), (0 : 1 : 0), (0 : 1 : 1), (1 : a : 1), (1 : a + 1 : 1), (a :a : 1), (a : a + 1 : 1), (a + 1 : a : 1), (a + 1 : a + 1 : 1)]
Let r = 5. Then the basis for L (r(0 : 1 : 0)) is
1, x , y , x2, xy
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Numerical Example: q = 2
Let F4 = 0, 1, a, a + 1, C defined by y2z + yz2 + x3, i.e.F = Frac(Fq[x , y , z ]/(y2z + yz2 + x3))
Rational points:[(0 : 0 : 1), (0 : 1 : 0), (0 : 1 : 1), (1 : a : 1), (1 : a + 1 : 1), (a :a : 1), (a : a + 1 : 1), (a + 1 : a : 1), (a + 1 : a + 1 : 1)]
Let r = 5. Then the basis for L (r(0 : 1 : 0)) is
1, x , y , x2, xy
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Numerical Example: generating matrix
Generating matrix for C :1 1 1 1 1 1 1 11 1 a a + 1 a a + 1 a 00 0 1 1 a a a + 1 00 0 a a + 1 a + 1 1 1 00 0 1 1 a + 1 a + 1 a 0
Sum of third and fifth rows is(0 0 0 0 1 1 1 0
)So d = 3.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Numerical Example: generating matrix
Generating matrix for C :1 1 1 1 1 1 1 11 1 a a + 1 a a + 1 a 00 0 1 1 a a a + 1 00 0 a a + 1 a + 1 1 1 00 0 1 1 a + 1 a + 1 a 0
Sum of third and fifth rows is(
0 0 0 0 1 1 1 0)
So d = 3.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Overview
Fix t ≥ 0 and let a = c + e with c ∈ CΩ and wt(e) ≤ t
We want an algorithm to compute c given a
Write e = (e1, . . . , en)
Algorithm Steps:
1 Construct f ∈ F such that f (Pi ) = 0 when ei 6= 0.
2 Compute ei for all i such that f (Pi ) = 0.
3 Since ei = 0 for all i such that f (Pi ) 6= 0, we havecomputed e. Then c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Overview
Fix t ≥ 0 and let a = c + e with c ∈ CΩ and wt(e) ≤ t
We want an algorithm to compute c given a
Write e = (e1, . . . , en)
Algorithm Steps:
1 Construct f ∈ F such that f (Pi ) = 0 when ei 6= 0.
2 Compute ei for all i such that f (Pi ) = 0.
3 Since ei = 0 for all i such that f (Pi ) 6= 0, we havecomputed e. Then c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Overview
Fix t ≥ 0 and let a = c + e with c ∈ CΩ and wt(e) ≤ t
We want an algorithm to compute c given a
Write e = (e1, . . . , en)
Algorithm Steps:
1 Construct f ∈ F such that f (Pi ) = 0 when ei 6= 0.
2 Compute ei for all i such that f (Pi ) = 0.
3 Since ei = 0 for all i such that f (Pi ) 6= 0, we havecomputed e. Then c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Overview
Fix t ≥ 0 and let a = c + e with c ∈ CΩ and wt(e) ≤ t
We want an algorithm to compute c given a
Write e = (e1, . . . , en)
Algorithm Steps:
1 Construct f ∈ F such that f (Pi ) = 0 when ei 6= 0.
2 Compute ei for all i such that f (Pi ) = 0.
3 Since ei = 0 for all i such that f (Pi ) 6= 0, we havecomputed e. Then c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Overview
Fix t ≥ 0 and let a = c + e with c ∈ CΩ and wt(e) ≤ t
We want an algorithm to compute c given a
Write e = (e1, . . . , en)
Algorithm Steps:
1 Construct f ∈ F such that f (Pi ) = 0 when ei 6= 0.
2 Compute ei for all i such that f (Pi ) = 0.
3 Since ei = 0 for all i such that f (Pi ) 6= 0, we havecomputed e. Then c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Overview
Fix t ≥ 0 and let a = c + e with c ∈ CΩ and wt(e) ≤ t
We want an algorithm to compute c given a
Write e = (e1, . . . , en)
Algorithm Steps:
1 Construct f ∈ F such that f (Pi ) = 0 when ei 6= 0.
2 Compute ei for all i such that f (Pi ) = 0.
3 Since ei = 0 for all i such that f (Pi ) 6= 0, we havecomputed e. Then c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Conditions
Let G1 be a divisor such that
Supp G1 ∩ Supp D = ∅deg G1 < deg G − (2g − 2)− t
`(G1) > t
and let
[a, f ] :=n∑
i=1
ai · f (Pi )
Fix bases
f1, . . . , f` of L (G1)
g1, . . . , gk of L (G − G1)
h1, . . . , hm of L (G )
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Conditions
Let G1 be a divisor such that
Supp G1 ∩ Supp D = ∅deg G1 < deg G − (2g − 2)− t
`(G1) > t
and let
[a, f ] :=n∑
i=1
ai · f (Pi )
Fix bases
f1, . . . , f` of L (G1)
g1, . . . , gk of L (G − G1)
h1, . . . , hm of L (G )
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Conditions
Let G1 be a divisor such that
Supp G1 ∩ Supp D = ∅deg G1 < deg G − (2g − 2)− t
`(G1) > t
and let
[a, f ] :=n∑
i=1
ai · f (Pi )
Fix bases
f1, . . . , f` of L (G1)
g1, . . . , gk of L (G − G1)
h1, . . . , hm of L (G )
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Specifics
Proposition: For each 1 ≤ ρ ≤ k, the linear system
∑λ=1
[a, fλgρ] · xλ = 0
has a nontrivial solution (α1, . . . , α`).
Let
f :=∑λ=1
αλfλ
Then f (Pi ) = 0 whenever ei 6= 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Specifics
Proposition: For each 1 ≤ ρ ≤ k, the linear system
∑λ=1
[a, fλgρ] · xλ = 0
has a nontrivial solution (α1, . . . , α`).
Let
f :=∑λ=1
αλfλ
Then f (Pi ) = 0 whenever ei 6= 0
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Specifics
Proposition: For each 1 ≤ µ ≤ m, the linear system∑i | f (Pi )=0
hµ(Pi ) · zi = [a, hµ]
has a unique solution agreeing with e on all i such thatf (Pi ) = 0.
Conclusion: Solving the two linear systems completelycomputes e and hence we can recover c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Algorithm Specifics
Proposition: For each 1 ≤ µ ≤ m, the linear system∑i | f (Pi )=0
hµ(Pi ) · zi = [a, hµ]
has a unique solution agreeing with e on all i such thatf (Pi ) = 0.
Conclusion: Solving the two linear systems completelycomputes e and hence we can recover c = a− e.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Hermitian Codes
Proposition: The dual of Cr is Cq3+q2−q−2−r
Corollary: CL (D, rP∞) = CΩ(D, (q3 + q2 − q − 2− r)P∞)
We can decode CΩ(D, (q3 + q2 − q − 2− r)P∞) with thealgorithm given.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Hermitian Codes
Proposition: The dual of Cr is Cq3+q2−q−2−r
Corollary: CL (D, rP∞) = CΩ(D, (q3 + q2 − q − 2− r)P∞)
We can decode CΩ(D, (q3 + q2 − q − 2− r)P∞) with thealgorithm given.
AlgebraicGeometry
Codes
Shelly Manber
Linear Codes
AlgebraicGeometryCodes
Example:HermitianCodes
Decoding
Decoding Hermitian Codes
Proposition: The dual of Cr is Cq3+q2−q−2−r
Corollary: CL (D, rP∞) = CΩ(D, (q3 + q2 − q − 2− r)P∞)
We can decode CΩ(D, (q3 + q2 − q − 2− r)P∞) with thealgorithm given.