New extremal singly even self-dual codes of lengths $64$ and $66$

For lengths $64$ and $66$, we construct extremal singly even self-dual codes with weight enumerators for which no extremal singly even self-dual codes were previously known to exist. We also construct new $40$ inequivalent extremal doubly even self-dual $[64,32,12]$ codes with covering radius $12$ meeting the Delsarte bound.


Introduction
A (binary) [n, k] code C is a k-dimensional vector subspace of F n 2 , where F 2 denotes the finite field of order 2. All codes in this note are binary. The parameter n is called the length of C. The weight wt(x) of a vector x is the number of non-zero components of x. A vector of C is a codeword of C. The minimum non-zero weight of all codewords in C is called the minimum weight of C. An [n, k] code with minimum weight d is called an [n, k, d] code. The dual code C ⊥ of a code C of length n is defined as C ⊥ = {x ∈ F n 2 | x · y = 0 for all y ∈ C}, where x · y is the standard inner product. A code C is called self-dual if C = C ⊥ . A self-dual code C is doubly even if all codewords of C have weight divisible by four, and singly even if there is at least one codeword x with wt(x) ≡ 2 (mod 4). It is known that a self-dual code of length n exists if and only if n is even, and a doubly even self-dual code of length n exists if and only if n is divisible by 8.
Let C be a singly even self-dual code. Let C 0 denote the subcode of C consisting of codewords x with wt(x) ≡ 0 (mod 4). The shadow S of C is defined to be C ⊥ 0 \ C. Shadows for self-dual codes were introduced by Conway and Sloane [6] in order to give the largest possible minimum weight among singly even self-dual codes, and to provide restrictions on the weight enumerators of singly even self-dual codes. The largest possible minimum weights among singly even self-dual codes of length n were given for n ≤ 72 in [6]. The possible weight enumerators of singly even self-dual codes with the largest possible minimum weights were given in [6] and [7] for n ≤ 72. It is a fundamental problem to find which weight enumerators actually occur for the possible weight enumerators (see [6]). By considering the shadows, Rains [13] showed that the minimum weight d of a self-dual code of length n is bounded by d ≤ 4⌊ n 24 ⌋ + 6 if n ≡ 22 (mod 24), d ≤ 4⌊ n 24 ⌋ + 4 otherwise. A self-dual code meeting the bound is called extremal.
All computer calculations in this note were done with the help of the algebra software Magma [1] and the computer system Q-extensions [2].
3 Extremal four-circulant singly even self-dual [64, 32, 12] codes An n × n circulant matrix has the following form: so that each successive row is a cyclic shift of the previous one. Let A and B be n × n circulant matrices. Let C be a [4n, 2n] code with generator matrix of the following form: where I n denotes the identity matrix of order n and A T denotes the transpose of A. It is easy to see that C is self-dual if AA T + BB T = I n . The codes with generator matrices of the form (1) are called four-circulant. Two codes are equivalent if one can be obtained from the other by a permutation of coordinates. In this section, we give a classification of extremal four-circulant singly even self-dual [64, 32, 12] codes. Our exhaustive search found all distinct extremal four-circulant singly even self-dual [64, 32, 12] codes, which must be checked further for equivalence to complete the classification. This was done by considering all pairs of 16 × 16 circulant matrices A and B satisfying the condition that AA T + BB T = I 16 , the sum of the weights of the first rows of A and B is congruent to 1 (mod 4) and the sum of the weights is greater than or equal to 13. Since a cyclic shift of the first rows gives an equivalent code, we may assume without loss of generality that the last entry of the first row of B is 1. Then our computer search shows that the above distinct extremal four-circulant singly even self-dual [64, 32, 12] codes are divided into 67 inequivalent codes. Proposition 1. Up to equivalence, there are 67 extremal four-circulant singly even self-dual [64, 32, 12] codes.
We denote the 67 codes by C 64,i (i = 1, 2, . . . , 67). For the 67 codes C 64,i , the first rows r A (resp. r B ) of the circulant matrices A (resp. B) in generator matrices (1) are listed in Table 1. We verified that the codes C 64,i have weight enumerator W 64,2 , where β are also listed in Table 1. 4 Extremal self-dual [64, 32, 12] neighbors of C 64,i Two self-dual codes C and C ′ of length n are said to be neighbors if dim(C ∩ C ′ ) = n/2 − 1. Any self-dual code of length n can be reached from any other by taking successive neighbors (see [6]). Since every self-dual code C of length n contains the all-one vector 1, C has 2 n/2−1 − 1 subcodes D of codimension 1 containing 1. Since dim(D ⊥ /D) = 2, there are two self-dual codes rather than C lying between D ⊥ and D. If C is a singly even self-dual code of length divisible by 8, then C has two doubly even self-dual neighbors (see [3]). In this section, we construct extremal self-dual [64, 32, 12] codes by considering self-dual neighbors.
For i = 1, 2, . . . , 67, we found all distinct extremal singly even self-dual neighbors of C 64,i , which are equivalent to none of the 67 codes. Then we verified that these codes are divided into 385 inequivalent codes D 64,i (i = 1, 2, . . . , 385). These codes D 64,i are constructed as To save space, the values j, the supports supp(x) of x, the values (k, β) in the weight enumerators W 64,k are listed in "http://www.math.is.tohoku.ac.jp/~mharada/Paper/64-SE-d12.txt" for the 385 codes. For extremal singly even self-dual [64, 32, 12] codes with weight enumerators for which no extremal singly even self-dual codes were previously known to exist, j, supp(x) and (k, β) are list in Table 2. Hence, we have the following: Proposition 2. There is an extremal singly even self-dual [64, 32, 12] code with weight enumerator W 64,1 for β = 35, and W 64,2 for β ∈ {19, 34, 42, 45, 50}.  Now we consider the extremal doubly even self-dual neighbors of C 64,i (i = 1, 2, 3). Since the shadow has minimum weight 12, the two doubly even self-dual neighbors C 1 64,i and C 2 64,i are extremal doubly even self-dual [64, 32, 12] codes with covering radius 12 (see [4]   In order to distinguish two doubly even neighbors D 1 64,i and D 2 64,i (i = 68, 84, 95, 143), we list in Table 3   We denote the 224 codes by E 64,i (i = 1, 2, . . . , 224). For the codes, the first rows r A (resp. r B ) of the circulant matrices A (resp. B) in generator matrices (1) can be obtained from "http://www.math.is.tohoku.ac.jp/~mharada/Paper/64-4cir-d10.txt". The following method for constructing self-dual neighbors was given in [4]. For C = E 64,i (i = 1, 2, . . . , 224), let M be a matrix whose rows are the codewords of weight 10 in C. Suppose that there is a vector x of even weight such that Then C 0 = x ⊥ ∩ C is a subcode of index 2 in C. We have self-dual neighbors C 0 , x and C 0 , x + y of C for some vector y ∈ C \ C 0 , which have no codeword of weight 10 in C. When C has a self-dual neighbor C ′ with minimum weight 12, there is a vector x satisfying (2) and we can obtain C ′ in this way. For i = 1, 2, . . . , 224, we verified that there is a unique vector satisfying (2)  The following method for constructing singly even self-dual codes was given in [14]. Let C be a self-dual code of length n. Let x be a vector of odd weight. Let C 0 denote the subcode of C consisting of all codewords which are orthogonal to x. Then there are cosets It was shown in [14] that is a self-dual code of length n + 2. In this section, we construct new extremal singly even self-dual codes of length 66 using this construction from the extremal singly even self-dual [64, 32, 12] codes obtained in Sections 3 and 4. Our exhaustive search shows that there are 1166 inequivalent extremal singly even self-dual [66, 33, 12] codes constructed as the codes C(x) in (3) from the codes C 64,i (i = 1, 2, . . . , 67). 1157 codes of the 1166 codes have weight enumerator W 66,1 for β ∈ {7, 8, . . . , 92}\{9, 11}, 3 of them have weight enumerator W 66,3 for β ∈ {30, 49, 54}, and 6 of them have weight enumerator W 66,2 . Extremal singly even self-dual [66, 33, 12] codes with weight enumerator W 66,1 for β ∈ {7, 58, 70, 91} are constructed for the first time. For the four weight enumerators W , as an example, codes C 66,i with weight enumerators W are given (i = 1, 2, 3, 4). We list in Table 4 the values β in W , the codes C and the vectors x = (x 1 , x 2 , . . . , x 32 ) of C(x) in (3), where x j = 1 (j = 33, . . . , 64).