Title: Encodings
1Encodings
2Overview
- Review of some basic math
- Error correcting codes
- Low degree polynomials
H.W
3Review - Fields
,,0, 1, -a and a-1 are only notations!
- Def (field) A set F with two binary operations
(addition) and (multiplication) is called a
field if
6 ? a,b?F, ab?F 7 ? a,b,c?F, (ab)ca(bc) 8 ?
a,b?F, abba 9 ? 1?F, ? a?F, a1a 10? a?0?F, ?
a-1?F, aa-11
1 ? a,b?F, ab?F 2 ? a,b,c?F, (ab)ca(bc) 3 ?
a,b?F, abba 4 ? 0?F, ? a?F, a0a 5 ? a?F, ?
-a?F, a(-a)0
11 ? a,b,c?F, a(bc)abac
4Finite Fields
- Def (finite field) A finite set F with two
binary operations (addition) and
(multiplication) is called a finite field if it
is a field. - Example Zp denotes 0,1,...,p-1. We define
and as the addition and multiplication modulo p
respectively. - One can prove that (Zp,,) is a field iff p is
prime. Throughout the presentations well usually
refer to Zp when well mention finite fields.
5Strings Functions (1)
- Let ? ?0 ?2 . . . ?n-1, where ?i??.We can
describe the string ? as a function ? 0n-1 ?
?, such that ?i ?(i) ?i. - Let f be a function f D ? R. Then f can be
described as a string in RD, spelling fs value
on each point of D.
6Strings Functions - Example
- For example, let f be a function f Z5 ? Z5, and
let ? Z5.
?
7Introduction to Error Correcting Codes
original message
1001110
1001110
communication line
Wed like to still be able to reconstruct the
original message
8Error Correcting Codes
Note that ??m??m?R is indeed a distance
function, because it satisfies (1) ?x,y??m
?(x,y)?0 and ?(x,y)0 iff xy (2) ?x,y??m
?(x,y)?(y,x) (3) ?x,y,z??m ?(x,z)??(x,y)?(y,z)
- Def (encoding) An encoding E is a function E
?n ? ?m, where m gtgt n. - Def (code word) A code word w is a member of the
image of the encoding E ?n ? ?m. - Def (?-code) An encoding E is an?-code if
??????n ?(E(?),E(?)) ? 1 - ?, where ?(x,y) (the
Hamming distance), denotes the fraction of
entries on which x and y differ.
9Example a simple error correcting code
Consider the following code for every ???n , let
E(?,k)?k (the same word repeated k times, hence
mkn).
E(?,4)
10Example a simple error correcting code
Because every two words ?????n were different on
at least one coordinate to begin with, the
distance of the code (1-alpha) is
11Example a simple error correcting code
D
R
12Reed-Solomon codes
- We shall now use polynomials over finite fields
to build a better generic code (larger distance
between words)
Def (univariate polynomial) a polynomial in x
over a field F is a function PF?F, which can be
written as
for some series of coefficients
a0,...,ar-1?F. The natural number r is called the
degree-bound of the polynomial.
Note A polynomial whose degree-bound is r is of
degree at most r-1 !
13Reed-Solomon codes
- Thm
- Given x0,y0,...,xr-1,yr-1?F there is a single
univariate polynomial P and degree-bound r, which
satisfies ?0?k?r-1 P(xk)yk
Proof ? Uniqueness If there are two such
polynomials p1 p2, then p1-p2 is a polynomial
with degree-bound r, which has r roots. This
contradicts the fundamental theorem of Algebra!
? Existence We shall build such a polynomial
using Lagranges formula
14Reed-Solomon codes
yt
0
a-b denotes a(-b) a/b denoted a(b-1)
Lets check the value of this polynomial in x
xt for some 0 ? t ? r-1
Since the degree-bound of this polynomial is r,
we in fact proved the correctness of the
formula
15Reed-Solomon codes
- Def (the Reed-Solomon code)
- Set F to be the finite field Zp for some prime p,
and assume for simplicity that? F and m p. - Given ???n, let E(?) be the string of the
function f? F ? F that satisfiesf? is the
unique polynomial of degree-bound n such that
f?(i) ?i for all 0 ? i ? n-1.
16Reed-Solomon codes
- E(?) can be interpolated from any n points.
- Hence, for any ???, E(?) and E(?) may agree on at
most n 1 points. - Therefore, E is an (n 1) / m code, that is a
code with distance of
17Reed-Solomon codes
? 1, 2 ? 3, 1
f?(x) x 1 f?(x) 3x 3
E(?) 1, 2, 3, 4, 0 E(?) 3, 1, 4, 2, 0
18Strings Functions (2)
- We can describe any string as a function fHd ? H
(H is a finite field, d is a positive integer). - Given a ???n well achieve that by choosing HZq,
where q is the smallest prime greater than ?,
and d?logqn?.
19Reed-Muller Codes
- Def (multivariate polynomial) Let F be a field
and let d be some positive integer number. A
function pFd?F is a multivariate polynomial if
it can be written as - for some series of coefficients in the field.
- h is the degree-bound on each one of the
variables. - The total-degree of the polynomial is
- max i0id-1 ai0id-1 ?0 .
20Error correcting Codes Home Assignment
- Weve seen that Reed-Solomon codes using
polynomials with degree-bound r have distance of
- What is the distance of error correcting codes
that use multivariate polynomials (over a finite
field F, with degree-bound h in each variable and
dimension d)?
Next
21Low Degree Extension (LDE)
- Def (low degree extension) Let ? Hd ? H be a
string (where H is some finite field). - Given a finite field F, which is a superset of H,
we define a low degree extension of ? to F as a
polynomial LDE? Fd ? F which satisfies - LDE? agrees with ? on Hd (extension).
- The degree-bound of LDE? is H in each variable
(low degree).
22Low Degree Extension (LDE)
- Goal To be able to find the value of an LDE in
any point (set of points) of Fd.
LDE
x
LDE(x)
23Low Degree Extension (LDE)
Straightforward approach Represent the LDE by
its coefficients.
Alas, this will require access to Hd variables,
logF bits each, each time!
the coefficients of the dimension-d,
degree-bound- H LDE
x
LDE(x)
24Low Degree Extension (LDE)
Second approach Represent the LDE by its values
in the points of Fd.
Now we only need access to one variable (logF
bits) each time.
But now we encounter a new problem we cannot be
sure the values we are given are consistent, i.e.
correspond to a single dimension-d,
degree-bound-H polynomial.
the value of the LDE in every point in Fd
x
LDE(x)
25Consistent Readers
- In the upcoming lectures well see how to build
readers which - access only a small number of the variables each
time. - detect inconsistency with high probability.