Error control coding is an indispensible part of any digital communication system. In this introductory course, we will discuss theory of linear block codes, their encoding and decoding techniques as well as their applications in real world scenarios. Starting from simple repetition codes, we will discuss among other codes capacity approaching low density parity check codes. We will also discuss bounds on number of codewords given codeword length and minimum distance of code.
Week 1: Lecture 1: Introduction to error control coding Lecture 2: Introduction to linear block codes, generator matrix and parity check matrix Lecture 3: Properties of linear block codes: syndrome, error detection, error correction
Week 2: Lecture 4: Decoding of linear block codes Lecture 5: Distance properties of linear block codes
Week 3: Lecture 6: Some simple linear block codes: Repetition codes, Single parity check codes, Hamming codes, Reed Muller codes Lecture 7: Bounds on size of codes: Hamming bound, Singleton bound, Plotkin bound, Gilbert-Varshamov bound
Week 4: Lecture 8: Low density parity check codes Lecture 9: Decoding of low density parity check codes: Belief propagation algorithm Lecture 10: Applications of linear block codes