InfoCoBuild

An Introduction to Coding Theory

An Introduction to Coding Theory. Instructor: Dr. Adrish Banerjee, Department of Electrical Engineering, IIT Kanpur. Error control coding is an indispensable part of any digital communication system. In this introductory course, we will discuss theory of linear block codes and convolutional 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: Hamming codes, Reed Muller codes, low density parity check codes, and turbo codes. We will also study how from simple codes by concatenation we can build more powerful error correcting codes. (from nptel.ac.in)

Lecture 13 - Bounds on the Size of a Code

In this lecture we will answer questions such as what is the minimum number of parity bits required for a t-error correcting codes of length n. In this regard we will describe Hamming bound, Singleton bound, Plotkin bound and Gilbert Varshamov bound that gives bound linking code dimension k, codeword length n to the minimum distance d of a code. We will also describe what is meant by perfect codes and maximum distance separable codes.


Go to the Course Home or watch other lectures:

Lecture 01 - Introduction to Error Control Coding, Part I
Lecture 02 - Introduction to Error Control Coding, Part II
Lecture 03 - Introduction to Error Control Coding, Part III
Lecture 04 - Introduction to Linear Block Codes, Generator Matrix and Parity Check Matrix
Lecture 05 - Syndrome, Error Correction and Error Detection
Lecture 06 - Problem Solving Session I
Lecture 07 - Coding of Linear Block Codes
Lecture 08 - Distance Properties of Linear Block Codes I
Lecture 09 - Distance Properties of Linear Block Codes II
Lecture 10 - Problem Solving Session II
Lecture 11 - Some Simple Linear Block Codes I
Lecture 12 - Some Simple Linear Block Codes II: Reed Muller Codes
Lecture 13 - Bounds on the Size of a Code
Lecture 14 - Problem Solving Session III
Lecture 15 - Introduction to Convolutional Codes I: Encoding
Lecture 16 - Introduction to Convolutional Codes II: State Diagram, Trellis Diagram
Lecture 17 - Convolutional Codes: Classification, Realization
Lecture 18 - Convolutional Codes: Distance Properties
Lecture 19 - Decoding of Convolutional Codes I: Viterbi Algorithm
Lecture 20 - Decoding of Convolutional Codes II: BCJR Algorithm
Lecture 21 - Problem Solving Session IV
Lecture 22 - Problem Solving Session V
Lecture 23 - Performance Bounds for Convolutional Codes
Lecture 24 - Low Density Parity Check Codes
Lecture 25 - Decoding of Low Density Parity Check Codes I
Lecture 26 - Decoding of Low Density Parity Check Codes II: Belief Propagation Algorithm
Lecture 27 - Turbo Codes
Lecture 28 - Turbo Decoding
Lecture 29 - Problem Solving Session VI
Lecture 30 - Distance Properties of Turbo Codes
Lecture 31 - Convergence of Turbo Codes
Lecture 32 - Automatic Repeat reQuest (ARQ) Schemes
Lecture 33 - Applications of Linear Codes