Date of this Version
Published in Proceedings of the 38th Annual Allerton Conference on Communication, Control, and Computing, (2001) 1019-1028.
We investigate self-dual codes from a structural point of view. In particular, we study properties of critical indecomposable codes which appear in the spectrum of a self-dual code. As an application of the results we obtain, we revisit the study of self-dual codes of dimension at most 10.
In the late 1950’s, Slepian  became the first to take an abstract approach to the study of error-correcting codes. He introduced a structure theory for binary linear codes, developing in particular the idea of an indecomposable code; that is, a code which is not isomorphic to a nontrivial direct sum of two other codes. He proved two important results in this direction: First, every code is isomorphic to a unique sum of indecomposable codes. Second, for a given length and dimension, there is an indecomposable code which achieves the highest possible minimum distance.
The problem with indecomposable codes is that there are simply too many of them. A code is indecomposable of and only if it is not equivalent to a code which has a generator matrix which is block diagonal with at least two blocks. Thus, if C is any indecomposable code, then adding any column onto C yields a new indecomposable code of the same dimension but length one more than the length of C.
The major breakthrough in this area came in the late 1990’s when Assmus () introduced the notion of critical indecomposable codes. The idea is that these codes are indecomposable codes with no “extra” columns tacked on. The notion of critical indecomposable codes appears to be very promising. In fact, Assmus shows that there is a “quasi-canonical” form for the generator matrix of such a code. Further, Assmus gives a recursive construction for all critical indecomposable codes.