Download presentation
Presentation is loading. Please wait.
Published byCali Binkley Modified over 9 years ago
1
1
2
2 Overview Review of some basic math Review of some basic math Error correcting codes Error correcting codes Low degree polynomials Low degree polynomials H.W
3
3 Review - Fields Def (field): A set F with two binary operations + (addition) and · (multiplication) is called a field if 6 a,b F, a·b F 7 a,b,c F, (a·b)·c=a·(b·c) 8 a,b F, a·b=b·a 9 1 F, a F, a·1=a 10 a 0 F, a -1 F, a·a -1 =1 1 a,b F, a+b F 2 a,b,c F, (a+b)+c=a+(b+c) 3 a,b F, a+b=b+a 4 0 F, a F, a+0=a 5 a F, -a F, a+(-a)=0 11 a,b,c F, a·(b+c)=a·b+a·c +,·,0, 1, -a and a -1 are only notations!
4
4 Finite 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: Z p denotes {0,1,...,p-1}. We define + and · as the addition and multiplication modulo p respectively. One can prove that (Z p,+,·) is a field iff p is prime. Throughout the presentations we’ll usually refer to Z p when we’ll mention finite fields.
5
5 Strings & Functions (1) Let = 0 2... n-1, where i . We can describe the string as a function : {0…n-1} , such that i (i) = i. Let = 0 2... n-1, where i . We can describe the string as a function : {0…n-1} , such that i (i) = i. Let f be a function f : D R. Then f can be described as a string in R |D|, spelling f’s value on each point of D. Let f be a function f : D R. Then f can be described as a string in R |D|, spelling f’s value on each point of D.
6
6 Strings & Functions - Example For example, let f be a function f : Z 5 Z 5, and let = Z 5.
7
7 1001110 Introduction to Error Correcting Codes Motivation: communication line original message 1001110 received message 1101110 1 “noise” We’d like to still be able to reconstruct the original message
8
8 Error Correcting Codes Def (encoding): An encoding E is a function E : n m, where m >> 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. 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 x=y (2) x,y m (x,y)= (y,x) (3) x,y,z m (x,z) (x,y)+ (y,z)
9
9 Example – a simple error correcting code Consider the following code: for every n, let E( ,k)= ^k (the same word repeated k times, hence m=kn). ,4) E( ,4)
10
10 Example – 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:
11
11 Example – a simple error correcting code E 1- =1/n D R
12
12 Reed-Solomon codes We shall now use polynomials over finite fields to build a better generic code (larger distance between words) Note: A polynomial whose degree-bound is r is of degree at most r-1 ! Def (univariate polynomial): a polynomial in x over a field F is a function P:F F, which can be written as for some series of coefficients a 0,...,a r-1 F. The natural number r is called the degree-bound of the polynomial.
13
13 Reed-Solomon codes Thm : Given x 0,y 0,...,x r-1,y r-1 F there is a single univariate polynomial P and degree-bound r, which satisfies 0 k r-1 P(x k )=y k Existence: We shall build such a polynomial using Lagrange’s formula: 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!
14
14 Reed-Solomon codes Let’s check the value of this polynomial in x = x t for some 0 t r-1: Since the degree-bound of this polynomial is r, we in fact proved the correctness of the formula a-b denotes a+(-b) a/b denoted a(b -1 ) 0 ytyt
15
15 Reed-Solomon codes Def (the Reed-Solomon code): Set F to be the finite field Z p 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 satisfies: f is the unique polynomial of degree-bound n such that f (i) = i for all 0 i n-1.
16
16 Reed-Solomon codes E( ) can be interpolated from any n points. E( ) can be interpolated from any n points. Hence, for any , E( ) and E( ) may agree on at most n – 1 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: Therefore, E is an (n – 1) / m – code, that is a code with distance of:
17
17 Reed-Solomon codes p = m = 5, n = 2 = 1, 2 = 3, 1 f (x) = x + 1 f (x) = 3x + 3 E( ) = 1, 2, 3, 4, 0 E( ) = 3, 1, 4, 2, 0
18
18 Strings & Functions (2) We can describe any string as a function f:H d H (H is a finite field, d is a positive integer). We can describe any string as a function f:H d H (H is a finite field, d is a positive integer). Given a n we’ll achieve that by choosing H=Z q, where q is the smallest prime greater than | |, and d= log q n . Given a n we’ll achieve that by choosing H=Z q, where q is the smallest prime greater than | |, and d= log q n .
19
19 Reed-Muller Codes Def (multivariate polynomial): Let F be a field and let d be some positive integer number. A function p:F d 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{ i 0 +…+i d-1 : a i 0 … i d-1 0 }.
20
20 Error correcting Codes Home Assignment We’ve seen that Reed-Solomon codes using polynomials with degree-bound r have distance of: We’ve seen that Reed-Solomon codes using polynomials with degree-bound r have distance of: Next 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)? 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)?
21
21 Low Degree Extension (LDE) Def: (low degree extension): Let : H d 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 : F d F which satisfies: LDE agrees with on H d (extension). The degree-bound of LDE is |H| in each variable (low degree).
22
22 Low Degree Extension (LDE) Goal: To be able to find the value of an LDE in any point (set of points) of F d. LDE x LDE(x)
23
23 Low Degree Extension (LDE) x LDE(x) Straightforward approach: Represent the LDE by its coefficients. Alas, this will require access to |H| d variables, log|F| bits each, each time! the coefficients of the dimension- d, degree-bound- |H| LDE
24
24 Low Degree Extension (LDE) x LDE(x) the value of the LDE in every point in F d Second approach: Represent the LDE by its values in the points of F d. Now we only need access to one variable (log|F| 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.
25
25 Consistent Readers In the upcoming lectures we’ll see how to build readers which: access only a small number of the variables each time. access only a small number of the variables each time. detect inconsistency with high probability. detect inconsistency with high probability.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.