Decoding Reed-Muller codes over product sets

Similar documents
Great Theoretical Ideas in Computer Science

Lecture 19 : Reed-Muller, Concatenation Codes & Decoding problem

Lecture 03: Polynomial Based Codes

Lecture 12: November 6, 2017

Lecture Introduction. 2 Formal Definition. CS CTT Current Topics in Theoretical CS Oct 30, 2012

Error Correction. Satellite. GPS device. 3 packet message. Send 5. 3 D 2 B 1 A 1 E. Corrupts 1 packets. 3 D 2 B 1 E 1 A

Bounding the number of affine roots

MATH3302 Coding Theory Problem Set The following ISBN was received with a smudge. What is the missing digit? x9139 9

Hardness Amplification

Notes 10: List Decoding Reed-Solomon Codes and Concatenated codes

Lecture 4: Codes based on Concatenation

Permanent is hard to compute even on a good day

Berlekamp-Massey decoding of RS code

: Error Correcting Codes. October 2017 Lecture 1

List Decoding of Reed Solomon Codes

CSCI-B609: A Theorist s Toolkit, Fall 2016 Oct 4. Theorem 1. A non-zero, univariate polynomial with degree d has at most d roots.

The number of message symbols encoded into a

List decoding of binary Goppa codes and key reduction for McEliece s cryptosystem

Lecture 9: List decoding Reed-Solomon and Folded Reed-Solomon codes

Chapter 6 Reed-Solomon Codes. 6.1 Finite Field Algebra 6.2 Reed-Solomon Codes 6.3 Syndrome Based Decoding 6.4 Curve-Fitting Based Decoding

Computing Error Distance of Reed-Solomon Codes

CS151 Complexity Theory. Lecture 9 May 1, 2017

Notes for the Hong Kong Lectures on Algorithmic Coding Theory. Luca Trevisan. January 7, 2007

Error Correcting Codes Questions Pool

Coding Theory. Ruud Pellikaan MasterMath 2MMC30. Lecture 11.1 May

3x + 1 (mod 5) x + 2 (mod 5)

CS 70 Discrete Mathematics and Probability Theory Summer 2016 Dinh, Psomas, and Ye Discussion 8A Sol

Math 512 Syllabus Spring 2017, LIU Post

Discrete Mathematics and Probability Theory Spring 2016 Rao and Walrand Discussion 6A Solution

for some error exponent E( R) as a function R,

An Introduction to (Network) Coding Theory

Lecture 3: Error Correcting Codes

ERROR CORRECTING CODES

15-251: Great Theoretical Ideas In Computer Science Recitation 9 : Randomized Algorithms and Communication Complexity Solutions

Lecture 4: Proof of Shannon s theorem and an explicit code

An Introduction to (Network) Coding Theory

The BCH Bound. Background. Parity Check Matrix for BCH Code. Minimum Distance of Cyclic Codes

3. Coding theory 3.1. Basic concepts

Locally Decodable Codes

Local correctability of expander codes

Reed-Solomon codes. Chapter Linear codes over finite fields

Reed Muller Error Correcting Codes

Discrete Mathematics for CS Spring 2007 Luca Trevisan Lecture 11. Error Correcting Codes Erasure Errors

Error Correcting Codes: Combinatorics, Algorithms and Applications Spring Homework Due Monday March 23, 2009 in class

Lecture 28: Generalized Minimum Distance Decoding

Shannon s noisy-channel theorem

6.895 PCP and Hardness of Approximation MIT, Fall Lecture 3: Coding Theory

List Decoding of Binary Goppa Codes up to the Binary Johnson Bound

Locally Decodable Codes

1 Operations on Polynomials

Lecture 12: Reed-Solomon Codes

Lecture 8: Channel and source-channel coding theorems; BEC & linear codes. 1 Intuitive justification for upper bound on channel capacity

Computing minimal interpolation bases

EE512: Error Control Coding

Notes 10: Public-key cryptography

Reed-Solomon Error-correcting Codes

Bridging Shannon and Hamming: List Error-Correction with Optimal Rate

Lecture 7 September 24

Decoding Algorithm and Architecture for BCH Codes under the Lee Metric

Linear-algebraic list decoding for variants of Reed-Solomon codes

An Interpolation Algorithm for List Decoding of Reed-Solomon Codes

MATH3302. Coding and Cryptography. Coding Theory

Faster Johnson-Lindenstrauss style reductions

The Golay codes. Mario de Boer and Ruud Pellikaan

Lecture 12. Block Diagram

Discrete Mathematics and Probability Theory Fall 2013 Vazirani Note 6

Algebraic Geometry Codes. Shelly Manber. Linear Codes. Algebraic Geometry Codes. Example: Hermitian. Shelly Manber. Codes. Decoding.

Error Correction Review

Algebraic Codes for Error Control

Questions Pool. Amnon Ta-Shma and Dean Doron. January 2, Make sure you know how to solve. Do not submit.

Graph-based codes for flash memory

Physical Layer and Coding

Reed-Solomon code. P(n + 2k)

Notes 7: Justesen codes, Reed-Solomon and concatenated codes decoding. 1 Review - Concatenated codes and Zyablov s tradeoff

MATH32031: Coding Theory Part 15: Summary

Error-Correcting Codes


A Combinatorial Bound on the List Size

Section 4.3. Polynomial Division; The Remainder Theorem and the Factor Theorem

Lecture Note 3: Interpolation and Polynomial Approximation. Xiaoqun Zhang Shanghai Jiao Tong University

Today. Wrapup of Polynomials...and modular arithmetic. Coutability and Uncountability.

Joint Iterative Decoding of LDPC Codes and Channels with Memory

Notes 3: Stochastic channels and noisy coding theorem bound. 1 Model of information communication and noisy channel

Design and Implementation of Reed-Solomon Decoder using Decomposed Inversion less Berlekamp-Massey Algorithm by

Shannon s Noisy-Channel Coding Theorem

Correcting Localized Deletions Using Guess & Check Codes

High-rate codes with sublinear-time decoding

MATH 431 PART 2: POLYNOMIAL RINGS AND FACTORIZATION

Lecture Introduction. 2 Linear codes. CS CTT Current Topics in Theoretical CS Oct 4, 2012

Related-Key Statistical Cryptanalysis

5.0 BCH and Reed-Solomon Codes 5.1 Introduction

Guess & Check Codes for Deletions, Insertions, and Synchronization

Polynomial interpolation over finite fields and applications to list decoding of Reed-Solomon codes

Polynomial Codes over Certain Finite Fields

1 Reductions from Maximum Matchings to Perfect Matchings

Error-Correcting Codes:

COMPSCI 650 Applied Information Theory Apr 5, Lecture 18. Instructor: Arya Mazumdar Scribe: Hamed Zamani, Hadi Zolfaghari, Fatemeh Rezaei

MT361/461/5461 Error Correcting Codes: Preliminary Sheet

New algebraic decoding method for the (41, 21,9) quadratic residue code

Transcription:

Rutgers University May 30, 2016

Overview Error-correcting codes 1 Error-correcting codes Motivation 2 Reed-Solomon codes Reed-Muller codes 3

Error-correcting codes Motivation Goal: Send a message Don t shoot the boy. through a noisy channel. noise Problem: Don t shoot the boy. Don t shoot the box. Easy fix: boy encode bbboooyyy noise bbboooyxy decode boy. Problem 2: boy encode bbboooyyy noise bbboooxxy decode box. This repetition code corrects up to 1 error. Can correct more errors by repeating more times. But takes up a lot of space.

Distance Error-correcting codes Motivation Question: What gave the repetition code its error-correcting powers? Codewords are far apart. Takes many errors to confuse one codeword with another. Definition The minimum distance D is the closest distance between two distinct codewords. Can correct up to D/2 errors. Decoding: Given a received word r such that there is a codeword c with (r, c) < D/2, find c.

Reed-Solomon codes Reed-Muller codes Reed-Solomon code View characters as coefficients of a low-degree polynomial. Evaluate this polynomial at many locations. Definition (Reed-Solomon code) Let S F q, S = n. Then the Reed-Solomon code C of polynomials of degree at most d is given by: C = {(p(x)) x S p F q [X ], deg(p) d}. view as baa 2X 2 + X + 1 encode (1, 4, 11, 22, 37, 56, 79, 106, 137). view as aaa X 2 + X + 1 encode (1, 3, 7, 13, 21, 31, 43, 57, 73). Distinct polynomials of degree d agree in at most d points. Distance of this code is n d.

Decoding Reed-Solomon codes Reed-Solomon codes Reed-Muller codes Reed-Solomon codes are central to coding theory and practice. Many applications in coding, complexity theory. Very extensively studied. For Reed-Solomon codes, the decoding problem becomes the following basic noisy polynomial interpolation problem: Given: Received word r : S F q such that there exists some polynomial f (X ) of degree at most d with (r, f ) < n d 2. Find: f (X ). Efficient algorithms known since the 1960 s (Solomon, Berlekamp, Massey, Berlekamp-Welsh). Even near-linear time algorithm exists.

Multivariate polynomial codes Reed-Solomon codes Reed-Muller codes Definition (Reed-Muller code) Let S F q, S = n. Then the Reed-Muller code C of m-variate polynomials of degree at most d is given by: C = {(p(x 1,..., x m )) (x1,...,x m) S m p F q[x 1,..., X m ], deg(p) d}. Lemma (Schwartz-Zippel Lemma) Let p(x 1,..., X m ) F[X 1,..., X m ] be a polynomial of total degree at most d. Let S F have size S = n. Then Pr x S m[p(x) = 0] d n. Distance of Reed-Muller code is n m ( 1 d n ).

Decoding bivariate Reed-Muller codes Reed-Muller codes are also extensively studied. Important in many coding, complexity theory applications. Decoding problem is also a nice algebraic problem. Given: Received word r : S S F q such that there exists some polynomial f (X, Y ) of degree at most d with ( ) (r, f ) < n2 2 1 d n = n n d 2. Find: f (X, Y ). However, no known efficient algorithm in general. Only known for d << n and algebraically special evaluation sets S (e.g. S = F q ). We give an efficient algorithm for this problem.

Decoding bivariate Reed-Muller codes Given: Received word r : S S F q such that there exists some polynomial f (X, Y ) of degree at most d with ( ) (r, f ) < n2 2 1 d n = n n d 2. Find: f (X, Y ). Strategy: Write f (X, Y ) = Find P 0 (X ) first. d P i (X )Y d i, deg(p i (X )) i. i=0 r(x, Y ) P 0 (X )Y d still close to f (X, Y ) P 0 (X )Y d. The polynomial f (X, Y ) P 0 (X )Y d is simpler (has smaller Y -degree). Will help find the more complex linear coefficient P 1 (X ).

Finding the coefficient of Y d x S r(x, Y ) decode g x (Y ) guess P 0 (x). Try: For each x S, decode r(x, Y ) to polynomial of degree d within distance (n d)/2 (hopefully f (x, Y )). Extract coefficient of Y d to get a guess for P 0 (x). Decode guesses for P 0 (x), x S to polynomial of degree 0 within distance n/2. Problem: Can distribute errors to force many wrong decodings.

Finding the coefficient of Y d x S r(x, Y ) decode g x (Y ) guess P 0 (x). Problem: Can distribute errors to force many wrong decodings. Fix: Also pass along uncertainty in our guess P 0 (x). The closer r(x, Y ) is to g x (Y ), the more certain we are in our guess. (r(x,y ),gx (Y )) (n d)/2. u x = Use a Reed-Solomon decoder that handles uncertainties (Forney - O(n 2 polylog n) time).

Finding the coefficient of Y d i Assume: We have successfully found the higher order coefficients. Consider the received word: i 1 r i (X, Y ) = r(x, Y ) P j (X )Y d j. j=0 This is close to the polynomial f i (X, Y ) = d P j (X )Y d j. f i has Y -degree d i. Reed-Solomon decoder for degree d i polynomials r i (x, Y ) can handle more errors. Leads to more accurate guesses for P i (x), x S. Necessary, as degree of P i (X ) is i. (Decoder to find P i (X ) handles fewer errors.) j=i

Efficiency of Reed-Muller decoder Question: What is the runtime of our Reed-Muller decoder? For bivariate codes, runtime is O(n 3 polylog n). For m-variate codes, runtime is O(n m+2 polylog n). Gap in runtime because decoding m-variate codes requires decoding (m 1)-variate codes with uncertainties. Question: Can our algorithm be improved to near-linear time? I.e. O(n m polylog n).

Improving the Reed-Muller decoder x S r i (x, Y ) decode g i,x (Y ) guess P i (x), u i,x. Decoder has d + 1 iterations, one to find each P i (X ). Each iteration does n Reed-Solomon decodings and one Reed-Solomon decoding with uncertainties. Improvements: Reduce the number of Reed-Solomon decodings. Improve Forney s algorithm for Reed-Solomon decoding with uncertainties.

Reduce the number of Reed-Solomon decodings Each row decoded many times to successively larger radii. List decode to Johnson radius. List contains relevant polynomials for Θ(n) iterations provided d = (1 ɛ)n, ɛ > 0.

Improve Reed-Solomon decoding with uncertainties Forney s algorithm: Erase guess for P i (x) with probability u i,x. Run Reed-Solomon decoder that handles errors (E) and erasures (F). Outputs correct polynomial if E + F /2 at most half minimum distance D/2. Improvement: Using Chebyshev s inequality = Decodes correctly with high probability provided the received word is slightly closer than D/2 to codeword.

Summary Error-correcting codes Reed-Muller codes around since 1950 s, but efficient decoders known only for special cases. First polynomial time algorithm to decode Reed-Muller codes over arbitrary product sets. With minor assumptions, can be improved to near-linear time.

Thanks!