module specification

MA6053 - Error Correcting Codes (2024/25)

Module specification Module approved to run in 2024/25
Module title Error Correcting Codes
Module level Honours (06)
Credit rating for module 15
School School of Computing and Digital Media
Total study hours 150
105 hours Guided independent study
45 hours Scheduled learning & teaching activities
Assessment components
Type Weighting Qualifying mark Description
In-Course Test 40%   Series of mini tests
Unseen Examination 60%   Final Exam (2 hours)
Running in 2024/25

(Please note that module timeslots are subject to change)
Period Campus Day Time Module Leader
Autumn semester North Friday Afternoon

Module summary

The module is an introduction to modern ideas in error correcting codes. It provides the background to the essential techniques and algorithms in widespread use today, as well as the essentials of number theory and finite field theory underlying them.
Error correcting codes are an important part of the data communications theory and allow a message to be recovered even if errors have been introduced during transmission. The elegant mathematics of finite field theory is introduced to develop multiple error correcting codes with a wide range of communications applications.

Prior learning requirements

Students are expected to be familiar with concepts in matrices and linear algebra such as would be acquired by taking a level 4 module such as MA4010 – Calculus and Linear Algebra. Knowledge of algebraic structures such as groups is desirable but not essential to take the module. Eligible for Study Abroad students


Theory of fields: 
Rings, Integral Domains & Fields, examples and their axioms; construction of finite fields; polynomials over fields and the Euclidean Algorithm; calculation of inverses; factorisation and the construction of minimum polynomials.  LO1,LO3
Error correcting codes: Linear codes, Hamming and other perfect codes, check and generator matrices, encoding and decoding strategies using matrices and coset leader/syndrome tables. LO2
Multiple error correcting codes:
BCH codes and the construction of a check matrix; generator and check polynomials; error locator polynomial; Reed Solomon codes and the error evaluator polynomial. LO4

Balance of independent study and scheduled teaching activity

Students’ learning is directed via face-to-face learning activities centred on lectures and seminars. There is full provision of documents related to the module in electronic format that can be accessed by students all the time. The documents include lecture notes, slides, guidance to further reading and relevant mathematical packages, and exercises and tests.

Learning outcomes

On successful completion of this module, students should be able to:

LO1 Appreciate proofs of theorems in Field Theory  and their application to coding theory
LO2 Use appropriate error detecting and error correcting algorithms for a given code;
LO3 Construct and perform arithmetic, including finding inverses, in finite fields GF(p^n);
LO4 Use finite field arithmetic to construct efficient multiple error correcting codes including those applicable to a ‘burst error’ scenario.