360 likes | 377 Views
Explore unique decoding and list decoding algorithms for Reed-Solomon codes, with distinct elements and polynomial encoding. Learn about efficient decoding techniques and interpolation methods. Discover the Parvaresh-Vardy codes and improvements over traditional methods.
E N D
Parvaresh-Vardy Codes Derandomization Seminar, 2016 Guy Biron
Reed-Solomon Codes • distinct elements of • Message • Polynomial • Encoding of :
Unique Decoding RS – Welch-Berlekamp • Input: pairs with distinct • Find nonzero polynomial and polynomial such that: • Output: or • Corrects up to fraction of errors in polynomial time
List Decoding RS – Definition • Input: received word , error parameter • Output: all polynomials of degree at most such that for at least values of • Should work in polynomial time
List Decoding RS – General Structure • Interpolation step: find non-zero s.t. • Need to ensure number of coefficients is greater than number of constraints • Different implementation in each algorithm, should run in polynomial time • Root finding step: if is a factor of , output (assuming and ) • Need to ensure is a factor of for every required • can be factored in polynomial time (fact)
List Decoding RS – Alg. 1 • Input: , pairs • Find nonzero such that: • For every factor of : • If and : • Output • Corrects up to fraction of errors in polynomial time
List Decoding RS – Alg. 2 (Sudan) • Input: , pairs • Find nonzero such that: • For every factor of : • If and : • Output • Corrects up to fraction of errors in polynomial time
List Decoding RS – Alg. 3 (Guruswami-Sudan) • Input: , pairs • Find nonzero such that: • with multiplicity • For every factor of : • If and : • Output • Corrects up to fraction of errors in polynomial time
Spoiler • Going to have codes and list decoding algorithm that corrects up to fraction of errors in polynomial time ( is constant) • Better than for rates • Key ideas • Instead of bivariate polynomial interpolation, do multivariate interpolation (we will detail the trivariate case ) • Use other (new) codes, not Reed-Solomon
Hasse Derivative • Let be a polynomial over • For , the Hasse derivative of is: • For , the Hasse derivative of at , , is the coefficient of in
Multiplicity • Let and • is said to pass throughwith multiplicity, or to have a zero of multiplicity at this point, if:
Weighted Degree • The weighted degree of is defined by: • The weighted degree of is defined by: • We will define: • The weighted degree of a polynomial is the maximum weighted degree of its monomials
Interpolation • Let be distinct elements of • An interpolation set for is: • The interpolation polynomial with respect to is the least weighted degree nonzero polynomial that has a zero of multiplicity at each of the points of • The interpolation polynomial can be computed in polynomial time • Gaussian elimination, iterative algorithm
Lemma 3 • Let be an interpolation set, be the interpolation polynomial. Then: • Proof: • Number of constraints for passing through points with multiplicity : • Let be the smallest weighted degree such that there surely exists a of weighted degree . Number of unknowns (coefficients): • Demanding , we get the right hand side above
Lemma 4 • Let be an interpolation set, be the interpolation polynomial. Given a pair of polynomials over , define: if and: then
Proof of Lemma 4 • We want to show that • Thus • For each such that , has a zero of multiplicity at . Thus has at least roots. • We have an upper bound for (and thus for ) from lemma 3 • Demanding gives the result
Lemma 5 • satisfies if and only if there exist such that: • Proof: • : obvious • : fix a monomial order s.t. and • can be expressed as: • Polynomial division algorithm guarantees none of the monomials in is divisible by the leading term of or • and , so • , so
Code Parameters • distinct elements of • Multiplicity parameter • Basis for over • Polynomial of degree , irreducible over • Positive integer such that
Encoding Algorithm • Given message , define • Compute over • The codeword corresponding to message is: • Note that the rate of the code is
Encoding Time • and are polynomials of degree at most • Define field . Think of as elements of field • Use and to denote elements of corresponding to and • The computation of becomes in field • Result of Von Zur Gathen and Nöcker shows this is done in polynomial time • Thus encoding the message is done in polynomial time
Decoding Algorithm • Given , decompose each into , where . Set up the interpolation set and compute the interpolation polynomial • Compute • Compute • Find and output roots of
Decoding – Step 1 • . Decompose into , • Set up the interpolation set • Compute the interpolation polynomial
Lemma 6 • Suppose a codeword differs from in at most: positions, and let denote the polynomials that produce . Then • Proof: immediate from lemma 4 by getting a lower bound on • We now know that for “good” messages we get
Decoding – Step 2 • Compute • Write as an element of : • . Let • can be regarded as an element of field • Thus
Lemma 7 • is not the all-zero polynomial. • Proof: • Assume to the contrary that • So for all , meaning is a factor of for all • So is a factor of , and there exists: • is irreducible, so has multiplicity at the points • Furthermore, • Contradiction to being the least weighted degree
Lemma 8 • Suppose , and let denote the elements of corresponding to . Then . • Proof: • By lemma 5, can be written as: • Therefore can be written as: where are the remainders of upon division by • Then • We now know that for “good” messages we get
Decoding – Steps 3,4 • Compute , find and output its roots • Due to the encoding definition, we know that in field • So if , then • We now know that for “good” messages, is a root of • Shoup has shown a polynomial algorithm for finding roots of in polynomial time • So we can find “good” messages in polynomial time! • We just need to show that is not the all-zero polynomial
Lemma 9 • is not the all-zero polynomial • Proof: • Assume to the contrary that • Thus is a factor of • This cannot happen if • Since , we get that • From lemma 3 and our condition on , we get that • Contradiction
Theorem 10 • Given over , the decoding algorithm output in polynomial time the list of all codewords that differ from in at most: positions, where is the multiplicity parameter. The size of the list is at most , where: • Proof: bound on follows from lemma 6, bound on from bound on
Parvaresh-Vardy General Case • Code is a subset of • Parameter changes: • Basis for over • defined by: • Encoding: , for , codeword is for • Bounds: