Logo

Applications of Coding Theory

Code: 105074
Credits: 6
2026/2027
Degree programme Type Course
Computer Engineering OP 4

Contact lecturer

Name :
Adrián Torres Martin
Email :
adrian.torres@uab.cat

Teaching staff

Sergi Sánchez Aragón
Adrián Torres Martin

Group languages

You can consult this information at the end of the document.

Prerequisites

There are no prerequisites. However, students should have either a good mathematical level and be familiar with the concepts of fundamental algebra, or have passed the subjects "Informació i Seguretat" and "Fonaments de Tecnologies de la Informació".

Objectives

The course is focused on coding theory and its applications into the real world. Coding theory is the study of methods for efficient and accurate transfer of information from one place to another. It deals with the problem of detecting and correcting transmission errors caused by noise on the channel. In distributed storage systems, coding theory also offers solutions, to improve hard disk failure tolerance, which are much more efficient than replication-based ones.

This course allows us to build the foundations for developing the “treball final de grau” (TFG) related to this topic and/or by continuing with related postgraduate studies. It contemplates the possibility of assuming this subject and the TFG simultaneously.

Learning outcomes

  1. Identify the main attacks that a computer system can receive, as well as the possible protection and detection methods and the application of security policies to avoid damage to the system or minimise the repercussions.
  2. Design, develop, select and evaluate applications, ensuring their reliability and security.
  3. Develop a capacity for analysis, synthesis and prospection.
  4. Work independently.
  5. Incorporate distributed information treatment systems in an organisation in order to increase operative capacity.
  6. Design, develop, select and evaluate computer systems, ensuring their reliability, security and quality.
  7. Design computer solutions that integrate accessibility and security needs in a distributed system.

Contents

  1. Polynomials and finite fields.
  2. Rings of integers Z and Z/p.
  3. Ring of polynomials over Z/p.
  4. Finite fields GF(p^n)
  5. Linear codes over finite fields.
  6. Introduction to coding theory.
  7. Generator matrices and equivalent codes
  8. Orthogonal codes and syndrome decoding
  9. Hamming codes
  10. Cyclic codes over finite fields.
  11. Introduction to cyclic codes
  12. Generator polynomial and matrix
  13. Parity check polynomial and matrix
  14. Systematic encoding
  15. Algebraic codes. BCH and RS codes
  16. Introduction and general definitions
  17. Encoding an algebraic code
  18. Decoding an algebraic code
  19. BCH and RS codes
  20. Correcting errors and/or erasures
  21. Applications of error correcting codes
  22. Error correcting codes in QR, Blu-ray, DVD.
  23. Error correcting codes in the transmission of information.
  24. Error correcting codes applied to distributed storage.
  25. Hamming codes applied to watermarking and steganography.
  26. Cryptography based on error correcting codes
  27. LDPC codes and applications
  28. Error correcting codes and network coding
  29. Optimal error correcting codes

Learning activities and methodology

Title Hours ECTS Learning outcomes
Preparing exercices and practicum 35 1.4 1, 2, 3, 4, 5, 6, 7
Preparing oral presentation and/or exam 40 1.6 1, 2, 3, 4, 5, 6, 7
Report and oral presentation supervising or Tutoring for exam 6 0.24 3, 4
Tutoring and consultation 5 0.2 3, 4
Practicum 12 0.48 1, 2, 3, 4, 5, 6, 7
Theoretical and practical classes / lectures 38 1.52 1, 2, 3, 4, 5, 6, 7
Practicum supervising 6 0.24 3, 4

The methodology applied to the student work will combine the attended lectures, resolution of examples and practicum. During the sessions, different concepts will be introduced and the resolution of exercises will be proposed to be solved by the students. The practicum proposals will be guided and will be validated by answering some questions. Campus Virtual will be used for communication between lecturers and students (material, updates, announcements, etc.).

Annotation: within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.

Assessment

Continuous assessment activities

Title Weight Hours ECTS Learning outcomes
Attendance and active participation 10 0 0 1, 2, 3, 4, 5, 6, 7
Practical activities 25 3 0.12 1, 2, 3, 4, 5, 6, 7
Written work and oral presentation and/or exam 40 2 0.08 1, 2, 3, 4, 5, 6, 7
Exercise resolution 25 3 0.12 1, 2, 3, 4, 5, 6, 7

This subject does not provide for the single assessment system.

Continuous-assessment dates will be published on Campus Virtual. Specific programming may change when necessary. Any such modification will always be communicated to students through Campus Virtual, which is the usual communication platform between lecturers and students.

The final evaluation will take into account the portfolio delivered by the students, the attendance and participation in class, and the short oral presentations, as follows:

  1. Attendance and active participation. To earn full marks for attendance, students must attend 80% of the classes. Mark: 10%.
  2. Exercise resolutions. This is an individual task. As part of continuous assessment, short exercises must be solved. Some will be compulsory, others will be optional. Mark: 25%.
  3. Practical activities. Depending on the number of students, it will be an individual task or in groups of two people. These practical activities will be performed by using computers. In some cases, passing the practical assignments will require passing the individual validation tests linked to each assignment. These tests will assess the assimilation of both theoretical and practical concepts associated with each activity. Mark: 25%.
  4. Written work and oral presentation, and/or final exam, depending on the number of students and their profile. This is an individual task. It consists of an exam or delivering a written word and oral presentation about a specific topic. The choice of the topic will be discussed and agreed upon in the class, selecting topics from a list provided by the faculty staff or by the students themselves. In addition, the presenter will propose an exercise or questionnaire that the other students will have to answer. On the other hand, the other students in the audience must ask questions (at least one for each talk) during the presentations. A preliminary list of tentative topics are the ones described in chapter 5. Mark: 40%.

Notwithstanding other disciplinary measures deemed appropriate, and in accordance with the academic regulations in force, assessment activities will receive a zero whenever a student commits academic irregularities that may alter such assessment. Assessment activities graded in this way and by this procedure will not be re-assessable. If passing the assessment activity or activities in question is required to pass the subject, the awarding of a zero for disciplinary measures will also entail a direct fail for the subject, with no opportunity to re-assess this in the same academic year. Irregularities contemplated in this procedure include, among others

  • the total or partial copying of an evaluation activity;
  • allowing others to copy;
  • presenting group work that has not been done entirely by the members of the group;
  • presenting any materials prepared by a third party as one’s own work, even if these materials are translations or adaptations,including work that is not original or exclusively that of the student;

An overall grade of 5 or higher is required to pass the subject. A "non-assessable" grade cannot be assigned to students who have participated in more than 50% of the exercises and practicum activities or have delivered the oral presentation. No special treatment will be given to students who have completed the course in the previous academic year. In order to pass the course with honours, the final grade must be a 9.0 or higher. Because the number of students with this distinction cannot exceed 5% of the number of students enrolled in the course, this distinction will be awarded to whoever has the highest final grade.

It is important to bear in mind that no assessment activities will be permitted for any student at a different date or time to that established, unless for justified causes duly advised before the activity and with the lecturer’s previous consent. In all other cases, if an activity has not been carried out, this cannot be re-assessed. The protocol for requesting the rescheduling of assessment activities is available on the website of the Escola d'Enginyeria and applies in the cases described in the institution’s assessment criteria and guidelines.

In the case of exercise resolutions and practical activities, a review may be requested after the date of the activity, allowing students to review the activity with the lecturer. In this context, students may discuss the activity grade awarded by the lecturers responsible for the subject. If students do not take part in this review, no further opportunity will be made available.

In this course, the use of Artificial Intelligence (AI) technologies is permitted exclusively for learning support tasks, such as bibliographic or information searches, text correction, or personal study. The use of AI technologies for completing deliverable activities (i.e., assignments, graded exercises, or exams) is not allowed. Any work that includes AI-generated content will be considered a breach of academic integrity and may result in partial or full penalties on the activity’s grade, or more severe sanctions in serious cases.

To consult the academic regulations approved by the Governing Council of the UAB, please follow this link: http://webs2002.uab.es/afers_academics/info_ac/0041.htm

Bibliography

  • C. H. Bennett, P. Shor, “Quantum Information Theory”, IEEE Trans. Inf. Theory, vol. 44, n.6, pp. 2724-2742, 1998.
  • D. J. Bernstein, J. Buchmann, E. Dahmen (Eds.), Post-Quantum Cryptography, Springer-Verlag, 2009.
  • Thomas M. Cover and Joy A. Thomas (1991). Elements of Information Theory, John Wiley & Sons, Inc.
  • K. Gracie and M.-H. Hamon, “Turbo and turbo-like codes: Principles and applications”, IEEE Proceedings of in Telecommunications, vol. 95, pp: 1228 – 1254, 2000.
  • K. J. Horadam, Hadamard Matrices and Their Applications, Princeton University Press, 2007.
  • Robert J. McEliece, The Theory of Information and Coding, Addison-Wesley Publishing Co., 1977.
  • J. Rifà and Ll. Huguet, Comunicación Digital, Masson Ed. 1991.
  • P. Shor, “Algorithms for Quantum Computation: Discrete Logarithm and Factoring”, Proceedings 35-th Annual Symposium on Foundations of Computer Science, pp. 124-134, 1994.
  • Mc. Williams-Sloane: The Theory of Error-Correcting Codes. North-Holland Publishing Company. Amsterdam-N.Y.-Oxford. 1978-1996.

Software

The practical activities will be perform by using SageMath. https://www.sagemath.org/

SageMath is a free open-source mathematics software system licensed under the GPL. It builds on top of many existing open-source packages: NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R and many more. Access their combined power through a common, Python-based language or directly via interfaces or wrappers. Since version 9.0 released in January 2020, SageMath is using Python 3.

Students must bring a laptop to practical classes.

Course groups and languages

The information provided is provisional until November 30. After this date, you will be able to consult the language of each group through this link. To access the information, you will need to enter the course CODE