**Prerequisites**

- linear algebra (vector spaces, linear maps, kernel, matrices) -- for example, chapters I--IV of "Linear Algebra" by S. Lang, 3rd ed., Springer Undergraduate Texts in Mathematics;
- basic algebra (polynomials with coefficients in a field, basics of finite fields) -- for example, sections A.3--A.5 of https://www.win.tue.nl/~henkvt/images/CODING.pdf (in the Appendix);
- elementary combinatorics (double counting, the binomial coefficient, etc);
- elementary graph theory (the definitions).

**Aim of the course**

In the context of digital communication, error-correcting codes are mathematical objects that correct errors in noisy and lossy channels. They find several applications in, for example, satellite communications, digital audio systems, wireless communications, error correction chips, deep space exploration probes, flash memories, and networking.

This course offers an introduction to the mathematical theory of error correction (encoding and decoding information using mathematics). The main aims are:

- to become familiar with the mathematical methods used to protect digital information from noise, damage, and jamming attacks;
- to become familiar with the mathematical structure of error-correcting objects;
- to illustrate how error-correcting codes can be used to construct cryptosystems;
- to understand the connections between coding theory and other branches of mathematics (algebra, combinatorics, probability, graph theory)
- to become familiar with the mathematical modeling of network communications.

The course comes with dedicated lecture notes.

**Lecturer**

Alberto Ravagnani (TU/e)

https://a.ravagnani.win.tue.nl

- Docent: Anina Gruica
- Docent: Alberto Ravagnani