BSc Computer Science and Mathematics
Year of entry: 2023
- View tabs
- View full page
Course unit details:
|Unit level||Level 3|
|Teaching period(s)||Semester 1|
|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.
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. 
- Length and weight of a code. Perfect codes. 
- Linear codes. Generator matrices and standard forms. Encoding. Nearest neighbour decoding. 
- Dual code. Parity check matrix. Syndrome decoding. Incomplete decoding. 
- Hamming Codes and Decoding. 
- Finite fields. Cyclic codes. 
- Reed-Muller codes.
- Coursework: weighting 20%
- End of semester examination: weighting 80%
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.
R Hill, A First Course in Coding Theory, 1986, OUP.
|Scheduled activity hours|
|Independent study hours|
|Yuri Bazlov||Unit coordinator|
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.