Parametrization of self-dual codes by orthogonal matrices

We study the orthogonal group O"m of mxm matrices over the field of two elements and give applications to the theory of binary self-dual codes. We show that O"2"n acts transitively on the self-dual codes of length 2n. The subgroup O"2"n^(^1^), consisting of all elements in O"2"n having every row with weight congruent to 1 mod 4, acts transitively on the set of doubly even self-dual codes of length 2n. A factorization theorem for elements of O"m leads to a result about generator matrices for self-dual codes, namely if G=[I|A] is such a generator matrix with I= identity, then the number of rows of G having weight divisible by 4 is a multiple of 4. This generalizes the known result that a self-dual doubly-even code exists only in lengths divisible by 8. The set of inequivalent self-dual codes is shown to be in one-to-one correspondence with the H-P"m double cosets in O"m for a certain subgroup H. The analogous correspondence is given for doubly-even codes and H^(^1^)-P"m double-cosets in O"m^(^1^) for a certain a group H^(^1^). Thus the classification problem for self-dual codes is equivalent to a classification of double-cosets. The subgroups of O"m generated by the permutation matrices and one transvection are determined in the Generator Theorem. The study of certain transvections leads to two results about doubly-even self-dual codes: (a) every such a code with parameters [2n,n,d] with d>=8 is obtained by applying a transvection to a doubly-even code with parameters [2n,n,d-4] which has some special properties related to a vector of weight 6; (b) every such code with minimum distance at least 16 is a neighbor of a singly-even, self-dual code which has a single word of minimum weight 6. A construction is given for such singly-even codes of length 2n based on the existence of codes of length 2n-6 having special properties.