Learning Outcomes:
Knowledge of coding theoretic bounds & an ability to apply bounds to code existence questions;
An understanding of codes as vector spaces, the dual code, generator and parity check matrices;
Knowledge of the principles of error correction, working knowledge of syndrome decoding and its complexity;
An understanding of code optimality and extremality;
Understanding of code equivalence;
Knowledge of fundmental operations on codes such as puncturing, shortening, and extending;
Knowledge of defining properties of classical algebraic codes, such as cyclic, Reed-Solomon and BCH codes;
Structure of cyclic codes as ideals;