Codes by lonyoo

VIEWS: 26 PAGES: 21

									Probabilistic verification
     Mario Szegedy, Rutgers
www/cs.rutgers.edu/~szegedy/07540

            Lecture 5
            C= (n,k,d)q codes
•   n = Block length
•   k = Information length
•   d = Distance
•   k/n = Information rate
•   d/n = Distance rate
•   q = Alphabet size
                    Linear Codes
• C = {x | x Є L}      (L is a linear subspace of Fqn)

• Δ(x,y) = Δ(x-z,y-z)
• min Δ(0,x) = min Δ(x,y)         x,y Є L

• k = dimension of the message space = dim L
• n = dimension of the whole space (in which the code words lie)

• Generator matrix: {xG | x   Є  Fqk}
• “Parity” check matrix: {y       n
                              Є Fq | yH = 0}
            Reed-Solomon codes
• The Reed–Solomon code is an error-correcting code that works by
  oversampling a polynomial constructed from the data.




• C is a [n, k, n-k+1] code; in other words, it is a linear code of length n
  (over F) with dimension k and minimum distance n-k+1.
                Welch-Berlekamp decoding
                 algorithm for RS codes
•        Length = n (n ≤ |F|)
•        Degree = k
•        # of errors =e                             We assume: k+2e < n.
•        Received code word = y
•        E = non-zero polynomial that is zero at the bad “bits” of y

y E = B.           deg E ≤ e       deg B ≤ e + k

NOTATION:

I.       v = w (exc e) means “word v is the same as word w except at e places)
II.      v = w (exc H) means “word v is the same as word w except on set H)

We have         P = y (exc Err), where P is the encoded word, and |Err| ≤ e.

We can find E and B such that y E = B by solving a system of linear equations:

      E0 + E1 fj + E2 fj2 + … + Ee fje = yj B0 + yj B1 fj + yj B2 fj2 + … + yj Be fje+k   (1 ≤ j ≤ n)
         Welch-Berlekamp decoding
          algorithm for RS codes
Since P = y (exc Err), it follows that

                      PE = yE = B (exc Err),

But deg PE = k + e, and deg B = k + e, and since   k+e < n–e, we have

                      PE = B.

Now we can easily recover P by simply dividing polynomial B by E.
 Generalization of the WB algorithm
• C is a general code (replacing RS)
α.   A * C is a subset of B
β.   dim A > e
γ.   d(B) > e
δ.   d(A) + d(C) ≥ n

solve     y a = b (we need β. for such non-zero a to exist)
let c be the code word we are looking for

ca = ya = b (exc Err) α.,γ. ca = b, since ca Є B. →
                       →
                       →      b/a = c (exc zeros(a)) →
b/a = c (exc n – d(A))     δ.
                           →      we can recover c
       Multi-variate polynomials

Two variate polynomial of multi-degree (2,2):




General n variate polynomial:
P(x1,x2,…,xn) = P(x) = Σα aα xα
              Multi-degree
deg y




                 x3y5



          x2y3




                        deg x


   Multi-degree (3,5)
                Multi-degree
     deg y




                                   deg x


General multi-degree pattern. Multi-degree polynomials
of a fix pattern form a vector space over F.
                 Multi-degree
      deg y




                                              P→P+P




                                      deg x


Under multiplication degree patterns add like vectors
                  Total degree d
          deg y



leading
terms
                                      total degree 5




                                  deg x



for each coeff vector α in P(x) we have     Σi α i ≤ d
LEMMA: Let S be a subset of a field F, |S|=d+1 ≥ 1.
  Then any function from Sn to F has a unique
  extension to a multi-degree (d,…,d) polynomial.


PROOF:
1. there exists a low degree extension:
   By linearity it is enough to show that any function that takes a single
   non-zero value has an extension. Assume the non-zero value is
   taken over (a1,a2,…,an). Then over S it can be expressed as:

                       const ∙ ΠiΠs (xi - s)



                        s runs through S, but leaves out ai
LEMMA: Let S be a subset of a field F, |S|=d+1 ≥ 1.
  Then any function from Sn to F has a unique
  extension to a multi-degree (d,…,d) polynomial.

2. The low degree extension is unique:
  Because of linearity it is enough to show that the identically zero
  function on Sn has a unique extension (which is the 0 polynomial).
  In 1 dimension this follows from the fact that a degree d polynomial
  cannot have more than d roots. Assume that we have proven the
  statement for d-1. →

  If we fix xi to any constant s in S, we get an identically zero
  polynomial.          →

  Now fix all the other variables (anyhow), except xi, we get a
  polynomial taking zeros on all points of S. → All such uni-variate
  polynomial has to take zero everywhere. → P(x)=0.
                      (d+1)n-1




                                 xi




d+1                    0


All other variables
                Zippel’s lemma

THEOREM (Schwartz-Zippel). Let

be a polynomial of degree d over a field, F. Let S be a finite subset
of F and let                 be selected randomly from S. Then
PROOF: Induction on n. For n = 1, P can have at most d roots. This gives us the
base case. Now, assume that the theorem holds for all polynomials in n − 1
variables. We can then consider P to be a polynomial in x1 by writing it as




Since P is not identically 0, there is some i such that Pi is not identically 0.
Take the largest such i. Then                     .
PROOF: Induction on n. For n = 1, P can have at most d roots. This gives us the
base case. Now, assume that the theorem holds for all polynomials in n − 1
variables. We can then consider P to be a polynomial in x1 by writing it as




Since P is not identically 0, there is some i such that Pi is not identically 0.
Take the largest such i. Then                     . Now we randomly pick
.                 from S. By the induction hypothesis,
PROOF: Induction on n. For n = 1, P can have at most d roots. This gives us the
base case. Now, assume that the theorem holds for all polynomials in n − 1
variables. We can then consider P to be a polynomial in x1 by writing it as




Since P is not identically 0, there is some i such that Pi is not identically 0.
Take the largest such i. Then                     . Now we randomly pick
.                 from S. By the induction hypothesis,




If                             then                               is of degree i.
Event A:
Event B:
 Maximal number of zeros of a
multi-degree (d,…,d) polynomial

          qn – (q – d)n


          Homework

								
To top