On the symmetry group of extended perfect binary codes of length n+1 and rank n-log(n+1)+2

It is proved that for every integer n = 2(k) - 1, with k >= 5, there exists a perfect code C of length n, of rank r = n - log(n + 1) + 2 and with a trivial symmetry group. This result extends an ...


Introduction
A perfect 1-error correcting binary code of length n, or for short a perfect code, is a subset C, of the direct product Z n 2 of n copies of the finite field Z 2 , with the property that every wordx ∈ Z n 2 differs in at most one coordinate position from a unique wordc of C.
We may consider Z n 2 as a vector space over the finite field Z 2 . The rank of a perfect code is the dimension of the subspace C spanned by the words of C. The length of a perfect code is always equal to n = 2 k − 1 for some integer k and the size of a perfect code of length n is equal to |C| = 2 n−log(n+1) . Henceforth, we will always assume that the all zero word belongs to the perfect codes we consider. Perfect codes of rank r and of length n = 2 k − 1, where k ≥ 4, are known to exist for every integer r in the interval n − log(n + 1) ≤ r ≤ n, see [4].
The aim of this note is to prove the following theorem: Theorem 1. For every integer n = 2 k − 1, with k ≥ 5, there exists a perfect code C of length n, of rank r = n − log(n + 1) + 2 and with a trivial symmetry group.
This result extends a previous result proved by us: ). For any length n = 2 k − 1, with k ≥ 5, and any rank r, with n − log(n + 1) + 3 ≤ r ≤ n − 1 there exists a perfect code with a trivial symmetry group.
As well known, see e.g [8], every linear perfect code of length n, i.e., of rank n − log(n + 1), has a symmetry group which is isomorphic to the general linear group GL(n, 2), and hence never trivial. By a result of Avgustinowich, Heden and Solov'eva [2] no perfect codes of length n and rank r = n − log(n + 1) + 1 has a trivial symmetry group. Using a computer search, Phelps, Pottonen andÖstergård [7] described all perfect codes of length n = 15. Several of these codes have a trivial symmetry group. As far as we can judge, the ranks of these codes are not described there, but could probably easily be found by a computer search. In [5] we found one perfect code of length 15, rank 14 and with a trivial symmetry group. In [11] there is an enumeration of all perfect codes of length 15, rank 13, and it was shown there that none of these codes has a trivial symmetry group. Hence we think that it is now, with this note, and with the exception of just full rank perfect codes, clarified exactly for which ranks and lengths there exist perfect codes with a trivial symmetry group.
The proof of our theorem is very similar to our proof of Theorem 2 in [5]. We will use a rather general construction of perfect codes described by Phelps in 1984 [6]. In the case of a rank less or equal to n − log(n + 1) + 2, a variant of Phelps construction for the case d = 4 was published by Zinoviev already in 1975, see [10] or [9]. Both of their constructions are concatenating constructions, with MDScodes as fundamental ingredients. However, we will here make advantage of the possibility, that the Phelps construction gives, to use non equivalent MDS-codes of length (n + 1)/4 over an alphabet with four letters. In Section 2 the construction is described in detail for the perfect codes we consider when we prove Theorem 1.
We get an extended perfect code C from a perfect code C by including an extra parity-check bit: As in [5] we will prove our results for extended perfect codes. In fact, we will prove the following theorem: Theorem 3. There are extended perfect codes C of every length n + 1 = 2 k , where k ≥ 5, and with a trivial symmetry group, if and only if for the rank r of C, n − log(n + 1) + 2 ≤ r ≤ n − 1.
Trivially, the ranks of C and C are equal. The symmetry group of C is isomorphic to a subgroup of the symmetry group of C . Hence, Theorem 1 and Theorem 2 are immediate consequences of Theorem 3.
For basic definitions and for an historical background to this problem, see [5]. For a good introduction to perfect codes in general we recommend [8].

Phelps construction and MDS-codes
In our constructions we will use MDS-codes D of length m = (n + 1)/4 over an alphabet A with four letters, the elements of the finite field GF(4) = {0, α 1 , α 2 , α 3 }. The minimum distance of the MDS-codes will be 2 and the size of the MDS-codes will be |D| = 4 m−1 . They will all be defined recursively by using four particular MDS-codes of length 4.
The kernel of a code C, ker(C), is the set of wordsp such thatp + C = C. Evidently equivalent codes will have kernels of the same size. We will make use of the fact that some MDS-codes are inequivalent and we will show that they are inequivalent by calculating the size of the kernel of each of them. Note that the kernel of a MDS-code in GF(4) m is an additive subgroup, and not necessarily a subspace, of GF(4) m .
The first basic MDS-code is which is linear and thus has a kernel of size |D 0 | = 4 3 . The second one, denoted D 1 , has a kernel of size 8 and consists of the union of the following sets of words: The third MDS-code we will use is denoted by D 2 and has a kernel of size 16. The code D 2 consists of the words in the union of the set A 0 and the sets This MDS-code will be denoted D 3 .
We will also need a fifth MDS-code D 1 , equivalent to D 1 and obtained from D 1 by the permutation ϕ = (0)(1)(2 3) in each coordinate position, an example of a permutation that here will be called a coordinate fixing permutation. More exactly The important clue in the proof of our main theorem is the following proposition.
Proposition 1. The set of coordinate fixing permutations that maps D 1 into itself is the following group G of size 8 and the set of coordinate fixing permutations that maps D 1 into itself is the following group G of size 8 Proof. We proved this proposition by an exhaustive search for all coordinate fixing permutations.
We will need to concatenate MDS-codes, and, as the verification of the validity of the concatenation procedure we are to describe is a complete triviality, this concatenation procedure should be well known.
Let E and F be any two MDS-codes of lengths s and t, respectively, over the alphabet GF(4) and of minimum distance 2. Denote by D(E, F ) the following set of words We omit the proof of the following lemma. Let E 1 , E 2 , ..., E k be MDS-codes. To simplify notation in what follows, we will write E 1 E 2 . . . E k instead of D(E 1 , D(E 2 , D(E 3 , ...))), and for example, instead of E 1 E 1 E 1 E 2 we will write E 3 1 E 2 . * We now describe Phelps construction to obtain extended perfect codes of length n + 1 and of rank at most equal to n − log(n + 1) + 2. In [6] the construction is given for a more general situation. The codes we construct will here be called Phelps codes.
The construction of Phelps uses a partition of the set of coordinate position into subsets of size 4: where I i = {4i − 3, 4i − 2, 4i − 1, 4i}, for i = 1, 2, . . . , (n + 1)/4. We will also need a partition of the set Z 4 2 into cosets of the extended perfect code {0000, 1111} of length 4. We denote these cosets by 3 = {1001, 0110}, * This notation will in this context be very convenient to use. To avoid any confusion we would like to emphasize that for example, and with D 0 defined as above, the code D 2 0 is an MDS-code of length 8.
One further ingredient in Phelps construction is an extended Hamming code H of length (n + 1)/4. Here we will let H be the null space of the following matrix (It is not important which of all possible such parity check matrices we choose.) The code H will be called the outer code of the Phelps code C.
To every wordh of H we associate a Phelps component Ph which will consist of binary words of length n + 1 given by the choice ofh and the choice of a MDS-code Dh. More precisely, the Phelps component Ph will consist of the following set of words

Ph.
It was proved by Phelps that for any choice of MDS-codes Dh, forh ∈ H, the code C is an extended perfect code of length n + 1, see [6]. The dimension of the dual code C ⊥ of the Phelps code C constructed by the receipt above, is at least equal to the dimension of the dual space of H, i.e., the dimension of the row space of the matrix H. This proves the next lemma. Lemma 2. The rank r of the code C is at most equal to n − log(n + 1) + 2.
As in [5] we can prove the following lemma.
As the words of a Phelps component Ph are completely defined by just the MDScode Dh, and the wordh of H, the kernel of Ph will just depend on the size of the kernel of Dh, as described in the next proposition. Proof. It is enough to prove the proposition in the caseh =0, as, for any subset D of Z n 2 and any wordp, it is true that ker(p + D) = ker(D).
Let e Ij , for j = 1, 2, . . . , (n + 1)/4, denote the word with a support equal to the set I j . From the definition of the Phelps component P0 and from Equation (1) follows that each such word will belong to the kernel of P0. As these words are linearly independent, they span a subspace L of the kernel of P0 of dimension (n + 1)/4.
However, this is an immediate consequence of Equation (2), and the fact that for any two distinct non zero elements α i and α j of GF(4), it is true that where e I denotes the word 1111.
We have now made enough preparations to be able to prove our theorem. Please, for the necessary definitions of inner product, orthogonality and dual code, see [5].

Proof of Theorem 3
From [5] we know that there are extended perfect codes of any length n + 1 = 2 k , where k ≥ 5, and for any possible rank n − log(n + 1) + 2 < r ≤ n − 1 and with a trivial symmetry group. From [2] we know that there are no extended perfect codes of rank r < n − log(n + 1) + 2 with a trivial symmetry group. So in order to prove Theorem 3, it remains to consider the case of rank r = n − log(n + 1) + 2. We will use the Phelps construction, as described in the previous section, in order to find an extended perfect code C of rank r = n − log(n + 1) + 2 and with a trivial symmetry group.
We first choose two of the Phelps components in a way such that the Phelps code C we are to construct will have rank n − log(n + 1) + 2. For that purpose we choose the MDS-code D It is elementary to check that these choices of MDS-codes imply that the rank of the Phelps code C will be n − log(n + 1) + 2.
Now we know that we can apply Lemma 3.
The next step is to choose MDS-codes for some of the Phelps components of C such that the following implication will be true: ϕ ∈ Sym(C) =⇒ ϕ(I j ) = I j , j = 1, 2, . . . , (n + 1)/4.
Leth i denote row number i of the matrix H, defined in the previous section. As the intersection of the supports of any two of the rowsh i , for i = 2, 3, . . . , k + 1 = log(n + 1) + 1, will be of size (n + 1)/16, which is an even number, we may conclude that all these rows will belong to the null space of H and thus to the outer code H.
We From Lemma 1 and Proposition 2, we get that for any i and j, with 2 ≤ i < j ≤ k + 1, Thus, the sizes of the kernels of the Phelps components Ph i , for i = 2, 3, . . . , k + 1, are of mutually distinct sizes. Similarly, we get that the kernels of these Phelps components are of sizes distinct to the sizes of the kernels of all other Phelps components Ph, such that wt(h) = (n + 1)/8.
To the Phelps components Ph, forh ∈ K, we choose the MDS-code D Again, we will now use the special notation for the elements of GF(4) introduced in Section 2, i.e., the integer i denotes the element α i of GF(4). Then we get, from the construction of Phelps, thatc belongs to R if and only if for some word (d 1 , d 2 , . . . , d (n+1)/4 ) of Dh. From Equation (3) follows that for everyc ∈ Ph and every ϕ ∈ Sym(C) for i = 1, 2, 3, 4. Hence from the definition of the set R and Equation (4) follows that for any member ϕ of Sym(C), we have that ϕ(R) = R. Consequently, we may derive from Proposition 1 that for i = 1, 2, 3, 4. As the supports of the words in the set K cover all coordinate positions, we may similarly deduce that Equation (5)  As we for the Phelps components Ph, withh ∈ L, have chosen the MDS-codes D (n+1)/16 1 we now get, as above, from Proposition 1 that for i = 1, 2, . . . , (n + 1)/4. So, simply, Equation (5) and Equation (6) together implies that ϕ i = id., for i = 1, 2, . . . , (n + 1)/4. In the case n+1 = 32 we cannot use the sets K and L defined as above. However, all arguments above apply to the sets K = { 11000011, 00111100 }, and L = { 10100101, 01011010 }.

Remarks
There are many possibilities to prove our theorem. One is to first prove the theorem for the case of length n + 1 = 32 and then show, by recursion, how our result, for all other lengths, follows from this basic case. However, our proof shows that there indeed are very many possibilities to construct extended perfect codes of length n + 1 = 2 k and rank n − log(n + 1) + 2 with a trivial symmetry group. In fact, there are very many choices of MDS-codes that will give us this result, and as follows from the construction, the bigger length, the more codes with the desired parameters there are.
It is easy to verify, by a direct proof, the result of Zinoviev and Zinoviev [11], mentioned in the introduction, that no extended perfect code of length 16 and rank 13 has a trivial symmetry group. This result was an immediate consequence of their computer search for all extended perfect codes of length 16 and rank 13. † The addition is here the addition as it is defined in the ring of integers. Further, the coordinate positions are enumerated from the left to the right, so e.g. the support of the word 0100...0 is the set {2}.
First of all it was proved by Avgustinovich, Heden and Solov'eva [1] that every extended perfect code of length n + 1 = 2 k and rank n − log(n + 1) + 2 is a Phelps code. Furthermore, there are just a few MDS-codes of length 4 over an alphabet with four letters, and they are easy to enumerate. This was done by the first author in 1987 in an unpublished manuscript [3], and also by other authors. From these investigations follows, by inspection, that the symmetry group of every such code contains a symmetry of the type (7) ϕ = (id., id., π, π), where π is one of the elements distinct from id. in the 4-group of Klein, i.e., It is easy to observe that for every permutation π in the 4-group of Klein where the sets C (0) i are defined as in Equation (1). Finally, using the fact that every Phelps code C of length 16 can be regarded as a union of the Phelps components P 0000 and P 1111 , it is more or less obvious that any permutation ϕ, as described in Equation (7), will belong to the symmetry group of C.