Posted by: atri | April 1, 2009

## Lecture 29: Decoding Concatenated codes

In today’s lecture we saw a natural decoding algorithm for concatenated codes (MLD for the inner code and we assumed a polynomial time unique decoder for the outer code that can correct less than $\frac{D}{2}$ errors). We then argued that the resulting algorithm can correct less than $\frac{dD}{4}$ many errors. One thing I forgot to mention in the lecture today is that the algorithm works just as well even if the inner codes are different (as in Justesen’s construction).

We then moved to the BerlekampWelch unique decoding algorithm for Reed-Solomon codes. (Actually, we are following the GemmellSudan description.) We saw the two step algorithm: the first interpolation step “explains” the received word via a bivariate polynomial (of a very specific structure) and then in the second factorization step, it outputs the unique closest codeword. We then saw how the algorithm can be implemented in cubic time.

In Friday’s lecture, we will prove the correctness of the Berlekamp-Welch algorithm. We go back to the usual time and place on Friday.

The slides for today’s lecture have been uploaded (minus the last slide which was gobbled up by the smart board). The stuff covered today is also in the scribed notes for Lecture 26 from Fall 07 (the latter notes will be polished by this weekend).

A related survey you might find useful is this one that I wrote with Venkat Guruswami (it appears in the March edition of the Communucations of the ACM). The intuition that I presented today can be found in that survey along with a high level view of its generalizations to list decoding algorithms that we will see later in the course. The survey is meant to for a broad audience, so you should be able to follow it.