ALL ℤ_{4} CODES OF TYPE II AND LENGTH 16 ARE KNOWN

VERA PLESS, JEFFREY S. LEON, AND JOE FIELDS

Abstract. We show that there are 133 inequivalent Type II codes over ℤ_{4} of length 16. We give the number of each type 4^{i} · 2^{j}, where 2i + j = 16, a generator matrix for each code, the order of its automorphism group, and its minimum Lee weight. A (partial) symmetrized weight enumerator of each code is given. The highest minimum Lee weight amongst these codes is 8, and there are 5 inequivalent codes attaining this highest Lee weight.

A new computer algorithm to determine the automorphism group of a ℤ_{4} code was used.

1. Introduction

In [2] Conway and Sloane classified the ℤ_{4} self-dual codes of length 8. They were able to do this at length 8 without a mass formula, which was unknown then, and which they stated as an open problem. Recently, Gaborit [3] has found this formula – not only for the number of self-dual ℤ_{4} codes of any length, but also for the Type II codes which exist only at lengths divisible by eight. A self-dual ℤ_{4} code is Type II if the Euclidean weight (1’s and 3’s count as 1, and 2’s count as 4) of every vector is divisible by 8, and if it contains an analogue of the all-ones vector: a vector consisting solely of 1’s and 3’s.

Using a new computer algorithm that determines the automorphism group of a ℤ_{4} code, we have found 133 inequivalent Type II codes of length 16. By Gaborit’s mass formula, we know that this list is complete.

There were 4 Type II codes of length 8, one each of types 4^{4}, 4^{3}2^{2}, 4^{2}2^{4} and 4 · 2^{6} [2]. The numbers of Type II codes of length 16 are summarized in Table I.

Of these codes, 10 are direct sums of the four Type II codes of length 8, and the rest are indecomposable. For each code we give the order of its automorphism group (which consists of permutations and sign changes) and the code’s minimum Lee weight. The highest minimum Lee weight is 8, and there are 5 codes of this weight, one of each of the types 4^{5}2^{6}, 4^{6}2^{4}, 4^{7}2^{2} and two of type 4^{8}. We have

Table I

The number of inequivalent self-dual ℤ_{4} codes of Type II by type.

\begin{matrix}k & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ number & 1 & 2 & 5 & 13 & 25 & 36 & 34 & 17 \end{matrix}

found several codes with the same symmetrized weight enumerator and automorphism group order but which are not equivalent, including the last two mentioned of minimum Lee weight 8.

In order to explain our terminology and methods we give preliminaries and a simpler proof of Gaborit’s theorem for the number of ℤ_{4} self-dual and Type II codes of a fixed length n. We also give a recursion for τ(n, k), the number of doubly-even [n, k] binary codes containing the all-ones vector when n ≡ 0 (mod 8).

There has been much interest in ℤ_{4} codes as they have been shown to be a systematic way of constructing very good binary codes. A more recent interest in ℤ_{4} codes of Type II is their use in building unimodular lattices [1].

We give generator matrices for those codes having minimum Lee weight 8 in Appendix B. Generator matrices for all of the codes are

available on the world wide web at http://math.uic.edu/ fields/z4.

2. Preliminaries

A code C over ℤ_{4} of length n is an additive subgroup of ℤ_{4}^{n}. The standard inner product is defined on ℤ_{4}^{n} and self-orthogonal (C ⊂ C^{⊥}) and self-dual (C = C^{⊥}) codes are defined in the usual way.

Two ℤ_{4} codes are equivalent if one can be obtained from the other by permuting coordinates and making sign changes in a subset of the coordinates.

The automorphism group of a length n code over ℤ_{4} is the group of all coordinate permutations and sign changes that fix C set-wise. These groups have natural permutation representations on 2n points. There is a normal subgroup consisting of sign changes only, and the quotient group acts naturally on n points.

Any ℤ_{4} code C is equivalent to a code with a generator matrix of the form:

G = [ \begin{matrix}I_{k_{1}} & A & B_{1} + 2B_{2} \\ 0 & 2I_{k_{2}} & 2C \end{matrix} ] (1)

where the matrices A, B_{1}, B_{2} and C are binary matrices. C contains 4^{k_{1}}2^{k_{2}} vectors and is said to be of type 4^{k_{1}}2^{k_{2}}. There are two binary codes C_{1} and C_{2} with generator matrices G_{1} and G_{2} associated with C in a natural way.

G_{1} = [ I_{k_{1}} A B_{1} ]

G_{2} = [ \begin{matrix}I_{k_{1}} & A & B_{1} \\ 0 & I_{k_{2}} & C \end{matrix} ]

Clearly, C_{1} ⊆ C_{2}. If C is self-orthogonal, it is not hard to see that C_{1} is doubly-even (hence self-orthogonal) and C_{2} ⊆ C_{1}^{⊥}.

Theorem 1. [3] A ℤ_{4} code C with generator matrix of the form (1) is self-dual iff C_{1} is doubly-even, C_{2} = C_{1}^{⊥} and B_{2} is chosen so that the rows of G are mutually orthogonal (i.e. the inner-products are 0 in ℤ_{4}).

In this self-dual situation, k_{2} = n − 2k_{1}.

Corollary 1. A ℤ_{4} code C is self-dual iff it has a generator matrix of the form

G = [ \begin{matrix}D & E & I_{k} + 2B \\ 0 & 2I_{n−2k} & 2C \end{matrix} ]

where B, C, D and E are binary matrices,

G′_{1} = [ D E I_{k} ]

is a generator matrix for a doubly-even binary code C_{1},

G′_{2} = [ \begin{matrix}D & E & I_{k} \\ 0 & I_{n−2k} & C \end{matrix} ]

is a generator matrix for C_{2} = C_{1}^{⊥} and B is chosen in such a way that the first k rows of G are orthogonal (in ℤ_{4}).

Proof. If C_{1} = C_{2}^{⊥}, the last n − k_{1} positions of G_{2} are information positions. Hence B_{1} can be replaced by I_{k_{1}}. This gives a new generator matrix of C_{2} of the following form

G′_{2} = [ \begin{matrix}D & E & I_{k} \\ 0 & I_{n−2k} & C \end{matrix} ]

and the corollary follows from this.

The Lee weight of a ℤ_{4}-vector counts a 1 or 3 component as one, and a 2 component as two. The symmetrized weight enumerator or swe of a ℤ_{4}-code gives the Lee weights of all its codewords. The Euclidean weight of a vector counts a 1 or 3 component as one and a 2 component as four.

A ℤ_{4}-code C is of Type II if it is self-dual, contains a vector consisting of 1’s and 3’s only, and all Euclidean weights in C are divisible by 8. It is known that ℤ_{4} codes of Type II and length n exist iff n is divisible by 8. Further, it is known that a ℤ_{4} code generated by vectors whose Euclidean weights are divisible by 8 and which are mutually orthogonal will only contain vectors of Euclidean weight divisible by 8 [1].

3. Formulas

In an attempt to find a generator matrix for a self-dual ℤ_{4}-code we look at the generator matrix in Corollary 1. If we start with the generator matrix of an [n, k] doubly-even code C_{1} of the form

G_{1} = [ A I_{k} ]

and extend this to a generator matrix

G_{2} = [ \begin{matrix}G_{1} \\ C \end{matrix} ]

of C_{1}^{⊥}, then we can find a generator matrix G (of a self-dual ℤ_{4} code) of the form

G = [ \begin{matrix}A & I_{k} + 2B \\ & 2C \end{matrix} ] (2)

for A, B and C binary matrices, provided only that we know how to find 2B (we regard I_{k} + 2B as one matrix where the sum is taken in ℤ_{4}).

We illustrate this for a self-dual code of type 4^{2}2^{4}. There are two doubly-even [8, 2] binary codes one of which contains the all-ones vector and the other does not. Let C_{1} be the latter and consider the following G_{1}.

G_{1} = [ \begin{matrix}1 & 1 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & 1 & 1 & 0 & 0 & 0 & 1 \end{matrix} ]

In the ℤ_{4} world we can add 2’s (or not) to the entries of the identity matrix on the right, but in order that these new vectors be orthogonal the off-diagonal entries must be different. This generalizes; entries below the diagonal are determined by those above it. This gives the following 2^{3} generator matrices of 4^{2}2^{4} codes.

[ \begin{matrix}1 & 1 & 1 & 0 & 0 & 0 & ±1 & 0 \\ 0 & 1 & 1 & 1 & 0 & 0 & 2 & ±1 \end{matrix} ; 2C ] and [ \begin{matrix}1 & 1 & 1 & 0 & 0 & 0 & ±1 & 2 \\ 0 & 1 & 1 & 1 & 0 & 0 & 0 & ±1 \end{matrix} ; 2C ],

where

2C = [ \begin{matrix}0 & 2 & 2 & 0 & 0 & 0 & 0 & 0 \\ 2 & 2 & 0 & 2 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 \end{matrix} ]

If we wish to construct a Type II code of type 4^{2}2^{4} we must start with an [8, 2] doubly-even binary code which contains the all-ones vector. There is exactly one such (up to equivalence).

We see in this situation that there are 2^{2} generator matrices possible if we include the all-one vector in our generator matrices.

The possibilities are as follows where x = ±1 and y = ±1.

[ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & x & −y \\ 1 & 1 & 1 & 0 & 0 & 0 & 2 & y \\ 2 & 2 & 0 & 0 & 0 & 0 & 0 & 0 \\ 2 & 0 & 2 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 2 & 2 & 0 & 0 & 0 \\ 0 & 0 & 0 & 2 & 0 & 2 & 0 & 0 \end{matrix} ]

Note that in this situation the 2 in the lower left corner of the upperright 2 × 2 block is determined. This is necessary to ensure that the Euclidean weight of the second basis element be divisible by 8. Furthermore, note that the element in the upper-right corner of this same block is determined by the requirement that these first 2 rows be orthogonal.

So, for Type II codes the relevant generator matrix is

G = \left[{A  Ĩ_{k} + 2B \atop 2C}\right] (3)

where Ĩ_{k} = [ \begin{matrix}1 & 1 & ⋯ & 1 \\ 0 \\ ⋮ & & I_{k−1} \\ 0 \end{matrix} ].

Theorem 2. [3] There are

∑_{0≤k≤⌊n/2⌋} σ(n, k)2^{k(k+1)/2}

self-dual ℤ_{4} codes, where σ(n, k) is the number of doubly-even, binary [n, k] codes.

Further, each term in the sum gives the number of codes of type 4^{k}2^{n−2k}.

Proof. For each binary doubly-even [n, k] code, there are 2^{k(k+1)/2} ways of choosing a matrix B such that the generator matrix

G = [ \begin{matrix}D & E & I_{k} + 2B \\ 0 & 2I_{n−2k} & 2C \end{matrix} ]

is that of a self-dual code. The entries of B below the diagonal are determined by those above. Summing over all k where 0 ≤ k ≤ ⌊n/2⌋ gives the result.

Theorem 3. [3] Let n be divisible by 8. There are

∑_{1≤k≤n/2} τ(n, k)2^{1+k(k−1)/2}

ℤ_{4} codes of Type II, where τ(n, k) is the number of doubly-even binary [n, k] codes containing the all-ones vector.

Further, the number of codes of each type are given by the individual summands.

Proof. In the Type II situation we look at a generator matrix of the form in Equation 3 and notice that we can add 2’s (or not) freely to the diagonal elements in Ĩ_{k} and to the 0’s above the diagonal. However the rest of the matrix is completely determined by these choices. The elements below the diagonal are determined by the choices made above the diagonal and the requirement that the final code be self-orthogonal. The elements in the first column are then determined by the requirement that each row have Euclidean weight zero (mod 8). Finally, the elements in the first row (after the first) must be chosen in such a way that the remaining rows are orthogonal to the first.

We give a simple recursion for τ(n, k) when n ≡ 0 (mod 8).

Theorem 4. When n ≡ 0 (mod 8),

τ(n, 1) = 1

and

τ(n, k) = τ(n, k − 1) · \frac{2^{n−2k+1} + 2^{n/2−k} − 1}{2^{k−1} − 1}

Proof. The proof is by induction on k.

Clearly τ(n, 1) = 1. Suppose that there are τ(n, k − 1) doubly-even [n, k −1] binary codes which contain the all-ones vector. Let C be such a code. We consider the number of doubly-even [n, k] codes C′ which contain C.

As n ≡ 0 (mod 8), C^{⊥} is a space of hyperbolic type and so contains 2^{n−k} + 2^{n/2−1} vectors whose weights are divisible by 4 [7]. Hence there are 2^{n−k} + 2^{n/2−1} − 2^{k−1} vectors which we can adjoin to C to obtain an [n, k] doubly-even code. We divide this by 2^{k−1} (the number of vectors we could adjoin to get the same code C′). Dividing by the 2^{k−1} − 1 repetitions of the same C′ gotten from different C yields the recursion.

4. The Classification of the Binary Codes

We call a binary code admissible if it is doubly-even, and contains the all-ones vector.

We proceeded through the codes of type 4^{i}2^{j}, 2i + j = 16 in order of increasing i. We first found all inequivalent, admissible binary codes of length 16 and dimension i using the formula for τ(16, i) and checking whether we had all the codes by finding the order of the group of each code. As the index of a code’s automorphism group in the symmetric group S_{16} gives the number of equivalent codes, we were able to verify that our listing of inequivalent codes was complete. As only self-dual doubly-even codes of length 16 have been classified, we give the classification of all doubly-even binary codes of length 16 and dimension i for 2 ≤ i ≤ 7 in Table II. When i = 1, there is clearly one binary code – the length 16 repetition code.

We use the standard notation d_{n}, e_{7} and e_{8} for those codes which contain vectors of weight 4. Thus, e_{7} is the [7, 3, 4] Hamming code, e_{8} is the [8, 4, 4] extended Hamming code, and d_{n} is the code (of even length n) generated by vectors of weight 4 as follows:

D_{n} = [ \begin{matrix}1 & 1 & 1 & 1 \\ & & 1 & 1 & 1 & 1 \\ & & & & 1 & 1 & 1 & 1 \\ & & & & & & & & . & . & . \\ & & & & & & & & & & & 1 & 1 & 1 & 1 \\ & & & & & & & & & & & & & 1 & 1 & 1 & 1 \\ & & & & & & & & & & & & & & & 1 & 1 & 1 & 1 \end{matrix} ]

Our labels describe all the vectors of weight four in an admissible code of a given dimension. A ‘+’ sign in a label indicates a direct sum of weight 4 component sub-codes. As these components may need to be ‘glued’ together, the resulting code may not be a direct sum. The same labels may be used in different dimensions, so a numeral is prefixed to indicate the dimension (the binary code’s dimension gives the exponent of 4 in the type of the related ℤ_{4} code). Thus 4 d4+d6 is an admissible code (not a direct sum) of dimension 4 with the following generator matrix

4 d4+d6 = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \end{matrix} ] .

It generates a ℤ_{4} code of type 4^{4} which we also label 4 d4+d6. We use bold face type to distinguish the labels of ℤ_{4} codes from those of binary codes.

There is no code with the label X d4+d8 as such a code would contain an additional weight four vector. (Recall that the all-ones vector is always in the code.)

The label 5 d4+d6 refers to the code (of dimension 5) with generator matrix

5 d4+d6 = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 \\ 1 & 0 & 1 & 0 & 1 & 0 & 1 & 0 & 1 & 0 & 1 & 1 & 1 & 0 & 0 & 0 \end{matrix} ] .

Note that the final row is a weight 8 ‘glue’ vector, it does not introduce any new weight 4 vectors into the code. Again, this code is not a direct sum.

There are 40 inequivalent admissible codes of length 16. The unique code of dimension 1 is the length 16 repetition code; at the other end of the spectrum, there are two codes (necessarily of dimension 8): d16 and 2e8. These have previously been classified [6].

These codes are completely described by labels which indicate the weight four vectors in them. A ‘+’ sign in a label does not necessarily indicate a direct sum, as there may be ‘glue’ vectors of weight 8. In Table II we give the weight distributions and the order of the automorphism groups of all these codes. Note that the entire weight distribution is determined by the number of vectors of weights 4 and 8 as the all-one vector is in the code. The generator matrices of these codes are not difficult to find from their labels.

Table II

Inequivalent admissible codes of length 16 and dimensions 2-7.

Label  Group Order u_{4} u_{8}
2 d4  2^{13}3^{6}5^{2}7 · 11 1 1
2 f2  2^{15}3^{4}5^{2}7^{2} 0 2
3 d4 2^{12}3^{4}5^{2} 1 4
3 2d4  2^{14}3^{4}5 · 7 2 2
3 d6  2^{12}3^{5}5^{2}7  3 0
3 f3  2^{15}3^{5}  0 6
4 d4  2^{9}3^{5}  1 12
4 2d4  2^{14}3^{2}  2 10
4 d4+d6  2^{11}3^{4}5  4 6
4 4d4  2^{15}3^{5}  4 6
4 d6  2^{10}3^{3}5^{2}  3 8
4 d8  2^{14}3^{3}5 · 7 6 2
4 e7  2^{10}3^{5}5 · 7^{2} 7 0
4 f4  2^{14}3 · 7  0 14
5 2d4  2^{12} · 3  2 26
5 d4+d6  2^{9}3^{3}  4 22
5 d4+e7  2^{9}3^{3}5 · 7  8 14
5 2d4+d8  2^{14}3^{3}  8 14

5 4d4  2^{15}3  4 22
5 2d6  2^{12}3^{3}  6 18
5 d8  2^{13}3^{3}  6 18
5 d10  2^{12}3^{3}5^{2} 10 10
5 e8  2^{13}3^{3}5 · 7^{2} 14 2
5 f5  2^{10}3^{2}5 · 7 0 30
6 d4+d12 2^{13}3^{3}5 16 30
6 2d4+d8 2^{13}3 8 46
6 2d4+e8 2^{13}3^{3}7 16 30
6 4d4 2^{12}3^{2} 4 54
6 d6+e7  2^{8}3^{3}7 10 42
6 2d6 2^{10}3^{2} 6 50
6 2d8  2^{15}3^{2} 12 38
6 d10  2^{10}3^{3}5 10 42
7 d4+d12 2^{12}3^{2}5 16 94
7 2d8  2^{13}3^{2} 12 102
7 d8+e8  2^{13}3^{2}7 20 86
7 d16  2^{15}3^{2}5 · 7 28 70
7 2e7  2^{8}3^{2}7^{2} 14 98

Using our notation, the four ℤ_{4} Type II codes of length 8 found in [2], would have the labels: 1 f1, 2 2d4, 3 d8 and 4 e8.

5. Our Methods

This work relies in an essential way on our ability to compute the order of the automorphism group of a ℤ_{4} code. The automorphism groups of the codes were computed using an algorithm employing the partition backtrack technique developed in [4] and [5]. This techique involves backtrack search in a tree whose nodes are labelled by nested sequences of ordered partitions; a detailed description of the technique appears in [4], and a somewhat briefer description, incorporating a number of small improvements, is given in [5]. An isomorphism algorithm for codes over ℤ_{4}, based on the same general technique, was developed and was used in the classification process. However, the final result does not depend on the validity of the isomorphism algorithm, as any two distinct codes (see Appendix A) can be distinguished by their symmetrized weight enumerators (determined by the coefficients shown) and by the orders of their automorphism and sign change groups.

After all of the admissible codes of a fixed dimension were found, we constructed the generator matrices for some of the ℤ_{4} codes to which they lead. We tried to eliminate equivalent codes before running the automorphism group program. The ℤ_{4} codes retained the same labels as their binary progenitors; however there may be more than one ℤ_{4} code with the same label. We distinguish these by appending a,b,c, … (as necessary) to their labels. For example, for ℤ_{4} codes of type 4^{5}2^{6} and label 5 d4+d6, we considered generator matrices of the form

5 d4+d6x = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 3 & 3 & 3 & 1 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & ⋆ & 1 & a & b & c \\ 0 & 0 & 0 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & ⋆ & a & 1 & d & e \\ 0 & 0 & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & ⋆ & b & d̃ & 1 & f \\ 1 & 1 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & ⋆ & c̃ & ẽ & f̃ & 1 \\ 0 & 2 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 2 & 0 & 0 & 2 \\ 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 2 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 0 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 2 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 2 & 0 & 0 & 0 & 0 \end{matrix} ]

The six positions above the diagonal in the upper-right block (indicated by the variables a, b, … f) are considered free, that is, one can put either a zero or a two in those positions, and the positions below the diagonal are determined by those choices. A tilde on a variable name appearing below the diagonal means that this position must have the opposite value as the corresponding variable above the diagonal. The positions marked with stars are also determined, they must be chosen so that the row has Euclidean weight zero (mod 8). Finally, note that in the proof of Gaborit’s formula for the total number of Type II codes, the positions on the diagonal are taken to be free, i.e. either 1 or 3. We do not consider these positions free – a sign change in any of the last 5 coordinates would send us to an equivalent code in which the opposite choice had been made on the diagonal. So, we see that there are at most 2^{6} inequivalent codes with the label 5 d4+d6x. There are a variety of different methods for eliminating equivalent codes, some of which use symmetries. (In the above example, rows 3 and 4 can be interchanged together with the appropriate column interchanges.) Also elements in the dual of C_{1} can be added to some rows. Some of this pruning of the list of candidate codes was accomplished by hand. The final list of codes were distinguished by their symmetrized weight enumerators, their automorphism group orders, the size of the normal subgroup consisting of sign changes, and the orbit lengths of the quotient group which acts on 16 unsigned coordinates.

There are several cases where two codes have the same symmetrized weight enumerators and automorphism group orders but are not equivalent. One instance of this is 8 d16g and 8 2e8j, both of minimum Lee weight 8. The orders of their sign change groups are different. In addition, they cannot be equivalent as they have different labels.

The order of the group of each ℤ_{4} code C yields the number of codes equivalent to C. We knew that we were finished when the total number of codes of a given type was equal to the number found in Theorem 3.

There are five admissible codes which do not contain any weight 4 vectors. These are denoted by labels: 1 f1, 2 f2, 3 f3, 4 f4 and 5 f5. One of these (5 f5) is actually R(1, 4), 4 f4 is a four-dimensional subcode of R(1, 4). Each of these lead to ℤ_{4} codes of types 4^{5}2^{6} and 4^{4}2^{8} respectively, that have minimum Lee weight 8. The Gray image of 5 f5 is the doubly-even linear code R(2, 5).

The others are also sub-codes of R(1, 4) with dimensions 1,2 and 3. They give rise to ℤ_{4} codes of types 4^{1}2^{14}, 4^{2}2^{12} and 4^{3}2^{10}, these codes have minimum Lee weight 4.

For the codes having minimum Lee weight 8, we give their complete symmetrized weight enumerators in Table III. There is a one-to-one correspondence between certain pairs of vectors that are translates of one another by the all 2’s vector. Because of this, certain monomials in the symmetrized weight enumerator of a code have equal coefficients. For example, the coefficients of b^{4}c^{1} and b^{4}c^{11} are equal in the symmetrized weight enumerator of any Type II code (indeed, this is true for all self-dual ℤ_{4} codes). In Table III, the information for like coefficients is combined.

6. Explanation of the Appendices

In Appendix A, we give a summary of all of the inequivalent Type II codes of length 16. Direct sums are marked with an asterisk. A length 16 Type II code which is a direct sum must be a direct sum of length 8 Type II codes. For example, the direct sum of the length 8 codes 1 f1 and 2 2d4 gives the length 16 code labeled 3 2d4b. Even though there are 10 codes labeled 8 2e8x (x = a, b, …, j) only one, 8 2e8d is 4 e8 ⊕ 4 e8.

For each code, we give the order of its automorphism group, the group’s orbit lengths, the minimum Lee weight, and some of the coefficients of the symmetrized weight enumerator.

Table III

Symmetrized weight enumerators for codes with minimum Lee weight 8.

swe coefficients

label  1 c^{4} c^{6} c^{8} b^{4}c^{3} b^{4}c^{5} b^{8} b^{8}c^{2} b^{8}c^{4} b^{12}c b^{16}
c^{16} c^{12} c^{10}  b^{4}c^{9} b^{4}c^{7} b^{8}c^{8} b^{8}c^{6}  b^{12}c^{3}
5 f5  1 140 448 870 0  0 480 13440 33600 0 2048
6 4d4c 1 76 192 486 512 1536 480 11904 30528 2048 1024
7 2d8g 1 44 64 294 768 2304 480 11136 28992 3072 512
8 d16g 1 28 0 198 896 2688 480 10752 28224 3584 256
8 2e8j 1 28 0 198 896 2688 480 10752 28224 3584 256

Recall that the automorphism group A has a normal subgroup S which consists of sign changes only. The quotient group A/S acts as a permutation group on the 16 unsigned coordinates. In the appendix, we write the automorphism group’s order as (|S|)·|A/S|. Informally, we have factored the group into pure ‘sign change’, and pure ‘permutation’ components. The orbit lengths in Appendix A are the lengths of the orbits of A/S acting on the 16 unsigned coordinate positions.

The symmetrized weight enumerator of a ℤ_{4} code is a polynomial in two variables b and c such that the coefficient of b^{i}c^{j} is the number of vectors in the code having exactly i 1’s and 3’s and j 2’s. In Appendix A we give only the coefficients of c^{2}, b^{4}c, b^{8} and c^{4}. These are the only terms (other than the leading 1) which correspond to vectors having Lee weight 8 or less. These terms are sufficient to distinguish the symmetrized weight enumerators of all of the codes of Type II and length 16.

In Appendix B, we give generator matrices for all of the inequivalent codes we have determined that have minumum Lee weight 8.

7. Acknowledgments

We thank Phillipe Gaborit for making a preprint of [3] available to us. We found GAP (Groups, Algorithms and Programming) to be an invaluable tool, and would like to thank its authors.

ALL ℤ_{4} CODES OF TYPE II AND LENGTH 16 ARE KNOWN 13

Appendix A: Summary of the ℤ_{4} Type II Codes All inequivalent ℤ_{4} Type II codes of length 16 are listed below. Direct

sums are marked with an asterisk.

min  swe coefficients
automorphism  orbit Lee  (partial)
label  group order  lengths wt c^{2} b^{4}c b^{8} c^{4}
1 f1  (2^{15})2^{15}3^{6}5^{3}7^{2}11 · 13  16 4 120 0 0 1820
2 d4  (2^{14})2^{13}3^{6}5^{2}7 · 11  4,12 4 72 96 0 892
∗ 2 f2  (2^{14})2^{15}3^{4}5^{2}7^{2}  16 4 56 0 256 924
3 d4  (2^{12})2^{12}3^{4}5^{2}  4,12 4 32 48 256 460
3 2d4a  (2^{13})2^{14}3^{4}5 · 7  8,8 4 40 128 64 444
∗ 3 2d4b  (2^{13})2^{14}3^{4}5 · 7  8,8 4 40 64 192 444
3 d6  (2^{12})2^{12}3^{5}5^{2}7  6,10 4 48 144 0 428
3 f3  (2^{12})2^{15}3^{5}  16 4 24 0 384 476
4 d4  (2^{9})2^{9}3^{5}  4,12 4 12 24 384 244
4 d4+d6a  (2^{11})2^{11}3^{4}5  4,6,6 4 24 144 96 220
4 d4+d6b  (2^{11})2^{11}3^{3}5  4,4,2,6 4 24 80 224 220
4 2d4a  (2^{10})2^{14}3^{2}  8,8 4 16 64 288 236
4 2d4b  (2^{10})2^{14}3^{2}  8,8 4 16 32 352 236
4 4d4a  (2^{12})2^{13}3^{5}  12,4 4 24 96 192 220
∗ 4 4d4b  (2^{12})2^{15}3^{4}  16 4 24 128 128 220
4 4d4c  (2^{12})2^{15}3^{5}  16 4 24 0 384 220
4 d6  (2^{9})2^{10}3^{3}5^{2}  6,10 4 20 72 256 228
4 d8a  (2^{11})2^{14}3^{2}5 · 7  8,8 4 32 160 32 204
∗ 4 d8b  (2^{11})2^{14}3^{3}5 · 7  8,8 4 32 96 160 204
4 e7  (2^{9})2^{10}3^{5}5 · 7^{2}  7,9 4 36 168 0 196
4 f4  (2^{9})2^{14}3 · 7  16 4 8 0 448 252
5 d4+d6a  (2^{7})2^{9}3^{3}  4,6,6 4 8 72 304 124
5 d4+d6b  (2^{7})2^{9}3^{2}  4,4,2,6 4 8 40 368 124
5 d4+e7a  (2^{8})2^{9}3^{3}5 · 7  7,4,5 4 16 152 112 108
5 d4+e7b  (2^{8})2^{9}3^{3}5  6,4,5,1 4 16 88 240 108
5 2d4a  (2^{6})2^{12}3  8,8 4 4 32 400 132
5 2d4b  (2^{6})2^{12}3  8,8 4 4 16 432 132
5 2d4+d8a  (2^{10})2^{13}3^{2}  8,4,4 4 16 128 160 108

min swe coefficients
automorphism orbit Lee  (partial)
label  group order lengths wt c^{2} b^{4}c b^{8} c^{4}
5 2d4+d8b (2^{10})2^{12}3^{2}  4,4,8 4 16 112 192 108
5 2d4+d8c (2^{10})2^{13}3^{2}  8,8 4 16 64 288 108
∗ 5 2d4+d8d (2^{10})2^{14}3^{3}  8,8 4 16 160 96 108
5 2d4+d8e (2^{10})2^{12}3^{3}  6,2,8 4 16 80 256 108
5 2d4+d8f  (2^{10})2^{14}3^{2}  8,8 4 16 32 352 108
5 4d4a  (2^{8})2^{13}3  12,4 4 8 48 352 124
5 4d4b  (2^{8})2^{15}  16 4 8 64 320 124
5 4d4c  (2^{8})2^{15}3  16 4 8 0 448 124
5 2d6a  (2^{9})2^{12}3^{3}  12,4 4 12 144 144 116
5 2d6b  (2^{9})2^{12}3  8,4,4 4 12 80 272 116
5 2d6c  (2^{9})2^{11}3^{2}  12,4 4 12 48 336 116
5 d8a  (2^{7})2^{13}3^{2}  8,8 4 12 80 272 116
5 d8b  (2^{7})2^{13}3^{3}  8,8 4 12 48 336 116
5 d10a  (2^{10})2^{10}3^{2}5^{2}  10,6 4 20 160 80 100
5 d10b  (2^{10})2^{10}3^{3}5  4,6,6 4 20 96 208 100
5 e8a  (2^{8})2^{13}3^{3}5 · 7  8,8 4 28 176 16 84
∗ 5 e8b  (2^{8})2^{13}3^{3}5 · 7^{2}  8,8 4 28 112 144 84
5 f5  (2^{5})2^{10}3^{2}5 · 7  16 8 0 0 480 140
6 d4+d12a  (2^{9})2^{11}3^{2}  12,4 4 12 144 144 52
6 d4+d12b  (2^{9})2^{10}3^{2}  4,2,6,4 4 12 128 176 52
6 d4+d12c  (2^{9})2^{11}3  8,4,4 4 12 80 272 52
6 d4+d12d (2^{9})2^{10}3 · 5  10,2,4 4 12 96 240 52
6 d4+d12e  (2^{9})2^{11}3^{3}  12,4 4 12 48 336 52
6 d4+d12f  (2^{9})2^{11}3^{2}  12,4 4 12 48 336 52
6 2d4+d8a  (2^{5})2^{12}  8,4,4 4 4 64 336 68
6 2d4+d8b  (2^{5})2^{11}  4,4,8 4 4 56 352 68
6 2d4+d8c  (2^{5})2^{12}  8,8 4 4 32 400 68
6 2d4+d8d  (2^{5})2^{13}3  8,8 4 4 80 304 68
6 2d4+d8e  (2^{5})2^{11}3  6,2,8 4 4 40 384 68
6 2d4+d8f  (2^{5})2^{13}  8,8 4 4 16 432 68
6 2d4+e8a  (2^{7})2^{12}3^{3}  8,4,4 4 12 144 144 52
6 2d4+e8b  (2^{7})2^{10}3^{3}  6,2,8 4 12 104 224 52
6 2d4+e8c  (2^{7})2^{12}3^{2}  8,8 4 12 80 272 52
∗ 6 2d4+e8d (2^{7})2^{13}3^{3}7  8,8 4 12 176 80 52
6 2d4+e8e  (2^{7})2^{10}3^{3}7  7,8,1 4 12 72 288 52

min swe coefficients
automorphism orbit Lee (partial)
label  group order lengths wt c^{2} b^{4}c b^{8} c^{4}
6 2d4+e8f  (2^{7})2^{13}3^{3}  8,8 4 12 48 336 52
6 4d4a  (2^{3})2^{10}3^{2}  12,4 6 0 24 432 76
6 4d4b  (2^{3})2^{12}3  16 6 0 32 416 76
6 4d4c  (2^{3})2^{12}3^{2}  16 8 0 0 480 76
6 d6+e7a  (2^{6})2^{8}3^{3}7  6,7,3 4 6 144 168 64
6 d6+e7b  (2^{6})2^{8}3^{2}  4,2,6,3,1 4 6 80 296 64
6 d6+e7c  (2^{6})2^{7}3^{2}  6,4,3,3 4 6 48 360 64
6 2d6a  (2^{4})2^{10}3^{2}  12,4 4 2 72 328 72
6 2d6b  (2^{4})2^{10}  8,4,4 4 2 40 392 72
6 2d6c  (2^{4})2^{9}3  12,4 4 2 24 424 72
6 2d8a  (2^{8})2^{12}3  8,6,2 4 8 112 224 60
6 2d8b  (2^{8})2^{12}  8,8 4 8 96 256 60
6 2d8c  (2^{8})2^{12}  8,4,4 4 8 48 352 60
6 2d8d  (2^{8})2^{12}  16 4 8 64 320 60
∗ 6 2d8e  (2^{8})2^{15}3^{2}  16 4 8 192 64 60
6 2d8f  (2^{8})2^{15}  16 4 8 64 320 60
6 2d8g  (2^{8})2^{14}3  16 4 8 0 448 60
6 d10a  (2^{5})2^{8}3^{2}5  10,6 4 6 80 296 64
6 d10b  (2^{5})2^{8}3^{3}  4,6,6 4 6 48 360 64
7 d4+d12a  (2^{3})2^{10}3  12,4 4 2 72 328 40
7 d4+d12b  (2^{3})2^{9}3  4,2,6,4 4 2 64 344 40
7 d4+d12c  (2^{3})2^{10}  8,4,4 4 2 40 392 40
7 d4+d12d  (2^{3})2^{9}5  10,2,4 4 2 48 376 40
7 d4+d12e  (2^{3})2^{10}3^{2}  12,4 4 2 24 424 40
7 d4+d12f  (2^{3})2^{10}3  12,4 4 2 24 424 40
7 d8+e8a  (2^{5})2^{9}3^{2}  8,6,2 4 4 128 208 36
7 d8+e8b  (2^{5})2^{9}3  6,2,4,4 4 4 88 288 36
7 d8+e8c  (2^{5})2^{11}  8,4,4 4 4 64 336 36
7 d8+e8d  (2^{5})2^{9}  4,4,8 4 4 56 352 36
7 d8+e8e  (2^{5})2^{10}3  8,8 4 4 32 400 36
∗ 7 d8+e8f  (2^{5})2^{13}3^{2}7  8,8 4 4 208 48 36
7 d8+e8g  (2^{5})2^{10}3 · 7  7,8,1 4 4 104 256 36
7 d8+e8h  (2^{5})2^{13}3  8,8 4 4 80 304 36
7 d8+e8i  (2^{5})2^{10}3  6,8,2 4 4 40 384 36
7 d8+e8j  (2^{5})2^{12}3  8,8 4 4 16 432 36

min swe coefficients
automorphism orbit Lee  (partial)
label  group order lengths wt c^{2} b^{4}c b^{8} c^{4}
7 2d8a  (2^{2})2^{10}3  8,6,2 6 0 56 368 44
7 2d8b  (2^{2})2^{10}  8,8 6 0 48 384 44
7 2d8c  (2^{2})2^{10}  8,4,4 6 0 24 432 44
7 2d8d  (2^{2})2^{10}  16 6 0 32 416 44
7 2d8e  (2^{2})2^{13}3^{2}  16 6 0 96 288 44
7 2d8f  (2^{2})2^{13}  16 6 0 32 416 44
7 2d8g  (2^{2})2^{12}3  16 8 0 0 480 44
7 d16a  (2^{8})2^{9}7  14,2 4 8 112 224 28
7 d16b  (2^{8})2^{10}3^{2}  4,12 4 8 144 160 28
7 d16c  (2^{8})2^{11}  8,8 4 8 96 256 28
7 d16d  (2^{8})2^{10}3  12,4 4 8 48 352 28
7 d16e (2^{8})2^{9}3 · 5  10,6 4 8 64 320 28
7 d16f (2^{8})2^{12} 16 4 8 64 320 28
7 d16g (2^{8})2^{12}3 · 7  16 4 8 0 448 28
7 2e7a (2^{3})2^{8}3^{2}7^{2}  14,2 4 1 140 196 42
7 2e7b  (2^{3})2^{8}3^{2}  12,2,2 4 1 76 324 42
7 2e7c  (2^{3})2^{7}3  6,8,2 4 1 44 388 42
7 2e7d (2^{3})2^{5}3 · 7  14,2 4 1 28 420 42
8 d16a  (2)2^{8}7  14,2 6 0 56 368 28
8 d16b  (2)2^{10}  8,8 6 0 48 384 28
8 d16c  (2)2^{9}3^{2}  12,4 6 0 72 336 28
8 d16d  (2)2^{9}3  12,4 6 0 24 432 28
8 d16e  (2)2^{8}3 · 5  10,6 6 0 32 416 28
8 d16f  (2)2^{11}  16 6 0 32 416 28
8 d16g (2)2^{11}3 · 7  16 8 0 0 480 28
8 2e8a  (2^{2})2^{8}3^{2}  12,4 6 0 80 320 28
8 2e8b  (2^{2})2^{8}  8,8 6 0 48 384 28
8 2e8c  (2^{2})2^{7}3  16 6 0 32 416 28
∗ 8 2e8d (2^{2})2^{13}3^{2}7^{2}  16 6 0 224 32 28
8 2e8e  (2^{2})2^{13}3^{2}  16 6 0 96 288 28
8 2e8f  (2^{2})2^{9}3^{2}7  7,1,8 6 0 120 240 28
8 2e8g  (2^{2})2^{9}3  6,2,8 6 0 56 368 28
8 2e8h  (2^{2})2^{12}3  16 6 0 32 416 28
8 2e8i  (2^{2})2^{8}3  4,4,8 6 0 24 432 28
8 2e8j  (2^{2})2^{10}3 · 7  16 8 0 0 480 28

ALL ℤ_{4} CODES OF TYPE II AND LENGTH 16 ARE KNOWN 17

Appendix B: Generator Matrices

5 f5 = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 \\ 1 & 0 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 0 \\ 1 & 1 & 0 & 1 & 0 & 0 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 1 & 0 & 0 \\ 1 & 1 & 1 & 0 & 1 & 0 & 1 & 0 & 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 0 & 2 & 2 & 0 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 2 & 2 & 2 & 2 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 2 & 2 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 2 & 2 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 2 & 0 & 2 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 2 & 0 & 0 & 2 & 2 \end{matrix} ]

6 4d4c = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 3 & 3 & 3 & 1 & 1 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 1 & 2 & 2 & 2 & 2 \\ 0 & 0 & 0 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 2 & 2 & 1 & 2 & 2 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 & 2 & 2 & 2 & 1 & 2 & 2 \\ 1 & 1 & 0 & 1 & 1 & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 0 \\ 1 & 0 & 1 & 1 & 0 & 1 & 1 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 2 & 0 & 2 & 0 \\ 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 2 & 0 & 2 & 0 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 2 & 0 & 0 & 2 & 2 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 2 & 0 & 0 & 2 & 0 & 2 \end{matrix} ]

7 2d8g = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 3 & 3 & 3 & 3 & 3 & 1 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 1 & 0 & 2 & 0 & 2 & 0 \\ 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 2 & 2 & 1 & 0 & 2 & 0 & 0 \\ 1 & 1 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 1 & 2 & 2 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 & 2 & 0 & 2 & 2 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 1 & 0 & 1 & 0 & 2 & 0 & 2 & 2 & 1 & 0 \\ 1 & 0 & 1 & 1 & 1 & 1 & 0 & 1 & 1 & 2 & 2 & 2 & 2 & 2 & 2 & 1 \\ 0 & 0 & 0 & 0 & 2 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 2 & 0 & 0 & 2 \\ 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 0 & 2 & 0 & 0 & 0 & 2 & 2 & 0 \end{matrix} ]

8 d16g = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 3 & 3 & 3 & 3 & 3 & 3 & 1 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 2 & 1 & 0 & 0 & 0 & 2 & 2 & 0 \\ 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 2 & 2 & 1 & 0 & 2 & 0 & 0 & 0 \\ 1 & 1 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 2 & 2 & 1 & 0 & 0 & 2 & 0 \\ 1 & 1 & 0 & 0 & 0 & 1 & 0 & 0 & 0 & 2 & 0 & 2 & 1 & 2 & 0 & 0 \\ 1 & 1 & 0 & 0 & 0 & 0 & 1 & 0 & 2 & 0 & 2 & 2 & 0 & 1 & 0 & 0 \\ 1 & 1 & 0 & 0 & 0 & 0 & 0 & 1 & 0 & 0 & 2 & 0 & 2 & 2 & 1 & 0 \\ 1 & 0 & 1 & 1 & 1 & 1 & 1 & 1 & 2 & 2 & 2 & 2 & 2 & 2 & 2 & 1 \end{matrix} ]

8 2e8j = [ \begin{matrix}1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 1 & 3 & 3 & 3 & 3 & 3 & 3 & 3 \\ 0 & 1 & 1 & 1 & 0 & 0 & 0 & 0 & 2 & 1 & 0 & 0 & 2 & 0 & 0 & 2 \\ 1 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 2 & 1 & 0 & 0 & 0 & 2 & 2 \\ 1 & 1 & 0 & 1 & 0 & 0 & 0 & 0 & 2 & 2 & 2 & 1 & 2 & 2 & 0 & 0 \\ 1 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 2 & 0 & 1 & 2 & 2 & 0 \\ 0 & 0 & 0 & 0 & 1 & 1 & 1 & 0 & 2 & 0 & 0 & 2 & 2 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & 1 & 1 & 0 & 1 & 0 & 0 & 2 & 0 & 2 & 2 & 1 & 0 \\ 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1 & 2 & 2 & 2 & 0 & 0 & 2 & 2 & 1 \end{matrix} ]

References

[1] A. Bonnecaze, P. Sole, Quaternary type II codes, to appear.

[2] J.H. Conway, N.J.A. Sloane, Self-Dual Codes over the Integers Modulo 4, J. Comb. Theory A 62 (1993), 31-45.

[3] P. Gaborit, Mass Formulas for Self-Dual Codes Over ℤ_{4} and 𝔽 + u𝔽_{q} Rings, IEEE Trans. Inform. Theory IT42 n. 4 (1996), 1222-1228.

[4] Jeffrey S. Leon, Permutation Group Algorithms Based on Partitions, I: Theory and Algorithms, J. Symbolic Computation. 12 (1991), 533-583.

[5] Jeffrey S. Leon, Partitions, Refinements, and Permutation Group Computations, Proc. DIMACS Workshop on Groups and Computation, to appear.

[6] V. Pless, A Classification of Self-Orthogonal Codes over GF(2), Discrete Math. 3 (1972), 209-246.

[7] V. Pless, Parents, Children, Neighbors and the Shadow, Contemporary Math. 168 (1994), 279-290.