Sebastià Xambó-Descamps
Error-Correcting Codes. A Computational Primer
Extended edition of Block Error-Correcting Codes—A Computational Primer
In collaboration with Narcís Sayols Baixeras.

Aims of this page

The purpose of this page is to provide free links to the friendly materials (Python files and Jupyter notebooks) produced to endow the subject matter covered in the book with powerful computational companions. The links to the corresponding files have the form py for the Python code and nb for the Jupyter notebook. The functionality is equivalent, as the Python code in the notebooks is taken from that of the corresponding Python file, but deciding which to use in any concrete situation may be a matter of convenience.

The materials are ordered in the same way as the reference to them in the book. They can be downloaded by the user and exploited with the PyECC computational system (PyECC refers to the segment of PyM dedicated to error-correcting codes). Since this is work in progress (WiP), please note that a link remains inert if it is not underlined. To facilitate downloading, links to zip files will be provided in due time for chapters and finally for the whole book. Meanwhile we hope that what is currently available will already be useful, particularly to teachers and students of error-correcting codes.

Since the first four chapters of this book are organized as in Block Error-Correcting Codes—A Computational Primer, the materials also cover all the computational aspects of that book.

Index of ecclets

Chapter 0. Preliminary flashes

§0.1 In a nutshell

§0.2 The computational environment

§0.3 Digital communications systems §0.4 Shannon's capacity in the telecommunications parlance
Chapter 1. Block Error-Correcting Codes

§1.1 Basis cocepts

§1.2 Linear codes
§1.3 Hadamard codes §1.4 Parameter bounds Chapter 2. Finite Fields

§2.1 \(\mathbb{Z}_n\) and \(\mathbb{F}_p\)

§2.2 Construction of finite fields

§2.3 Structure of the multiplicative group of a finite field

§2.4 Minimum polinomial Chapter 3. Cyclic Codes

§3.1 Generalities

§3.2 Effective factorization of \(X^n-1\) §3.3 Roots of a cyclic code §3.4 The Meggitt decoder Chapter 4. Alternant Codes

§4.1 Definitions and examples

§4.2 Error-location, error-evaluation, and the key equation

§4.3 The Berlekamp-Massey-Sugiyama algorithm

§4.4 The Peterson-Gorentein-Zierler algotithm

Chapter 5. Code-based post-quantum cryptography

Chapter 6. Quantum Codes

Chapter 7. Convolutional Codes

Appendix A. Probability, entropy and information

Appendix B. The PyM/PyECC System

Appendix C. Postfaces


























SXD
2026.01.22