Department of Electrical and Computer Engineering

ECE 556

CODING THEORY



ECE 556, TTh 12:30-13:50pm, 3020 ECEB. ECE 556 is also cross-listed as CS 577 and MATH 579.

Credit : 4 hours.

Prerequisites : Math 417 Introduction to Abstract Algebra or equivalent, or consent of instructor

Catalog description: We will start by covering the mathematical concepts needed to understand algebraic coding theory and the concepts of cyclic codes and in particular, Reed-Solomon codes.

These will heavily focus on finite fields, combinatorics and number theory.

In the second part of the course we will turn our attention to codes on graphs (LDPC codes), polar codes, codes for distributed storage, coded computing and learning and coding for synthetic biology (i.e., coding for DNA- and polymer-based data storage). Our treatment of these subjects will rely on some basic and some not-so-basic notions from combinatorics and graph theory, optimization and machine learning and rudimentary molecular biology.

Due to time limitations we will not discuss convolutional codes.

LECTURE NOTES (Scribed)

Syllabus

Hamming codes, linear codes, dual codes

Scribed Lecture 1

Bounds on the size of codes

MacWilliams identities

Extended coverage of MacWilliams identities

HW #1

Finite fields - basic treatment

Finite fields - more advanced treatment

Finite fields - more advanced treatment with examples

HW #2

Moebius inversion formula

Double error-correcting BCH codes

Cyclic codes

Decoding of RS codes: The PGZ algorithm

Decoding of RS codes: Euclid's algorithm (McEliece notes)

List decoding of RS codes: Sudan's algorithm

Reed-Muller codes

HW #3

Polar Codes I

Polar Codes (Prof. Arikan's slides)

Single-deletion-correcting codes (article by Prof. Sloan)

DNA-Based Data Storage Basics

String correlation and avoiding forbidden substrings

Image processing in DNA

DNA Storage Channels

Lecture Notes: Lattice Theory

Examples of Lattices

Lattice Catalogue

Maryna Viazovska's paper

Coded String Reconstruction

Shannon Channel: Joao Ribeiro's talk on Coded Trace Reconstruction

HW #4

Project Instructions

Prof. Atri Rudra's Tutorial on Group Testing

Prof. Arya Mazumdar's Lecture Notes on Group Testing

Tutorial on LDPC codes by Prof. Siegel

Recommended Text I: The Theory of Error-Correcting Codes (Mac Williams and Sloane, a classic for algebraic coding theory).

Recommended Text II: Algebraic Codes for Data Transmission (Blahut, an engineering-oriented approach to coding theory).

Recommended Text III: Introduction to Coding Theory (Roth, contains a number of topics not covered in the above cited texts).

Course Directors : Professor Olgica Milenkovic (milenkov@illinois.edu)



Further information

Course Syllabus

Fall 2009 Home Page

The ECE 556 FAQ

Home Pages for Previous Semesters

ECE Department Home Page

Graduate study in
Coding and Cryptography