Self-Dual Codes
We study the possible weight distributions of self-dual codes, and consider classifications of such codes up to equivalence.
Description
Error-correcting codes allow for information to be encoded such that even if a number of errors occur during the transmission of a message, the original message may still be recovered. Linear codes of length \(n\) are subspaces of \(n\)-dimensional vector spaces over finite fields. These codes may be equipped with an inner-product, valued in the underlying field, which allows us to define the dual of a code as the set of vectors in the underlying vector space which have an inner-product of zero with every word of our code. A code is known as self-orthogonal if it is contained within its dual code, and self-dual if it is equal to its dual code.
In this project, we will first study some particular examples of self-dual codes (such as the extended binary Golay code), before moving on to consider some general results constraining the possible weight-distributions of such codes. We will then consider examples of so-called ‘mass formulas’ for codes, which provide a method for counting all inequivalent codes of a given type, and use this result to investigate the classification of codes of these types up to equivalence.
Not only are many notable codes self-dual, such codes also have very interesting connections to other mathematical topics such as modular forms, often via associated (real) unimodular lattices, and these are topics a student on this project might choose to investigate further. Famous examples of unimodular lattices include the \(E8\) lattice, as well as the Leech lattice, which are known to describe the most effective ways of packing (hyper)spheres into \(8\)- and \(24\)-dimensional space respectively (see here for an interesting and accessible article on this).
Prerequisites
Codes and Cryptography III is a prerequisite for this project. Students taking this project will also be expected to have a good understanding of linear algebra.
Resources
- W. C. Huffman & V. Pless, Fundamentals of error correcting codes
- W. Ebeling, Lattices and Codes
- J. H. Conway & N. J. A. Sloane Sphere Packings, Lattices and Groups