BSc Computer Science and Mathematics / Course details

Year of entry: 2020

Course unit details:
Coding Theory

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

Overview

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.

Pre/co-requisites

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

Aims

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.

Syllabus

  • 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: two hours 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 22
Tutorials 11
Independent study hours
Independent study 67

Teaching staff

Staff member Role
Yuri Bazlov Unit coordinator

Return to course details