Codes over Z2k , Gray map and Self-Dual Codes Steven T. Dougherty and Cristina Fern´andez-C´ordobaa,b a

b

Department of Mathematics University of Scranton Scranton, PA 18510 USA [email protected] Department of Information and Communications Engineering Universitat Aut` onoma de Barcelona 08193-Bellaterra, Spain [email protected]

Abstract The generalized Gray map is defined for codes over Z2k . We give bounds for the dimension of the kernel and the rank of the image of a code over Z2k with a given type and show that there exists such a code for each dimension in the interval for the kernel. We determine when the Gray image of a code over Z2k generates a linear self-dual code and give families of codes whose image generate binary self-dual codes. We investigate the Gray image of quaternary self-dual codes and examine when the Gray image of a self-dual code over Z4 is a binary self-dual code. Keywords: Z2k -codes, self-duality, Gray map 1. Introduction Since the paper by Hammons et al. [10] the study of codes over rings has greatly intensified. Numerous papers have dealt with various aspects of coding theory for codes over rings. In this paper, we shall be interested in codes over Z2k and the images of these codes under the Gray map. Let Z2k be the integers modulo 2k . A code C over Z2k , or Z2k code, of length n is a subset of Zn2k . If the code is a submodule then we say that the code is a linear code (over Z2k ). If C is a code over Z2k , then hCi is the code over Z2k spanned by the vectors in C. If v, w ∈ Zn2k , v = (v1 , . . . , vn ), w = (w1 , . . . , wn ), we define vw as the component-wise product Preprint submitted to Advances in Mathematics of Communications

October 4, 2011

(v1 w1 , . . . , vn wn ). To the ambient space Zn2k we adjoin the standard inner P product, namely hv, wi2k = vi wi (mod 2k ). We define the orthogonal of C to be C ⊥ = {v |hv, wi2k = 0 for all w ∈ C}. Note that if C is not linear, then C ⊥ = hCi⊥ . A code is said to be self-orthogonal if C ⊆ C ⊥ and self-dual if C = C ⊥ . The Hamming distance of two vectors c, v ∈ Zn2k , denoted by dH (c, v), is the number of coordinates in which they differ and the Hamming weight of a vector c ∈ Zn2k , denoted by wtH (c), is simply the number of non-zero coordinates. The minimum Hamming weight of a code C is denoted by dH (C). For linear codes the minimum Hamming distance coincides with the minimum distance but not necessarily for non-linear codes. The Hamming weight enumerator is defined to be X W HC (x, y) = xn−wtH (c) y wtH (c) . (1) c∈C k The Lee weight is defined by wtL : Z2k −→ Z2k , wtL (i) = min{i, P 2 − i}. n The Lee weight of a vector v = (v1 , . . . , vn ) ∈ Z2k is wtL (v) = wtL (vi ) ∈ Z2k . This weight will be the Hamming weight of the image under the Gray map φ defined below. Any vector with Lee weight congruent to 0 modulo 4 is said to be doubly-even. The minimum Lee weight of a code C is denoted by dL (C). Let 1i denote the all-one vector of length i and let 0i denote the all zero k−1 vector of length i. Then we define the Gray map φ : Z2k → Z22 by  02k−1 −i 1i 0 ≤ i ≤ 2k−1 . (2) φ(i) = 12k−1 + φ(i − 2k−1 ) i > 2k−1

This Gray map is extended to Zn2k coordinate-wise, that is φ(v1 , v2 , . . . , vn ) = (φ(v1 ), φ(v2 ), . . . , φ(vn )). This Gray map is then an isometry from Z2k with the Lee weight to its Gray image which is a a subset of the binary space with the Hamming weight. Note that for k = 2 the Gray map is the usual Gray map defined in [10]. In that case, it is a bijection from Zn4 to Z2n 2 but for k > 2 the map is an injection but not a bijection. There are different ways of giving a generalization of a Gray map; for instance, Carlet gives in [4] a generalization k−1 of a Gray map from Zn2k to Z22 n . Moreover, in [17], there is a generalization k−2 of the Gray map from Zn2k to Z42 n . The generalization given in (2) has the properties that φ is one-to-one and dH (φ(i), φ(i + 1)) = 1, for all i ∈ Z2k . 2

Moreover, in [2] and [3] it was proved that this Gray map is unique, up to permutation of coordinates, satisfying the previous properties and the fact that dH (φ(i), φ(i + j)) = wtL (j), for all i, j ∈ Z2k . In general, we shall denote non-binary codes by C and their binary images under the Gray map by C. If C is a linear code over Z2k of length n, then the binary code C = φ(C) of length N = kn is called Z2k -linear code and, in general, it is not a linear code over Z2 . Let C be a binary code. If C is linear, then we say that C is an [N, m, d] code, where m is the dimension of C and d is the minimum distance. If C is not linear, we say that C is an (N, M, d) code, where M is the number of codewords of C. For a code C over Z2k the symmetric weight enumerator is defined to be X Y n (c) (3) sweC (x0 , x1 , . . . , x2k−1 ) = xi i , c∈C

where ni (c) = |{i | ci = ±i}|. The Lee weight enumerator for a code C over Z2k is defined to be X W LC (x, y) = xn−wtL (c) y wtL (c) . (4) c∈C

MacWilliams relations for these weight enumerators can be found in [16] and [19]. k−1 It is immediate that W LC (x, y) = sweC (x, y, y 2 , y 3 , . . . , y 2 ). Moreover, from the definition we have W LC (x, y) = W Hφ(C) (x, y). A code is said to be formally self-dual with respect to that weight enumerator if it and its dual have the same weight enumerator. For example, the codes h(1, 3)i and h(1, 5)i over Z8 are formally self-dual with respect to the Lee weight enumerator but not with respect to the symmetric weight enumerator. It is of interest to understand what the Gray image of a self-dual code is and, especially, when its Gray image is or generates a self-dual code. The minimum Z4 self-dual code < 2 > has a binary linear self-dual Gray image {00, 11} which is a binary self-dual code. In Section 4, we will see the construction of some families of Z4 self-dual codes whose Gray images are binary self-dual codes. For self-dual codes over Z2k , the usual notion of Type II and Type I is with respect to Euclidean weight [1],[15]. In this paper, we shall only be concerned with types related to the Lee weight. 3

Let C be a binary self-dual code. C is said to be Type II if the Hamming weights of all vectors are congruent to 0 modulo 4. It is easy to tell from a generator matrix if the binary code is Type II, because the sum of two orthogonal doubly-even vectors is doubly-even. For Z2k , k ≥ 2 the sum of two orthogonal doubly-even vectors in general is not a doubly-even vector since, for example, (1, 1, 1, 1, 0, 0) and (1, 2k − 1, 0, 0, 1, 1) in Z2k both have Lee weight 4 and are orthogonal but the sum is (2, 0, 1, 1, 1, 1) which has Lee weight 6 6≡ 0 (mod 4). However, there are Z4 self-dual codes where the Lee weights are all congruent to 0 modulo 4; for example, the quaternary linear code, generated by the vectors {(1, 1, 1, 1), (0, 2, 0, 2), (0, 0, 2, 2)}, which has Gray image the Type II [8, 4, 4] Hamming code. We define a code C over Z2k where all vectors have Lee weight congruent to 0 modulo 4 as being doublyeven and if the code is self-dual, then we say it is Type II. If a self-dual code over Z2k is not Type II, we say it is Type I. 2. Codes over Z2k In this section, we shall examine codes over Z2k and when binary selforthogonal and self-dual codes can be constructed via the Gray map. 2.1. Generating matrices and independence For linear codes over fields there exists a basis since they are vector spaces. For a linear code over a ring you cannot give a basis but you can give a minimal generating set. Namely, any linear code C over Z2k of length n has a generator matrix which is permutation equivalent to a matrix of the form (see [1]):   Iδ0 A0,1 A0,2 A0,3 · · · ··· A0,k  0 2Iδ1 2A1,2 2A1,3 · · ·  ··· 2A1,k    0  0 4Iδ2 4A2,3 · · · ··· 4A2,k  .  .. .. G= . (5) .. .. . . . . 0 .  .   .  .. .. .. .. .. ..  ..  . . . . . . k−1 k−1 0 0 0 ··· 0 2 Iδk−1 2 Ak−1,k The matrix G is said to be in standard form and such a code C is said to have type {δQ 0 , δ1 , . . . , δk−1 }. It is immediate that a code C with this generator k−i δi matrix has k−1 ) vectors. It follows that the type of C ⊥ is {n − i=0 (2 Pk−1 i=0 δi , δk−1 , δk−2 , . . . , δ1 }, where n is the length of the code. If δi = 0 for 4

i > 0 the code is said to be a free code. If C is a code over Z4 of type {δ0 , δ1 }, then C is also called a quaternary code of type 2δ1 4δ0 as in [10]. P We say that a set of vectors {v1 , v2 , . . . , vs } are modular independent if αi vi = 0 implies that αi ∈ h2i for all i, where h2i is the maximal ideal of Z2k generated by 2. This is a specialization of a more general definition given in [7] where it is given for local rings and the requirement is that the coefficients are in the maximal ideal. For codes over Z2k a spanning set that is modular independent is a minimal spanning set, see [13], [7] for a description. The vectors in a generator matrix in standard form are obviously modular independent. Notice that for codes over Zm where m is not a prime power the situation is quite different. Specifically, because Z2k is a chain ring, the code has a generator matrix in standard form and modular independence is enough to guarantee a minimal generating set. On the other hand, Zm , m not a prime power is not a chain ring and hence modular independence is not enough to guarantee a minimal generating set (independence is required as well) and a standard form of the generator matrix does not exist, see [13] and [7] for a complete description. It is possible for modular independent vectors to have their images under the Gray map not be independent. For example, consider the modular independent vectors (1, 1, 2, 2), (1, 0, 3, 1), (0, 1, 1, 3) over Z4 . The Gray map images of these vectors are (0, 1, 0, 1, 1, 1, 1, 1), (0, 1, 0, 0, 1, 0, 0, 1), (0, 0, 0, 1, 0, 1, 1, 0) which are not linearly independent. We define the following to express when some vectors over Z2k have linearly independent Gray images. Definition 1. Let v1 , v2 , . . . , vs be modular independent vectors in Zn2k . Then v1 , v2 , . . . , vs are said to be φ-independent if their images under the Gray map k−1 are linearly independent in Z22 n . We will say that the order of an element of Z2k or a vector in Z2k is of order r if the cyclic group it generates is of order r where the group operation is addition. Note that in the matrix (5), the vectors 1 . . . , δ0 are of order 2k , the vectors δ0 + 1, . . . , δ0 + δ1 are of order 2k−1 , and so on, until the last δk−1 vectors that are of order 2. Lemma 1. Let G be the generator matrix of a linear code of type {δ0 , δ1 , . . . , δk−1 } over Z2k in standard form as given in matrix (5). Let vi,1 , vi,2 , . . . , vi,δi be the vectors of order 2k−i . Then the vectors in the set {αvi,j | 1 ≤ α ≤ k−1 2k−i−1 } are φ-independent in Z22 n . 5

Proof: The Gray image of 1, 2, 3, . . . , 2k−1 form a lower triangular matrix and hence the Gray image of the vectors are linearly independent. The other cases of the form 2i Iδi form a submatrix of this matrix and hence are linearly independent.  Theorem 1. Let v1 , v2 , . . . , vs be modular independent vectors in Zn2k . Then there exist modular independent vectors v10 , v20 , . . . , vs0 which are φ-independent such that hv1 , v2 , . . . , vs i = hv10 , v20 , . . . , vs0 i. Proof: Any set of modular independent vectors over Z2k are permutation equivalent to a set of vectors that form a generator matrix in standard form, see [13]. Therefore by Lemma 1 these vectors are φ-independent.  It is possible for the Gray image itself to be a linear code whose dimension is the minimal dimension garenteed by Lemma 1. Consider, for example, the code generated by (2) over Z8 . It has type {0, 1, 0} and its Gray image is the binary self-dual code of length 4 with dimension 2. 2.2. Linearity of Z2k -linear codes Let C be a code over Z2k not necessarily linear. We define the rank of C, denoted rank(C), as the minimum number of generators of the linear code spanned by the codewords in C. That is rank(C) = dimhCi. Define the kernel of C, denoted K(C), as the set K(C) = {v| v ∈ C, v + C = C}. If C is a binary code, then rank(C) is the dimension of hCi. We are interested in the linearity of Z2k -linear codes. If C is a linear code over Z2k , then C = φ(C) is not necessarily linear and we can study the rank and the kernel of C. In the case of linear codes over Z4 , the linearity of their Gray image has been studied in [10] and later in [8] (also as a particular case of codes in [9]) where the possible values of the rank and the dimension of the kernel of a Z4 -linear code have been established. An optimal code with respect to a weight is a code whose minimum weight is the highest attainable for codes with those parameters. In this setting we are concerned with the Lee weight for codes over Z2k . As in the case for the Hamming weight over rings there is a useful Singleton bound which can be used to tell when a code is optimal, that is, any code meeting this bound is optimal for those parameters. 6

The following Singleton bound was proven in [16]. If C is a linear code over Z2k of length n then j d (C) − 1 k L ≤ n − rank(C). 2k−1

(6)

A code meeting this bound is said to be Maximum Distance with respect to Rank with the Lee weight, or Lee MDR. It is Lee MDS if it meets the stronger bound j d (C) − 1 k L ≤ n − log2k |C|. (7) 2k−1 If a linear code is Lee MDS then it is necessarily Lee MDR but the converse is not true. Consider the code C over Z2k generated by  k−2 k−2 k−2 k−2  2 2 2 2  0 2k−1 0 2k−1  . (8) k−1 k−1 0 0 2 2 The code has rank 3, length 4 and minimum Lee weight 2k , giving that it is a Lee MDR code. Hence non-trivial Lee MDR codes exists over Z2k for all k ≥ 2. The code has symmetric weight enumerator: swe(x0 , x1 , . . . , x2k−1 ) = x40 +8x42k−2 +6x20 x22k−1 +x42k−1 . The binary Gray image C = φ(C) is a linear code k k+1 of length 2k+1 with Hamming weight enumerator W HC (y) = 1+14y 2 +y 2 . Proposition 1. Let C be a linear code over Z2k . If v has order greater than 4 then K(φ(C)) does not contain φ(v). Proof: Let i ∈ Z2k , i < 2k−1 with the order of i equal to 2s , then we have φ(i) = 02k −2k−s 12k−s . If the order of i is greater than 4, then s > 2 and 2i 6= 2k−1 . If 0 < 2i < 2k−1 , then φ(i) + φ(2i) = 02k−1 −i 1i + 02k−1 −2i 12i = 02k−1 −2i 1i 0i . If 2k−1 < 2i < 2k , then φ(i) + φ(2i) = 02k−1 −i 1i + 12k −2i 02i−2k−1 = 12k−1 −i 02k−1 −i 12i−2k−1 . In any case, φ(i) + φ(2i) does not belong to φ(Z2k ). 7

Therefore, φ(2i) = 02k −2k−s+1 12k−s+1 and φ(i)+φ(2i) = 02k −2k−s+1 12k−s 02k−s which does not belong to φ(Z2k ). Let v = (v1 , . . . , vn ) ∈ C with v of order greater than 4. Let i be in {1, . . . , n} such that vi has order greater than 4 in Z2k . Then either vi or −vi is less than 2k−1 and hence φ(v) + φ(2v) or φ(−v) + φ(−2v) is not in φ(C) and φ(v) is not in K(φ(C)).  Corollary 1. Let C be a linear code over Z2k with generator matrix of the form given in (5). Then K(φ(C)) is contained in the Gray image of the code generated by the matrix:  k−2 2 Iδ0 2k−2 A0,1 2k−2 A0,2 2k−2 A0,3 ··· ··· 2k−2 A0,k  0 2k−2 Iδ1 2k−2 A1,2 2k−2 A1,3 ··· ··· 2k−2 A1,k   0 0 2k−2 Iδ2 2k−2 A2,3 ··· ··· 2k−2 A2,k  .. .. .. .. ..  . . . . . 0   .. . . . .. .. ..  .. .. .. . . . .  k−2 k−2 k−2  0 0 0 ··· 2 Iδ 2 Ak−2,k−1 2 Ak−2,k k−1

0

0

0

···

0

2k−1 Iδk−1

2k−1 Ak−1,k (9)

There are some similarities between the behavior of the image under the Gray map of quaternary vectors and the image of vectors of the form 2k−2 u ∈ Zn2k , where u ∈ Zn2k . First, note that we can write 2k−2 u = 2k−2 u0 , where u0 = (u01 , . . . , u0n ) ∈ Zn2k satisfies u0i ∈ {0, 1, 2, 3}, for i = 1 . . . , n. Moreover, φ(2k−2 u0 ) is a binary vector in {{0, 1}2k−2 × {0, 1}2k−2 }n that corresponds to φ(u0 ) replacing each coordinate 0 by 02k−2 and each coordinate 1 by 12k−2 . The following Lemmas give some results related to this property that will be used to determine the kernel and the rank of Z2k -linear codes. k−2

Lemma 2. Let R2k−2 : Z2 → Z22 , k ≥ 2, be the function that replaces 0 k−2 by 02k−2 and 1 by 12k−2 and let R2k−2 : Zn2 → Z22 n be the component-wise n function. Then R2k−2 is an additive function and, for v ∈ Z42 , (n even), φ(2k−2 ι(v)) = R2k−2 (φ(v)), m where ι the identity map from Zm 4 to Z2k , that is the identity map applied coordinate-wise.

8

      .    

Proof:

The fact that it is additive follows from the definition. Then

φ(2k−2 ι(0)) = φ(0) = 02k−1 = R2k−2 ((0, 0)) = R2k−2 (φ(0)) φ(2k−2 ι(1)) = φ(2k−2 ) = 02k−2 12k−2 = R2k−2 ((0, 1)) = R2k−2 (φ(1)) φ(2k−2 ι(2)) = φ(2k−1 ) = 12k−1 = R2k−2 ((1, 1)) = R2k−2 (φ(2)) φ(2k−2 ι(3)) = φ(32k−2 ) = 12k−2 02k−2 = R2k−2 ((1, 0)) = R2k−2 (φ(3)). Applying this coordinate-wise gives the result.



Lemma 3. Let u, v ∈ Zn2k . Then, φ(2k−2 u) + φ(2k−2 v) = φ(2k−2 (u + v)) + φ(2k−1 uv). Proof: It is easy to see that φ(2k−2 u) + φ(2k−2 v) = φ(2k−2 ι(u0 )) + φ(2k−2 ι(v 0 )) for some u0 v 0 ∈ Zn4 . By Lemma 2 φ(2k−2 ι(u0 )) + φ(2k−2 ι(v 0 )) = R2k−2 (φ(u0 ) + φ(v 0 )) and this is equal to R2k−2 (φ(u0 + v 0 ) + φ(2u0 ? v 0 )), due to the properties of quaternary vectors [10]. Finally by applying again Lemma 2 and the fact that ι is an additive function we get the equality.  Let C be a linear code over Z2k with generator matrix of the (5). Then the Gray image of the code generated by  2k−1 A0,1 2k−1 A0,2 2k−1 A0,3 · · · ··· 2k−1 A0,k 2k−1 Iδ1 2k−1 A1,2 2k−1 A1,3 · · · ··· 2k−1 A1,k   0 2k−1 Iδ2 2k−1 A2,3 · · · ··· 2k−1 A2,k   .. .. ... ...  . 0 .   .. .. .. .. .. ..  . . . . . . k−1 k−1 0 0 ··· 0 2 Iδk−1 2 Ak−1,k (10) is a linear subcode of K(φ(C)).

Theorem 2. form given in  k−1 2 Iδ0  0   0  ..  .   ..  . 0

Proof: We have that φ(2k−1 ) = 12k−1 . Then we have that φ(2k−1 v) + φ(w) = φ(2k−1 v + w) ∈ φ(C) for all v, w ∈ C.  Theorem 3. Let C be a linear code over Z2k of type {δ0 , δ1 , . . . , δk−1 }. If m = dim(K(φ(C))), then m∈

k−1 nX i=0

δi ,

k−1 X i=0

δi + 1, . . . ,

k−1 X i=0

δi + δk−2 − 2,

k−1 X

o δi + δk−2 .

i=0

Moreover, there exist such a code C for any m in the interval. 9

Proof: From Theorem 2, the image of every codeword of order 2 is in the kernel of φ(C). If there is a codeword v of order greater than 4, then φ(v) does not belong to the kernel. Moreover, if φ(v) does not belong to the kernel, then φ(λv) belongs to the kernel if and only if λv has order 2, otherewisenφ(v) + φ(λv) is not in φ(C). That way, if m = dim(K(φ(C))), o Pk−1 Pk−1 Pk−1 Pk−1 then m ∈ δ , δ + 1, . . . , δ + δ − 2, δ + δ . i i i k−2 i k−2 i=0 i=0 i=0 i=0 Pk−1 Consider the values δ0 , . . . , δk−1 and m = i=0 δi +s, where s ∈ {0, . . . δk−2 }. From [9], there exists a code C4 over Z4 of type 4δk−2 2δk−1 and generator matrix   Iδk−2 A B , 0 2Iδk−1 2T with dim(φ(C4 )) = δk−1 +s. Then, the code C over Z2k with generator matrix   Iδ0 0 0 ··· ··· 0  0 2Iδ 0 ··· ··· 0  1    ..  .. .. ... ... ...  .  . .   k−2 k−2 k−2  0 0 · · · 2 Iδk−2 2 A 2 B  0 0 ··· 0 2k−1 Iδk−1 2k−1 T is of type {δ0 , δ1 , . . . , δk−1 } and dim(K(φ(C))) = m by [9] and Lemma 3.  Example 1. Let Cm be a code of length 10 over Z8 of type {3, 4, 1}, then by Theorem 3 the dimension of K(φ(Ck )) belongs to {8, 9, 10, 12}. Define the generator matrix of Cm as   I3 0 0 0 Gm =  0 2I4 0 Bm  , 0 0 4I1 0 where Bm is constructed as follows: B12 = (0),     1 0 1 0  1 0     , B9 =  1 1  , B10 =   0 0   0 1  0 0 0 0



1  1 B8 =   1 1

With this construction, the dimension of K(φ(Ck )) is m.

10

 0 1  . 1  0

Theorem 4. Let C be a linear code over Z2k . Then φ(C) is linear if and only if C is permutation equivalent to a code with generator matrix of the form   k−2 2k−2 A 2k−2 B 2 Iδk−2 , (11) 0 2k−1 Iδk−1 2k−1 T where A, B and T are matrices over Z2k with all entries in {0, 1} ⊂ Z2k , and also the linear code C4 over Z4 of type 4δk−2 2δk−1 generated by the matrix   Iδk−2 A B , (12) 0 2Iδk−1 2T satisfies the condition that φ(C4 ) is linear. Proof: By Theorem 3, if φ(C) is linear, then C is of type {0, . . . , 0, δk−2 , δk−1 }, k > 2, and therefore C is permutation equivalent to a code with generator matrix of the form (11). By Lemma 2, it is clear that the image under the Gray map of the code over Z2k generated by the matrix (11) is linear if and only if the image under the Gray map of the quaternary code generated by (12) is linear.  Define ei to be the vector with a 1 in the i-th coordinate and a 0 elsewhere. Lemma 4. Let S = {φ(a) + φ(b) + φ(a + b) | a, b ∈ Z2k \ {0}}. Then, hSi has dimension 2k−1 − 1. Proof: Notice that if a ≤ 2k−1 then φ(a+2k−1 )+φ(b)+φ(a+2k−1 +b) = φ(a) + φ(b) + φ(a + b). This follows since φ(a + 2k−1 ) = φ(a) + 12k−1 and φ(a + 2k−1 + b) = φ(a + b) + 12k−1 and the sum of the two all one vectors is the zero vector. Therefore, we can assume a, b ≤ 2k−1 and a > b. Then, φ(a) + φ(b) + φ(a + b) is (02k−1 −a−b , 1b , 0a−b , 1b ), if a + b ≤ 2k − 1 and is (12k−1 −a , 0a−b , 12k−1 −a , 0a+b−2k−1 ) otherwise. It is easy to check that hSi = h{ei + e2k−1 }i=1,...,2k−1 −1 i and therefore hSi has dimension 2k−1 − 1.



Theorem 5.PLet C be a linear code of length n over Z2k of type {δ0 , δ1 , . . . , δk−1 } and s = n − k−1 i=0 δi . If r is the dimension of hφ(C)i, then r∈{

k−1 X i=0

k−(i+1)

2

δi ,

k−1 X

k−(i+1)

2

k−1

δi + 1, . . . , 2

i=0

δ0 + (2

k−1

k−1 X − 1)(( δi ) + s)}. i=1

11

Proof:

Let G be the generator matrix of C in standard form   Iδ0 A0,1 A0,2 ···  0 2Iδ 2A1,2  ··· 1   G =  .. A . .. .. . .  .  . . . k−1 0 0 · · · 2 Iδk−1

Denote by vi,1 , . . . , vi,δi the row vectors of G of order 2k−i . By Lemma 1, the vectors in the set {φ(αvi,j ) | 1 ≤ α ≤ 2k−i−1 } are independent and hence P k−(i+1) the dimension of hφ(C)i is at least k−1 δi . Note that if A and Ai,j i=0 2 are the zero matrices, for i ∈ {0, . . . , k − 2}, j ∈ {1, . . . , k − 1}, then the Pk−1 2k−(i+1) δi . dimension of hφ(C)i is precisely i=0 Let G0 be a generator matrix of φ(C). After linear combinations of the rows of G0 , we can consider the following triangular generator matrix   B1 ∗ ∗ · · ·  0 B2 ∗ · · ·     .. .. . . ..  ,  . . . .  0 0 · · · Bn where Bi is a binary di × 2k−1 matrix, di ≥ 0, corresponding to the image of Pn the i-th coordinate. Note that dim(hφ(C)i) = i=1 di . Clearly, for all j ∈ {1, · · · , δ0 }, the binary vectors {φ(αv0,j )}α≤2k−1 are independent and dj = 2k−1 . Consider j ∈ {δ0 + 1, . . . , n}. Assume we have at least two vectors with coordinate j equal to 1. To get the maximum rank, we can assume that ei + ej and ek + ej are codewords in C, for some i, k ∈ {1, · · · , δ0 }. Since φ(α(ei + ej )) + φ(β(ek + ej )) + φ(α(ei + ej ) + β(ek + ej )) is exactly φ(αej ) + φ(βej ) + φ((α + β)ej ), then by Lemma 4, dj ≤ 2k−1 − 1. P 0 k−1 Pn Therefore, dim(hφ(C)i) ≤ δj=1 2 + j=δ0 +1 2k−1 −1 and the statement follows.  Example 2. If Cr is a code of length 7 over Z8 of type {3, 2, 1}, then by Theorem 5 the dimension r of hφ(Cr )i belongs to the set {17, . . . , 24}. Define

12

the generator matrix  1 0 0  0 1 0   0 0 1 G17 =   0 0 0   0 0 0 0 0 0 

G19

   =   



G21

   =   



G23

   =   

of Cr as Gr , where   0 0 0 0 1 0 0   0 0 0 0   0 1 0   0 0 1 0 0 0 0  , G18 =    0 0 0 2 0 0 0    0 0 0 0 2 0 0  0 0 4 0 0 0 0

1 0 0 0 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 2 0 0

0 1 0 0 2 0

0 0 0 0 0 4

0 0 0 0 0 0



1 0 0 0 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 2 0 0

0 1 0 0 2 0

1 0 1 2 0 4

0 0 0 0 0 0



1 0 0 0 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 2 0 0

0 1 0 0 2 0

0 1 1 2 0 4

1 0 0 0 2 0





   ,   

G20

   =   



   ,   

G22

   =   



   ,   

G24

   =   

1 0 0 2 0 0

0 0 0 0 2 0

0 0 0 0 0 4

0 0 0 0 0 0

    ,   

1 0 0 0 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 2 0 0

0 1 0 0 2 0

0 0 1 2 0 4

0 0 0 0 0 0



1 0 0 0 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 0 0 2 0 0

0 1 0 0 2 0

1 0 1 2 0 4

0 0 0 0 2 0



1 0 0 0 0 0

0 1 0 0 0 0

0 0 1 0 0 0

1 1 0 2 0 0

0 1 1 0 2 0

1 0 1 2 0 4

1 0 1 0 2 0



   ,   

   ,   

   .   

With this construction, the dimension of hφ(Cr )i is r. Hence every possible value of dimension of hφ(C)i is obtained. Example 3. If Cr is a code of length 7 over Z8 of type {2, 3, 1}, then by Theorem 5 the dimension r of hφ(Cr )i belongs to {15, . . . , 23}. Define the

13

generator matrix of Cr as Gr ,  1 0 0 0 0 0  0 1 0 0 0 0   0 0 2 0 0 0 G15 =   0 0 0 2 0 0   0 0 0 0 2 0 0 0 0 0 0 4 

G17

   =   



G20

   =   

where  0 0   0  , 0   0  0

1 0 0 0 0 0

0 1 0 0 0 0

1 0 2 0 0 0

0 1 0 2 0 0

0 0 0 0 2 0

0 0 0 0 0 4

0 0 0 0 0 0



1 0 0 0 0 0

0 1 0 0 0 0

1 0 2 0 0 0

0 1 0 2 0 0

1 0 0 0 2 0

1 1 0 0 0 4

0 0 0 0 0 0





1 0 0 0 0 0

0 1 0 0 0 0

G22

   =   



G16

1 0 0 0 0 0

0 1 0 0 0 0

1 0 2 0 0 0

0 0 0 2 0 0

0 0 0 0 2 0

0 0 0 0 0 4

0 0 0 0 0 0



1 0 0 0 0 0

0 1 0 0 0 0

1 0 2 0 0 0

0 1 0 2 0 0

1 0 0 0 2 0

0 0 0 0 0 4

0 0 0 0 0 0



0 1 0 0 0 0

1 0 2 0 0 0

0 1 0 2 0 0

1 0 0 0 2 0

1 1 0 0 0 4

0 0 0 0 2 0



   =   

1 0 0 0 0 0

1 0 0 0 2 0

0 1 0 0 2 0



   =   



   ,   

G18

   =   



   ,   

G21

1 0 2 0 0 0

0 1 0 2 0 0

1 1 0 0 0 4

   ,   

   ,   

   ,   

   .   

With this construction, the dimension of hφ(Cr )i is r. In this example, it is a straightforward computation to see that it is not possible to obtain rank equal to 19 or 23. 2.3. Self-duality of Z2k -linear codes Let C be a linear code over Z2k . We define the Z2k -dual of φ(C) to be the code φ(C ⊥ ). Note that the binary codes φ(C) and φ(C ⊥ ) are formally dual 14

but not necessarily dual. We have the following diagram φ

C −−−→ φ(C)   ⊥y

(13)

φ

C ⊥ −−−→ φ(C ⊥ ) which is not a commuting diagram in general. First, as we have seen in the previous section, in general φ(C) is not linear, but we have that φ(C)⊥ = hφ(C)i⊥ with hφ(C)i = 6 φ(C) which gives that the diagram does not commute. Second, even in the case where φ(C) is linear, in general φ(C)⊥ 6= φ(C ⊥ ). If C is a self-dual code, then if the last diagram does not commute, φ(C) is not a self-dual code. Conversely, we can obtain self-dual Z2k -linear codes, with φ(C) = φ(C)⊥ but where C 6= C ⊥ . From Theorem 4, if C is a self-dual code over Z2k of type {δ0 , δ1 , . . . , δk−1 }, where k > 2 and δi > 0 for some i < k − 2, then φ(C) is not linear and, hence, it is not self-dual. We will see that, in fact, the binary image of a self-dual code over Z2k is self-dual only if k ≤ 2. Theorem 6 ([3]). Let C and C ⊥ be dual Z2k -codes of length n. Then the weight enumerators W Hφ(C) (x, y) and W Hφ(C ⊥ ) (x, y) of φ(C) and φ(C ⊥ ) respectively, are related by the binary MacWilliams identity W Hφ(C ⊥ ) (x, y) =

1 W Hφ(C) (x + y, x − y) |φ(C)|

if and only if k = 1, 2; that is, φ(C) is linear or Z4 -linear. Corollary 2. If C is a self-dual code of length n over Z2k and C = φ(C) is a binary self-dual code, then k = 1, 2. The self-duality of Z4 -codes will be studied in Section 3. In view of Corollary 2, in order to study binary Z2k -linear self-dual codes, we are going to consider codes over Z2k that are not self-dual.

15

Lemma 5. Let C be a code over Z2k of type {δ0 , δ1 , . . . , δk−1 } with generator matrix of the form   Iδ0 A0,1 A0,2 A0,3 · · · ··· A0,k  0 2Iδ1 2A1,2 2A1,3 · · ·  ··· 2A1,k    0  0 4Iδ2 4A2,3 · · · ··· 4A2,k  .  .. .. (14) .. ..  . . . . . 0 .  .   .  .. .. .. .. .. ..  ..  . . . . . . k−1 k−1 0 0 0 ··· 0 2 Iδk−1 2 Ak−1,k Let C 0 be the code generated  2Iδ0 2A0,1 2A0,2  0 2Iδ1 2A1,2   0 0 4Iδ2  . ..  . . 0  .  . . .. ..  .. . 0 0 0

by 2A0,3 2A1,3 4A2,3 .. . .. . ···

··· ··· 2A0,k ··· ··· 2A1,k ··· ··· 4A2,k .. .. . . .. .. .. . . . k−1 k−1 0 2 Iδk−1 2 Ak−1,k

     .   

(15)

Then hφ(C 0 )i is a binary self-orthogonal code. Let C 00 be the code generated by   4Iδ0 4A0,1 4A0,2 4A0,3 · · · ··· 4A0,k  0  4Iδ1 4A1,2 4A1,3 · · · ··· 4A1,k    0  0 4I 4A · · · · · · 4A δ 2,3 2,k 2  .  .. .. (16) .. ..  . . . . . . 0  .   .  .. .. .. .. .. ..  ..  . . . . . . k−1 k−1 0 0 0 ··· 0 2 Iδk−1 2 Ak−1,k Then hφ(C 00 )i is a binary doubly-even self-orthogonal code. Proof: It is clear that the Gray image of any two vectors in C 0 have hφ(v), φ(w)i2 = 0 for any vectors v, w ∈ C 0 . So the image generates a selforthogonal code. The Lee weights of all the vectors in C 00 are doubly-even and we have that the image is a binary doubly-even code.  Note that if C is a code over Z4 , then φ(C 0 ) is a linear code as well. However, in general this is nottrue. For example, consider the code C over Z8 gen 1 0 1 3 erated by . If C 0 = φ(C 0 ) then φ((2, 0, 2, 6)) + φ((0, 2, 6, 4)) 6∈ 0 2 6 4 C 0 and so C 0 is not linear. 16

Over Z4 we were interested in the situation where φ(C) is a self-dual binary code. For k > 2 this is rarely the case since by Lemma 1 the size of the code generated by φ(C) is often larger than the image. Proposition 2. Let C be a code over Z2k of length n, with k > 2, such that φ(C) is linear. Then φ(C) is self-dual if and only if k = 3 and C is generated by the matrix (2In ). Proof: By Theorem 4, if φ(C) is linear, then C is of type {0, . . . , 0, δk−2 , δk−1 }, and it is generated by a matrix of the form  k−2  2 Iδk−2 2k−2 A 2k−2 B . 0 2k−1 Iδk−1 2k−1 T Since k > 2, the code C 00 , which is constructed as in (16), is equal to C. Therefore φ(C) is a binary doubly-even self-orthogonal code. Then, φ(C) is k−2 self-dual if and only if |C| = 22 n ; that is, 2δk−2 + δk−1 = 2k−2 n. However the left side of the equation is bounded above by 2n which is always less than 2k−2 n unless k = 2 or k = 3. If k = 3, then 2δk−2 + δk−1 = 2k−2 n if δk−1 = 0 and δk−2 = n. Hence C is generated by a matrix of the form (2In ).  In the next section we will examine the case when k = 2. For k > 2, then the code that we are interested in is hφ(C)i. Specifically, we have the following theorem. Theorem 7. Let C be a code of length n over Z2k of type {δ0 , δ1 , . . . , δk−1 }. If the image of the order 2k P vectors are self-orthogonal and orthogonal to k−1−i 0 δi = 2k−2 n then hφ(C)i is a binary the code C in Lemma 5 and k−1 i=0 2 k−1 self-dual code of length 2 n with basis {φ(αvi,j ) | 1 ≤ α ≤ 2k−i−1 } where {vi,1 , vi,2 , . . . , vi,δi } are the vectors of order 2k−i which generate C. Proof: The image of a code of length n over Z2k is a code of length 2 n over Z2 . The dimension of a self-dual code of this length is 2k−2 n. By Lemma 5 the code φ(C 0 ) is self-orthogonal. Hence if the order 2k vectors are 0 self-orthogonal Pk−1 k−1−i andk−2orthogonal to φ(C ) then hφ(C)i is self-orthogonal. Since δi = 2 n by Lemma 1 the dimension of hφ(C)i is at least 2k−1 n, i=0 2 which is the maximum dimension of a self-orthogonal code. This gives that hφ(C)i is a self-dual code.  For codes over Z8 the code h2i of length 1 gives a [4, 2, 2] binary selfdual code. The code h(1, 1)i of length 2 produces an [8, 4, 2] binary self-dual code. In Section 4, we shall give some families of codes that produce binary self-dual codes. k−1

17

3. Self-dual codes over Z4 In this section, we shall examine self-dual codes over Z4 and their images under the Gray map. It is of interest to understand what the Gray image of a self-dual code is and, especially, when its Gray image is a self-dual code. For quaternary self-dual codes of length n and type 2γ 4δ , it is immediate that 2δ + γ = n. Proposition 3. If C is a self-dual code over Z4 , then 2n ∈ C. Hence, if C is a binary code and 12n 6∈ C, then C is not the image of a self-dual code over Z4 . Proof: Let v ∈ C. Since C is self-dual we have that hv, vi4 = 0. This gives that there are an even number of odd coordinates. Therefore, for all v ∈ C, h2n , vi4 = 0 and 2n ∈ C ⊥ = C.  Lemma 6. Let C be a linear code over Z2k with generator set {w1 . . . , ws }. Then, C is a Z2k self-orthogonal code if and only if hwi , wj i2k ≡ 0 (mod 2k ), for all i, j ∈ {1, . . . , s}. Proof: If C is a Z2k self-orthogonal code, then hwi , wj i2k ≡ 0 (mod 2k ), for allPi, j ∈ {1, . . . , s}.PTo prove the conveAssumerse, let x, y ∈ C. We have s s k , y = x = i=1 νi wi , for some λi , νi ∈ Z2 , i = 1, . . . , s. Then, i=1 Pλsi wiP  hx, yi2k = i=1 sj=1 λi νj hwi , wj i2k ≡ 0 (mod 2k ). Let v, w ∈ Zn4 , i, j ∈ Z4 . We define the numbers Si,j (v, w) = |{k | vk = i, wk = j}|. Lemma 7. If v, w ∈ Zn4 , then hφ(v), φ(w)i2 = S1,1 (v, w) + S3,3 (v, w) + S2,±1 (v, w) + S±1,2 (v, w). Consider v = (v1 , . . . , vn ), w = (w1 , . . . , wn ) ∈ Zn4 . We have  0 if vi = 0, or wj = 0, or vi = −wj , hφ(vi ), φ(wj )i2 = 1 otherwise. P By definition, hφ(v), φ(w)i2 = i,j∈{1,...,n} hφ(vi ), φ(wj )i2 and the statement follows.  Proof: that

18

Lemma 8. Let C be a Z4 self-orthogonal code generated by {u1 , . . . , uγ , v1 , . . . , vδ }, where ui are codewords of order 2, for i = 1, . . . , γ and vj are codewords of order 4, for j = 1 . . . δ, whose Gray image is linear. Then φ(C) is self-orthogonal if and only if hφ(vi ), φ(vj )i2 ≡ 0 (mod 2), for all i, j ∈ {1, . . . , δ}. Proof: By [9], φ(C) is generated by S = {φ(u1 ), . . . , φ(uγ ), φ(v1 ), . . . , φ(vδ )}. By Lemma 6, φ(C) is self-orthogonal if and only if hwi , wj i2 ≡ 0 (mod 2) where wi , wj ∈ S. If φ−1 (wi ), φ−1 (wj ) are both of order 2, then clearly, hwi , wj i2 ≡ 0 (mod 2). Consider the case where φ−1 (wi ) is an order 2 codeword and φ−1 (wj ) is an order 4 codeword, then since these two vectors are orthogonal, S2,±1 (φ−1 (wi ), φ−1 (wj )) has to be even. Therefore, hwi , wj i2 = S2,±1 (φ−1 (wi ), φ−1 (wj )) ≡ 0 (mod 2). So, φ(C) is self-orthogonal if and only if hwi , wj i2 ≡ 0 (mod 2), where φ−1 (wi ) and φ−1 (wj ) are codewords of order 4.  As we can see in the following example, a self-dual code over Z4 can have a linear image without being self-dual. Example 4. The code D6⊕ (see [5] for notation) has generator matrix   1 1 1 3 0 0  0 0 1 1 1 3     2 0 2 0 2 0 . 0 0 0 0 2 2 The code has linear binary image but the image is not self-dual since the images of the first two rows are not orthogonal as binary vectors. In order to study the self-duality of Gray images of self-dual codes over Z4 , first we will determine when the image of a code over Z4 is linear and, afterwards, when it is self-dual. 3.1. Linear images of Z4 self-dual codes The linearity of Z4 -codes in general was studied in [8]. In this subsection, we shall determine when the image of a Z4 self-dual code is linear. Lemma 9. Any Z4 self-dual code C of type 2γ 4δ with δ ≤ 2 has binary linear Gray image. 19

Proof: Let C be a quaternary code of type 2γ 4δ , and let {u1 , . . . , uγ , v1 , . . . , vδ } be a set of generator codewords where ui are codewords of order 2 and vj are of order 4 codewords, where i ∈ {1, . . . , γ} and j ∈ {1, . . . , δ}. The binary code φ(C) is linear if and only if for all i, j ∈ {1, . . . , δ} we have 2vi vj ∈ C ([9]). Therefore, if δ = 0, 1, then φ(C) is a linear code. If δ = 2, let v1 and v2 be the vectors of order 4. It is immediate that h2v1 v2 , ui i4 = 0 and that h2v1 v2 , vi i4 = 0. Therefore 2v1 v2 ∈ C ⊥ = C. This gives that the image is linear.  Notice that when δ = 0 or 1 the result holds for any Z4 -linear codes but the case when δ = 2 is specific to self-dual codes. Example 5. The result in Lemma 9 is not true in general when δ > 3. For example, let C be the Z4 self-dual code of Type II and type 22 43 generated by the matrix     u1 0 0 0 0 2 2 2 0  u2   0 0 0 0 0 0 0 2       =  1 0 0 1 1 1 0 0 . v G= 1      v2   0 1 0 1 3 0 1 0  v3 0 0 1 1 0 3 3 0 Note that 2v1 v2 is not in the code and, therefore, the image under the Gray map is not linear. Proposition 4. Let C be a Z4 self-dual code of length n and type 2γ 4δ . If φ(C) is not linear, then 2n < |hφ(C)i| ≤ 2n+δ . Proof: By [9], |hφ(C)i| ≤ 2γ+2δ+s , where s = min{  min{ 2δ , δ} = δ.

δ 2

 , n − γ − δ} = 

3.2. Self-dual Gray images of Z4 self-dual codes In this subsection, we shall determine when the Gray image of a self-dual code over Z4 is a self-dual binary code. Theorem 8. Let C be a Z4 self-dual code with φ(C) linear. 1. If C is Type II, then φ(C) is a binary Type II code. 2. If C is Type I, then φ(C) is a formally self-dual code. 20

Proof: Let C be a Z4 self-dual code with φ(C) linear. If C is a Type II code over Z4 , it is enough to prove that φ(C) is selforthogonal. We have that φ(C) is a doubly-even linear code. So, if v, w ∈ φ(C), then v + w ∈ φ(C) and wtH (v + w) = wtH (u) + wtH (w) − 2wtH (u ? w). Hence, wtH (u ? w) ≡ 0 (mod 4) and hu, wi2 = 0. If C is Type I, C = C ⊥ and hence the weight enumerator of C is the weight enumerator of C ⊥ . From [10], we know that the weight enumerator of φ(C)⊥ and φ(C ⊥ ) coincide. Since the weight enumerator of φ(C ⊥ ) is equal to the weight enumerator of φ(C), we have that φ(C) is formally self-dual.  Corollary 3. If C is a Type II code of type 2γ 4δ with δ ≤ 2, then the diagram of equation (13) commutes. If C is a Type I code, then φ(C) may not be self-dual. In Example 7, we will see a Type I code whose image is also self-dual. In Example 8, there are some Type II self-dual codes of type 2γ 4δ with δ > 2 and that have self-dual images. Proposition 5. Let C be a Z4 self-dual code of length n generated by {w1 , . . . , ws } whose Gray image is linear. Then, φ(C) is self-dual if and only if for all wi , wj of order 4 we have S1,1 (wi , wj ) + S3,3 (wi , wj ) + S2,±1 (wi , wj ) + S±1,2 (wi , wj ) ≡ 0

(mod 2).

Proof: By Lemma 8, φ(C) is self-orthogonal if and only if hφ(wi ), φ(wj )i ≡ 0 (mod 2), where wi , wj are generator vectors. So, if wi is a codeword of order 4, then the equality is given by Lemma 7. Since C is Z4 self-dual, n  |C| = 4 2 . Then, |φ(C)| = 2n and, therefore, φ(C) is self-dual. It is then a straightforward computation to determine when a Z4 self-dual code has linear Gray image and when in fact that linear image is self-dual. Namely, we know that the image of a Z4 code is linear if 2vi vj ∈ C for all order 2 vectors in the generator matrix. Let G be a generator matrix of a self-dual code. Let H be the matrix with rows of the form 2vi vj with 1 ≤ i < j ≤ δ. Then the image is linear if and only if HGT = 0. Then using Proposition 5 we can determine if the image is self-dual. Note that this proposition does not need to be applied to order 2 vectors as their images are always orthogonal. In the next subsection, we shall use these techniques to produce binary self-dual codes from Z4 self-dual codes and examine which Z4 self-dual codes give binary codes. 21

4. Families of self-dual codes over Z2k We begin by giving several families of quaternary self-dual codes whose Gray images are binary self-dual codes. Example 6. Let n ≡ 0

(mod 4). Define the (n − 1) × n matrix   0 2  .. ..    G1 =  . 2In−2 .  .  0 2  1 1···1 1

Since δ = 1, by Lemma 9, the quaternary linear code C of length n and type 2n−2 4 generated by G1 code satisfies |C| = 2n so C is self-dual. Moreover all the vectors are doubly-even. This gives that C is a Type II Z4 self-dual code and its image under the Gray map is linear and Type II self-dual. These Z4 codes are the Klemm codes introduced in [11]. This example gives that there exist Type II codes that are Z4 linear for all possible lengths n ≡ 0 (mod 8). Example 7. Let n be an even number. Define the G2 =

I n2 I n2



n 2

× n matrix

. n

The quaternary linear code of length n and type 4 2 generated by G2 is a Type I Z4 self-dual code and its image under the Gray map is linear and Type I self-dual. Example 8. Define the n × n matrix G3 =

2In



.

The quaternary linear code of length n and type 2n generated by G3 is Type I Z4 self-dual code and its image under the Gray map is linear and Type I self-dual.

22

Example 9. Define the matrices   0 2 0 2 A1 = , B1 = 0 0 2 2

1 1 1 1



,

and, for r ≥ 2, we define     Ar−1 0 Br−1 0 Ar = , Br = . 0 Ar−1 0 Br−1 Then, for r ≥ 1, the quaternary linear code of length n = 4r and type 22r 4r generated by   Ar Jr = , Br is a Type II Z4 self-dual code and its image under the Gray map is linear and Type II self-dual. Example 10. We consider the codes over Z2k generated by G1 , G2 , G3 and JR . (i) The code generated by G1 has δ0 = 1 and δ1 = n − 2. Hence 2k−1 (1) = 2k−2 (n − 2) = 2k−2 n and hence the code generated by it satisfies the hypothesis of Theorem 7. (ii) The code generated by G2 has orthogonal Gray image by inspection and has the proper dimension so it satisfies the hypothesis of Theorem 7. (iii) We have already seen that the Gray image of G3 is a self-dual code. (iv) The matrix Jr also satisfies the hypothesis of Theorem 7. Hence the Gray images of all these codes are binary self-dual codes of length 2k−1 n. Note that over Z4 these codes are self-dual, however over Z2k with k > 2 the codes are neither self-dual nor self-orthogonal except for the code generated by G3 over Z8 . If C and C 0 are codes over Z2k of length n and n0 respectively then C × C 0 is a code of length nn0 . If a code D is not of the form C × C 0 then the code D is said to be indecomposable.

23

Theorem 9. Let C and C 0 be codes over Z2k . The code φ(C × C 0 ) is linear if and only if φ(C) and φ(C 0 ) are linear and φ(C × C 0 ) is self-orthogonal if and only if φ(C) and φ(C 0 ) are self-orthogonal. Proof: Let v, v 0 be vectors in C and w, w0 be vectors in C 0 . Assume φ(C × C 0 ) is linear then we have that (φ(v) + φ(v 0 ), 0) and (0, φ(w) + φ(w0 )) are in φ(C × C 0 ) which gives that φ(v) + φ(v 0 ) ∈ φ(C) and φ(w) + φ(w0 ) ∈ φ(C 0 ) and so both images are linear. If both φ(C) and φ(C 0 ) are linear then φ(v + v 0 , w + w0 ) is in φ(C × C 0 ) since φ(v + v 0 ) ∈ φ(C) and φ(w + w0 ) ∈ φ(C 0 ). Assume φ(C ×C 0 ) is self-orthogonal. Then h(φ(v), 0), (φ(v 0 ), 0)i = 0 giving that hφ(v), φ(v 0 )i = 0 and (0, φ(w)), (0, φ(w0 ))i = 0 giving that hφ(w)), φ(w0 )i = 0. This gives that both φ(C) and φ(C 0 ) are self-orthogonal. If both φ(C) and φ(C 0 ) are self-orthogonal then h(φ(v), φ(w)), (φ(v 0 ), φ(w0 ))i = hφ(v), φ(v 0 )i + hφ(w), φ(w0 )i = 0 + 0 = 0. Hence φ(C × C 0 ) is self-orthogonal.  This theorem gives that it is enough to determine whether the images of the indecomposable self-dual codes are linear and self-dual. For k > 2, the image is linear only in trivial cases but the image can be self-orthogonal for any k. This is useful since if φ(C) is self-orthogonal then hφ(C)i is selforthogonal. We shall give the results for all indecomposable codes of length less than or equal 9 (there are none of length 9 as shown in [5]) in Table 1. For a description of these codes see [5]. Table 1: Binary Images of Self-dual Codes over Z4 Code A1 D4⊕ D6⊕ E7+ D8⊕ E8 K8 K80 O8 Q8

Length 1 4 6 7 8 8 8 8 8 8

Binary Image [2, 1, 2] Linear Code [8, 4, 4] Linear Code [12, 6, 4] Linear Code (14, 27 , 4) Non-linear Code [16, 8, 4] Linear Code (16, 28 , 4) Non-linear Code [16, 8, 4] Linear Code [16, 8, 4] Linear Code (16, 28 , 4) Non-linear Code [16, 8, 4] Linear Code

24

Orthogonality Self-Dual Self-Dual Not Self-Dual Not Self-Dual Not Self-Dual Not Self-Dual Self-Dual Self-Dual Not Self-Dual Not Self-Dual

Acknowledgements The authors want to thank the useful comments of the referees and also those of Liren Li which have improved the paper. The second author wishes to acknowledge the joint sponsorship of the Fulbright Program in Spain and the Ministry of Science and Innovation during her research stay at Auburn University. This work has been partially supported by the Spanish MICINN grant MTM2009-08435 and the Catalan AGAUR grant 2009SGR1224. [1] E. Bannai, S.T. Dougherty, M. Harada, and M. Oura, Type II Codes, Even Unimodular Lattices, and Invariant Rings, IEEE Transaction on Information Theory, Volume 45, Number 4, pp. 1194-1205, 1999. [2] J. Borges, C. Fern´andez and J. Rif`a, Every Z2k -code is a binary propelinear code, In COMB’01. Electronic Notes in Discrete Mathematics, Volume 10, Elsevier Science, November 2001. [3] J. Borges, C. Fern´andez and J. Rif`a, Propelinear structure of Z2k -linear codes, Technical Report arxiv:0907.5287, 2009. [4] C. Carlet, Z2k -Linear codes, IEEE Trans. on Information Theory, vol. 44, pp. 1543-1547, 1998. [5] J.H. Conway and N.J.A. Sloane, Self-dual codes over the integers modulo 4, J. Combin. Theory Ser. A 62, pp. 30-45, 1993. [6] S.T. Dougherty, M.Harada and P. Sol´e, Shadow Codes over Z4 , Finite Fields and their Applications, Volume 7, Number 4, pp. 507-529, 2001. [7] S.T. Dougherty and H. Liu, Independence of vectors in codes over rings, Designs, Codes and Cryptography, pp. 55-68, 2009. [8] C. Fern´andez-C´ordoba, J. Pujol and M. Villanueva, On rank and kernel of Z4 -linear codes, Lecture Notes in Computer Science, n. 5228, pp. 46-55, 2008. [9] C. Fern´andez-C´ordoba, J. Pujol and M. Villanueva, Z2 Z4 -linear codes: rank and kernel, Design Codes and Cryptography, DOI: 10.1007/s10623009-9340-9, 2009.

25

[10] A.R. Hammons, P.V. Kumar, A.R. Calderbank, N.J.A. Sloane and P. Sol´e, The Z4 -linearity of Kerdock, Preparata, Goethals and related codes, IEEE Trans. Inform. Theory, Volume 40, pp. 301-319, 1994. [11] M. Klemm, Selbstduale Codes u ¨ber dem Ring der ganzen Zahlen modulo 4, Arch. Math. 53, pp. 201-207, 1989. [12] F.J. MacWilliams and N.J.A. Sloane, The Theory of Error-Correcting Codes, North-Holland Publishing Company, 1977. [13] Y.H. Park, Modular independence and generator matrices for codes over Zm , Designs, Codes and Cryptography, vol. 50, n. 2, pp. 147-162, 2009. [14] V. S. Pless, W. C. Huffman, and R. A. Brualdi, Handbook of Coding Theory: Volume I, North-Holland, 1998. [15] E.M. Rains and N.J.A. Sloane, Self-dual Codes, Handbook of Coding Theory, edited by V.S. Pless and W.C. Huffman, (Amsterdam: Elsevier, 1998, pp. 177-294). [16] K. Shiromoto, A basic exact sequence for the Lee and Euclidean weights of linear codes over Z` , Linear Algebra and its Applications 295, pp. 191–200, 1999. [17] H. Tapia-Recillas and G. Vega, On the Zk2 -linear and quaternary codes, SIAM Journal oon Discrete Mathematics, vol. 17, n. 1, pp. 103-113, 2003. [18] Z.-X. Wan, Quaternary Codes, World Scientific, 1997. [19] J. Wood, Duality for modules over finite rings and applications to coding theory, American Journal of Mathematics, Volume 121, pp. 555-575, 1999.

26

Codes over Z2k, Gray map and Self-Dual Codes

4 Oct 2011 - If the code is a submodule then we say that the code is a linear code (over Z2k ). If C is a code over Z2k , then. 〈C〉 is the code over Z2k spanned by the vectors in C. If v, w ∈ Zn. 2k , v = (v1,...,vn), w = (w1,...,wn), we define vw as the component-wise product. Preprint submitted to Advances in Mathematics of ...

332KB Sizes 2 Downloads 234 Views

Recommend Documents

Counting Codes over Rings
Sep 3, 2012 - [x,y] = x1y1 + ททท + xnyn. For any code C over R, we define the orthogonal to be. C⊥ = {x ∈ Rn ∣. ∣[x,c]=0, ∀c ∈ C}. Throughout the paper we assume that the rings are all Frobenius, see [8] for a definition of this cla

Codes over Rk, Gray Maps and their Binary Images
Jun 22, 2011 - units in the ring and describe the ideals in the ring, using them to define a type for linear codes. Finally, Reed Muller codes are shown as the image of linear codes over these rings. 1 Introduction. In the landmark paper [4], it was

Optimal Linear Codes over Zm
Jun 22, 2011 - where Ai,j are matrices in Zpe−i+1 . Note that this has appeared in incorrect forms often in the literature. Here the rank is simply the number of ...

Cyclic codes over Ak
Lemma 1. [1] If C is a cyclic code over Ak then the image of C under the. Gray map is a quasi-cyclic binary code of length 2kn of index 2k. In the usual correspondence, cyclic codes over Ak are in a bijective corre- spondence with the ideals of Ak[x]

Cyclic codes over Rk
Jun 22, 2011 - e-mail: [email protected] e-mail: [email protected] ...... [8] S.T. Dougherty and S. Ling, Cyclic codes over Z4 of even length , Designs, ...

Shadow Codes over Z4
Shadow Codes over Z4. Steven T. Dougherty. Department of Mathematics. University of Scranton. Scranton, PA 18510. USA. Email: [email protected].

Self-Dual Codes over Rk and Binary Self-Dual Codes
Apr 19, 2012 - Additionally, ai does not contain any of the u1,u2,... .... (a1,a2), where the ai are units, must be generated by that vector and hence be a one-.

Self-dual Codes over F3 + vF
A code over R3 is an R3−submodule of Rn. 3 . The euclidean scalar product is. ∑ i xiyi. The Gray map φ from Rn. 3 to F2n. 3 is defined as φ(x + vy)=(x, y) for all x, y ∈ Fn. 3 . The Lee weight of x + vy is the Hamming weight of its Gray image

MDR Codes over Zk
corresponds to the code word c = (c0,c1,c2,···,cn−1). Moreover multiplication by x corresponds to a cyclic shift. So, we can define a cyclic code of length n over Zk as an ideal of Zk[x]/(xn − 1). For generalizations of some standard results o

Symmetric Designs and Self-Dual Codes over Rings
Jun 22, 2011 - and the minimum Hamming weight of a code is the smallest of all non-zero weights in the code. The Hamming weight enumerator of a code C is defined by WC(x, y) = ∑ c∈C ywt(c) where wt(c) is the Hamming weight of the vector c. 2 Cons

Codes Over a Family of Local Frobenius Rings, Gray ...
Sep 10, 2016 - If a code C satisfies WC(x, y) = WC⊥ (x, y) then we say that the code is formally self-dual with respect to that weight enumerator. For binary codes, there is only the Hamming weight, so a binary formally self-dual code is formally s

Codes over Rings and Hermitian Lattices
Apr 14, 2014 - where the Ai,j are matrices with elements in the ring. The code C is said to have type. (k0,k1,k2,...,ke−1). A code C with type (k0,k1,k2,...,ke−1) ...

Self-Dual Codes over Rings and the Chinese ...
where Ai,j are binary matrices for i > 1. Notice 2 is a unit in Z3 hence this code generates a ternary code of dimension k1 + k2 = n. 2 . We now consider self-dual ...

Codes over Rings, Complex Lattices and Hermitian ...
Email: [email protected]. June 22, 2011 ... Key Words: Self-dual codes, unimodular lattices, Hermitian modular forms. ∗This work was partially ...

Quasi-Cyclic Codes as Cyclic Codes over a Family of ...
Oct 23, 2015 - reduction µ from R∆[x] to F2[x] where µ(f) = µ(∑aixi) = ∑µ(ai)xi. A monic polynomial f over R∆[x] is said to be a basic irreducible poly- nomial if ...

Self-Dual Codes over Z8 and Z9
Jun 22, 2011 - The Hamming weight enumerator of a self-dual code over Z9 is an element in the ring C[1 − 2x, x(1 − x)]. 2.1 Shadows. Throughout this section we let ζ denote a complex primitive 16th root of unity. Let C be a self-dual code over Z

Generalized Additive Codes, Self-Dual Codes and ...
x = (x0,x1,··· ,xn−1) ∈ Zn. 4 is an arbitrary vector, and suppose ϕ(xj)=(xj,0,xj,1) for all j = 0,1,··· ,n − 1, then. ϕ(x0,x1,··· ,xn−1)=(x0,0,x1,0,··· ,xn−1,0,x0,1,x1,1,··· ,xn−1,1). (2.3). In this paper, we shall consid

On Codes over Local Frobenius Rings: Generator ...
Jul 30, 2014 - of order 16 for illustration. ... It is well known, see [7], that the class of finite rings for which it makes ... codes is the class of finite Frobenius rings.

Cyclic Codes over Formal Power Series Rings
Jun 22, 2011 - Let i be an arbitrary positive integer. The rings Ri are defined as follows: Ri = {a0 + a1γ + ··· + ai−1γi−1 |ai ∈ F} where γi−1 = 0, but γi = 0 in Ri.

Generalized Shadows of Codes over Rings
Jun 22, 2011 - Let R be finite commutative ring. A code over R is a subset of Rn and a linear code is a submodule of this space. To the ambient space Rn ...

ΘS−cyclic codes over Ak
Jul 6, 2015 - It is clear that for all x ∈ Ak we have that. ΣA,k(Φk(x)) = Φk(ΘS(x)). (2). 3. ΘS−cyclic codes over Ak. We can now define skew cyclic codes using this family of rings and family of automorphisms. Definition 2. A subset C of An

Type IV Self-Dual Codes over Rings
Jun 22, 2011 - If C is self-dual then C(1) is doubly-even and C(2) = C(1)⊥ [9]. Lemma 2.2 If C is a Type IV code over Z4 then the residue code C(1) contains ...

Lifted Codes over Finite Chain Rings
Jun 22, 2011 - (ii) If i = 1 then R1 = F, and the result follows directly. Now suppose i > 1, let a = a0 + a1γ + ททท + ai−1γi−1 ∈ Ri. We define ρ to be a map from ...

MDS Codes over Finite Principal Ideal Rings
A finite family (ai)n i=1 of ideals of R, such that the canonical homomorphism of R to. ∏n i=1. (R/ai) is an isomorphism is called a direct decomposition of R.