This course is unavailable through clearing

This course is now full for our 2022 entry, but have a look at our clearing vacancies to see if a similar course has space.

Search all clearing vacancies

BSc Computer Science and Mathematics / Course details

Year of entry: 2022

Course unit details:
Coding Theory

Course unit fact file
Unit code MATH32032
Credit rating 10
Unit level Level 3
Teaching period(s) Semester 2
Offered by Department of Mathematics
Available as a free choice unit? No


Coding theory plays a crucial role in the transmission of information. Due to the effect of noise and interference, the received message may differ somewhat from the original message which is transmitted. The main goal of Coding Theory is the study of techniques which permit the detection of errors and which, if necessary, provide methods to reconstruct the original message. The subject involves some elegant algebra and has become an important tool in banking and commerce.


Unit title Unit code Requirement type Description
Algebraic Structures 1 MATH20201 Pre-Requisite Compulsory


To introduce students to a subject of convincing practical relevance that relies heavily on results and techniques from Pure Mathematics.

Learning outcomes

On successful completion of this course unit students will be able to:

  • state and prove fundamental theorems about error-correcting codes given in the course,
  • calculate the parameters of given codes and their dual codes using standard matrix and polynomial operations,
  • encode and decode information by applying algorithms associated with well-known codes,
  • compare the error-detecting/correcting facilities of given codes for a given binary symmetric channel,
  • design simple linear or cyclic codes with required properties,
  • solve mathematical problems involving error-correcting codes by linking them to concepts from elementary number theory, combinatorics, linear algebra and elementary calculus.


  • Introduction to the Main Problem of Coding Theory. [1 lecture]
  • Hamming Distance. Code detection. Code correction. ISBN code. [2]
  • Length and weight of a code. Perfect codes. [3]
  • Linear codes. Generator matrices and standard forms. Encoding. Nearest neighbour decoding. [4]
  • Dual code. Parity check matrix. Syndrome decoding. Incomplete decoding. [4]
  • Hamming Codes and Decoding. [4]
  • Finite fields. Cyclic codes. [4]
  • Reed-Muller codes.

Assessment methods

Method Weight
Other 20%
Written exam 80%
  • Coursework: weighting 20%
  • End of semester examination: weighting 80%

Feedback methods

Feedback tutorials will provide an opportunity for students' work to be discussed and provide feedback on their understanding.  Coursework or in-class tests (where applicable) also provide an opportunity for students to receive feedback.  Students can also get feedback on their understanding directly from the lecturer, for example during the lecturer's office hour.

Recommended reading

Recommended text:

R Hill, A First Course in Coding Theory, 1986, OUP.

Study hours

Scheduled activity hours
Lectures 12
Tutorials 12
Independent study hours
Independent study 76

Teaching staff

Staff member Role
Yuri Bazlov Unit coordinator

Additional notes

The independent study hours will normally comprise the following. During each week of the taught part of the semester:
•         You will normally have approximately 60-75 minutes of video content. Normally you would spend approximately 2-2.5 hrs per week studying this content independently
•         You will normally have exercise or problem sheets, on which you might spend approximately 1.5hrs per week
•         There may be other tasks assigned to you on Blackboard, for example short quizzes or short-answer formative exercises
•         In some weeks you may be preparing coursework or revising for mid-semester tests
Together with the timetabled classes, you should be spending approximately 6 hours per week on this course unit.
The remaining independent study time comprises revision for and taking the end-of-semester assessment.
The above times are indicative only and may vary depending on the week and the course unit. More information can be found on the course unit’s Blackboard page.

Return to course details