Skip to main content
 

COMP4231: DATA COMPRESSION AND CODING THEORY

Please ensure you check the module availability box for each module outline, as not all modules will run in each academic year. Each module description relates to the year indicated in the module availability box, and this may change from year to year, due to, for example: changing staff expertise, disciplinary developments, the requirements of external bodies and partners, and student feedback. Current modules are subject to change in light of the ongoing disruption caused by Covid-19.

Type Open
Level 4
Credits 20
Availability Not available in 2024/2025
Module Cap None.
Location Durham
Department Computer Science

Prerequisites

  • COMP3731 Cryptography

Corequisites

  • None

Excluded Combinations of Modules

  • None

Aims

  • To understand:
  • the main techniques for error correction
  • the key results of information theory and their relevance to cryptography and data compression
  • the main techniques for lossless and lossy date compression
  • the efficiency criteria for data compression.

Content

  • Linear error correcting codes, including Hamming codes
  • Bounds on codes
  • Cyclic codes, including Reed-Solomon codes and their decoding
  • Code-based cryptography
  • Channel capacity and rate-distortion theory
  • Information-theoretic security
  • Huffman coding
  • Arithmetic coding
  • Lempel-Ziv and application to ZIP or PNG
  • Context-based compression o Transform domain compression with application to JPEG
  • Wavelet-based compression with application to JPEG2000
  • Video and Audio compression

Learning Outcomes

Subject-specific Knowledge:

  • On completion of the module, students will be able to demonstrate:
  • an understanding of the key features of error-correcting codes
  • an understanding of public-key cryptosystems based on error-correcting codes
  • an understanding of the how information theory describes the limits of data compression and cryptography
  • an understanding of the key features of popular lossy and lossless compression techniques
  • an understanding of the performance criteria for lossless and lossy compression

Subject-specific Skills:

  • On completion of the module, students will be able to demonstrate:
  • an ability to assess the performance of error-correcting codes an ability to assess the effectiveness and security of code-based cryptosystems
  • an ability to use information-theoretic tools to bound the performance of digital communication systems
  • an ability to assess and design compression techniques for diverse kinds of data
  • an ability to implement the key tools used in data compression.

Key Skills:

  • On completion of the module, students will be able to demonstrate:
  • an ability to use algebraic techniques to solve communication problems
  • an ability to apply information theory to related domains
  • an ability to identify and assess the quality of heuristics for different algorithms

Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module

  • Lectures enable the students to learn new material.
  • The examination assesses the knowledge and understanding of the material covered in the lectures.

Teaching Methods and Learning Hours

ActivityNumberFrequencyDurationTotalMonitored
lectures422 per week1 hour42 
preparation and reading158 
Total200 

Summative Assessment

Component: CourseworkComponent Weighting: 50%
ElementLength / DurationElement WeightingResit Opportunity
Summative Assignment100No
Component: ExaminationComponent Weighting: 50%
ElementLength / DurationElement WeightingResit Opportunity
Examination2 hours100No

Formative Assessment

Example formative exercises are given during the course.

More information

If you have a question about Durham's modular degree programmes, please visit our FAQ webpages, Help page or our glossary of terms. If you have a question about modular programmes that is not covered by the FAQ, or a query about the on-line Undergraduate Module Handbook, please contact us.

Prospective Students: If you have a query about a specific module or degree programme, please Ask Us.

Current Students: Please contact your department.