This is an introductory course on coding theory with an emphasis on algebraic codes. I assume that you have a basic knowledge of linear algebra, and probability. I will be covering a selection of topics from Chapters 1-7, 11-12 and 17. Some homework assignments will require you to code in matlab. There will be two course projects. You are assumed to have familiarity with matlab or some other programming language. Course details are given below.

Textbook: Error Control Coding by Shu Lin and Daniel Costello Jr.

Course topics. Detailed outline.

• Introduction to coding
• Linear block codes
• Algebra for coding
• Cyclic codes
• BCH and Reed Solomon codes
• Performance of block codes
• Convolutional codes
• LDPC codes and other advanced topics (time permitting)

20% Homework, 20% Miniquizzes, 35% Projects, 25% Finals.

Lectures

15 Jan Introduction
17 Jan First look at error correcting codes
20 Jan Algebra (Groups)
21 Jan Algebra (Fields, vector spaces)
22 Jan Linear codes
27 Jan Decoding linear code
28 Jan Standard array decoder
29 Jan Performance of standard array decoder; First look at GF(4)
31 Jan Finite fields, basic properties
03 Feb Structure of finite fields
04 Feb Structure of finite fields
05 Feb Structure of finite fields
07 Feb Polynomials over finite fields and factorization
10 Feb Polynomials over finite fields, Miniquiz-1
11 Feb (Nonbinary) Linear codes and code constructions
12 Feb Product codes and bounds on codes
17 Feb Cyclic codes, basic properties
18 Feb Cyclic codes, Miniquiz-2
19 Feb Encoding and decoding cyclic codes
24 Feb Introduction to BCH Codes
25 Feb BCH Codes, Miniquiz-3
26 Feb Decoding BCH codes, Peterson-Gorenstein-Zierler method
28 Feb No class
03 Mar Decoding BCH codes, Berlekamp-Massey algorithm
04 Mar Decoding BCH codes, Berlekamp-Massey algorithm continued
07 Mar Performance of block codes
10 Mar Problem session
11 Mar Problem session, Miniquiz-4
12 Mar Introduction to convolutional codes
14 Mar Convolutional codes-various formulations
17 Mar No class
18 Mar Feedforward/feedback realizations of convolutional codes
19 Mar Strucutural properties of convolutional codes
21 Mar Structural properties of convolutional codes
24 Mar Decoding convolutional codes
25 Mar Viterbi's algorithm
26 Mar Performance analysis of convolutional codes
28 Mar Performance analysis of convolutional codes
01 Apr Construction of convolutional codes
04 Apr LDPC codes
07 Apr Decoding LDPC codes
08 Apr Decoding LDPC codes, sum product algorithm, variations