Department of Mathematics, University of Scranton, Scranton PA 18510, USA 2 School of Mathematics and Statistics, Central China Normal University, Wuhan, Hubei 430079, China

Abstract We introduce generalized additive codes which are extensions of Z2 Z4 -additive codes and study their images under a generalized Gray map. We give existence theorems for self-dual codes and give constructions for self-dual and formally selfdual codes.

Keywords: Self-dual codes, formally self-dual codes, Galois rings, generalized additive codes. Mathematics Subject Classification (2010): 94B60, 94B25

1

Introduction

Coding theory at its inception was concerned with codes over fields, especially the binary field. Early research in codes over finite rings began in the 1970s. In 1994, the study of codes over rings expanded when it was shown that certain non-linear binary codes were images under a Gray map of linear quaternary codes, see [11]. After this important result, the study of codes over rings became one of the main focuses for mathematical coding theory. Additionally, the study of additive codes has been increasing, especially due to their relationship with quantum computing. Based on the results of Delsarte decades earlier, the study of proprelinear codes lead to the study of Z2 Z4 codes. For foundational results on these codes see [2], [3], [4], [5], [6] and [9]. The results of Delsarte, in our terms, show that if a binary code has the structure of an abelian group then it is the image under a Gray map of a linear Z2 Z4 code. In this paper, we generalize Z2 Z4 additive codes and we introduce a Gray map for these generalized codes. While Z2 Z4 codes are used to study binary codes, our extension Email addresses:

[email protected];

1

[email protected].

is used to study codes over any finite field of order a power of 2. We focus our attention to the study of self-dual and formally self-dual codes. The paper is organized as follows. In Section 2, we give the necessary definitions and preliminary results. In Section 3, we introduce a generalized Gray map. In Section 4, we extend the notions of various types of binary codes to codes over any field of order a power of 2. In Sections 5 and 6, we give results on self-dual and formally self-dual generalized additive codes. We study the types of codes and their images over the field of order a power of 2.

2

Preliminaries

Let p be a prime, e a positive integer and denote by Zpe the ring of integers modulo pe . A Galois ring R = GR(pe , r) is a Galois extension of Zpe of degree r. By Corollary 15.5 in [12], we have that R = GR(pe , r) ∼ (2.1) = Zpe [x]/hs(x)i, where s(x) is a monic polynomial in Zpe [x] of degree r whose reduction in Zp [x] is irreducible and hs(x)i is the ideal generated by s(x) in Zpe [x]. In this case, s(x) is called a monic basic irreducible polynomial. In the following, we identify the ring R with Zpe [x]/hs(x)i using the isomorphism given in Equation 2.1. By Equation 2.1, any element a of R = GR(pe , r) is represented by a r−1 P unique polynomial a = ai xi with ai ∈ Zpe . It is easy to see that |GR(pe , r)| = per . i=0

In this paper, we will consider the Galois ring R = GR(22 , r), where p = 2 and e = 2. Let s(x) be a monic basic irreducible polynomial of degree r over Z4 . Then R = GR(4, r) = Z4 [x]/hs(x)i. Take ξ = x + hs(x)i, then s(ξ) = 0. Any element a in GR(4, r) can be represented uniquely as a = a0 + a1 ξ + · · · + ar−1 ξ r−1 , where ai ∈ Z4 , 0 ≤ i ≤ r − 1. Then we write GR(4, r) as Z4 [ξ]. Let ¯ : Z4 → Z2 , where a ¯ = [a]2 is the natural residue ring homomorphism, i.e., ¯0 = 0, ¯1 = ¯3 = 1, ¯2 = 0. This map can be extended naturally from Z4 [x] to Z2 [x] as follows. Let f (x) = a0 + a1 x + · · · + ak xk ∈ Z4 [x], where k is a non-negative integer, then f (x) = a0 + a1 x + · · · + ak xk 7→ f¯(x) = a¯0 + a¯1 x + · · · + a¯k xk . This map is a surjective ring homomorphism, and the kernel of the homomorphism is h2i. Under this homomorphism, the ideal hs(x)i of Z4 [x] corresponds to the ideal h¯ s(x)i of Z2 [x]. Since the map is a surjective, we get the following surjective homomorphism: ¯ : Z4 [x]/hs(x)i → Z2 [x]/h¯ s(x)i, where f (x) + hs(x)i 7→ f¯(x) + h¯ s(x)i.

2

(2.2)

¯ = 0. Hence Z2 [x]/h¯ ¯ We have that ξ¯ = x + h¯ s(x)i, which implies that s¯(ξ) s(x)i = Z2 (ξ). r This field is an extension field of order 2 of the binary field Z2 , since s¯(x) is an irreducible ¯ ∼ binary polynomial of degree r. That is Z2 (ξ) = F2r . 2 In [11], the Gray map ϕ : Z4 → Z2 was defined, where ϕ(0) = (0, 0), ϕ(1) = (0, 1), ϕ(2) = (1, 1) and ϕ(3) = (1, 0). This map is extended in the usual way. Namely, if x = (x0 , x1 , · · · , xn−1 ) ∈ Zn4 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 consider codes in the abelian group ¯ α × Z4 [ξ]β = {(v|w) | v ∈ Z2 (ξ) ¯ α , w ∈ Z4 [ξ]β } Z2 (ξ) ¯ α × Z4 [ξ]β is a subset of Z2 (ξ) ¯α× where α, β are non-negative integers. A code C in Z2 (ξ) Z4 [ξ]β . If the subset C is an additive subgroup then we say that C is an additive code.

3

Generalized Gray Map

¯ 2. In this section, we study the generalized Gray map which is defined from Z4 [ξ] to Z2 (ξ) Let α, β be two non-negative integers, we let n = α + β and N = α + 2β. Let a = a0 + a1 ξ + · · · + ar−1 ξ r−1 ∈ Z4 [ξ] and let ϕ be the usual Gray map from Z4 to 2 Z2 such that ϕ(aj ) = (aj,0 , aj,1 ) for all j = 0, 1, · · · , r − 1. ¯ 2 is called a generalized Gray map, where Definition 3.1. The map Φ : Z4 [ξ] → Z2 (ξ) Φ(a) = ϕ(a0 ) + ϕ(a1 )ξ¯ + · · · + ϕ(ar−1 )ξ¯r−1 = (a0,0 + a1,0 ξ¯ + · · · + ar−1,0 ξ¯r−1 , a0,1 + a1,1 ξ¯ + · · · + ar−1,1 ξ¯r−1 ).

(3.1) (3.2)

For convenience, we let Φ(a)0 = a0,0 + a1,0 ξ¯ + · · · + ar−1,0 ξ¯r−1 and let Φ(a)1 = a0,1 + a1,1 ξ¯ + · · · + ar−1,1 ξ¯r−1 . Then the generalized Gray map can be expressed as Φ(a) = (Φ(a)0 , Φ(a)1 ). ¯ α × Z4 [ξ]β to Z2 (ξ) ¯ N as follows: The generalized Gray map can be extended from Z2 (ξ) ¯ α × Z4 [ξ]β → Z2 (ξ) ¯ N, Φ : Z2 (ξ)

(3.3)

where Φ((v|w)) = (v|Φ(w)), w = (w1 , · · · , wβ ) ∈ Z4 [ξ]β , and Φ(w) = Φ((w1 , · · · , wβ )) = (Φ(w1 )0 , · · · , Φ(wβ )0 , Φ(w1 )1 , · · · , Φ(wβ )1 ). ¯ α × Z4 [ξ]β , where x ∈ Z2 (ξ) ¯ α , y ∈ Z4 [ξ]β . We define the Lee weight Let (x|y) ∈ Z2 (ξ) of (x|y) as: wt((x|y)) = wH (Φ(x|y)) = wH (x) + wH (Φ(y)). In particular, when x = 0, we let wt(y) = wt((0|y)) which is wH (Φ(y)). 3

¯ α ×Z4 [ξ]β , we define the distance between For any two vectors (v1 |w1 ), (v2 |w2 ) ∈ Z2 (ξ) (v1 |w1 ) and (v2 |w2 ) as d((v1 |w1 ), (v2 |w2 )) = wt(v1 − v2 |w1 − w2 ) = wtH (v1 − v2 ) + wH (Φ(w1 − w2 )). (3.4) Note that the above generalized Gray map Φ is a bijection since ϕ is a bijection, but Φ is not necessarily an isometry. For example, take r = 2, s(x) = x2 + x + 1 ∈ Z4 [x], then s(x) is a monic irreducible polynomial in Z4 [x]. Let ω = x + hs(x)i, then s(ω) = 0. In this case, Z4 [x]/hs(x)i = Z4 [ω] = {a0 + a1 ω | a0 , a1 ∈ Z4 }, where ω 2 + ω + 1 = 0. Note that ω ¯ = x + h¯ s(x)i, ω ¯2 + ω ¯ + 1 = 0, and Z2 (¯ ω ) = {a¯0 + a¯1 ω ¯ | a¯0 , a¯1 ∈ Z2 }. Let a = 2 + 3ω, b = 1+2ω ∈ Z4 [ω], then a−b = 1+ω, hence Φ(a−b) = (0, 1)+(0, 1)¯ ω = (0, 1+ ω ¯ ), which gives that wH (Φ(a − b)) = 1. On the other hand, Φ(a) = (1, 1) + (1, 0)¯ ω , Φ(b) = (0, 1) + (1, 1)¯ ω. We have Φ(a) − Φ(b) = (1 + ω ¯ , 1) − (¯ ω, 1 + ω ¯ ) = (1, ω ¯ ). This gives that wH (Φ(a) − Φ(b)) = 2 6= 1 = wH (Φ(a − b)). Hence d(a, b) = wt(a − b) = wH (Φ(a − b)) = 1 6= 2 = wH (Φ(a) − Φ(b)) = dH (Φ(a), Φ(b)). We shall mention that in [10], the authors introduced a Gray map on a finite chain ring R that is an isometry. But this map is not a bijection and hence we cannot produce codes over the field with the same weight enumerator as a formally self-dual code from formally self-dual codes as we will do in this paper. In this paper, we study self-dual and formally self-dual codes, where we need the Gray map to be bijective and weight preserving. Let a = a0 + a1 ξ + · · · + ar−1 ξ r−1 ∈ Z4 [ξ]. Then, by the definition of Lee weight, we get that 0, if a = 0, wt(a) = 1, if ai ∈ {0, 1} for all i or ai ∈ {0, 3} for all i, (3.5) 2, otherwise. Remark 3.2. By Equation 3.5, we can compute the number of elements in Z4 [ξ] whose Lee weights are 0, 1 and 2 respectively. Specifically, the number of elements of weight 0 is 1, the number of elements of weight 1 is 2(2r − 1) = 2r+1 − 2 and the number of elements of weight 2 is 4r − (2r+1 − 2) − 1 = 4r − 2r+1 + 1. ¯ can We now define an inner product on the ambient space. The additive group Z2 (ξ) be viewed as a subset of Z4 [ξ] by viewing ξ¯ as ξ, and 0, 1 ∈ Z2 as 0, 1 ∈ Z4 . Note that it is not a subgroup but simply a subset. We shall use this fact when defining the inner ¯ as a product in a similar way as was done in Zα2 × Zβ4 (see [4]). That is, we view Z2 (ξ) subset of Z4 [ξ] in the same way Z2 can be viewed as a subset of Z4 . ¯ α × Z4 [ξ]β , where v1 , v2 ∈ Z2 (ξ) ¯ α and Definition 3.3. Let (v1 |w1 ), (v2 |w2 ) ∈ Z2 (ξ) w1 , w2 ∈ Z4 [ξ]β . The inner product between (v1 |w1 ) and (v2 |w2 ) is defined as follows: [(v1 |w1 ), (v2 |w2 )] = 2[v1 , v2 ] + [w1 , w2 ] ∈ Z4 [ξ], where the computation of 2[v1 , v2 ] is in Z4 [ξ] by viewing ξ¯ the preimage of ξ under the map (2.2). 4

Note that our definition is a generalization of the definition of the inner product in the space Zα2 × Zβ4 . ¯ α × Z4 [ξ]β , and let C In the remainder of this paper, we let C denote codes in Z2 (ξ) ¯ α × Z4 [ξ]β be a code. We define the dual denote codes over finite fields. Let C ⊆ Z2 (ξ) ⊥ code C of C as ¯ α × Z4 [ξ]β | [(x|y), (v|w)] = 0 for all (v|w) ∈ C}. C ⊥ = {(x|y) ∈ Z2 (ξ) The code C is called self-orthogonal if C ⊆ C ⊥ and self-dual if C ⊥ = C. It is immediate that the dual code C ⊥ of C is an additive code. We let wt(C) be the minimum Lee weight of C and d(C) the minimum distance of a code C.

4

Codes over Finite Fields

¯ We define several types of codes In this section, we study codes over the finite field Z2 (ξ). over finite fields and study their properties. ¯ is called formally self-dual if its weight enumerator is held invariant A code over Z2 (ξ) by the action of the MacWilliams relations. Note that we may have a non-linear code which has a weight enumerator held invariant by this action without the MacWilliams relations giving the weight enumerator of the orthogonal. ¯ N , we define [x, y]4 to be their usual inner product Let x, y be any two vectors in Z2 (ξ) where x, y are viewed as elements in Z4 [ξ]N and the computations are done over the ring Z4 [ξ]. ¯ N . The vector x is called odd, if [x, x]4 6∈ 2Z4 [ξ]. The vector Let x be a vector in Z2 (ξ) x is called even, if [x, x]4 ∈ 2Z4 [ξ]. Furthermore, an even vector x is called singly even, if [x, x]4 6= 0 in Z4 [ξ] and an even vector x is called doubly-even, if [x, x]4 = 0 in Z4 [ξ]. Note that this is a generalization of the notion of doubly-even for binary codes, as a binary vector x has [x, x]4 = 0 in Z4 if and only if the Hamming weight of x is congruent to 0 (mod 4). ¯ Definition 4.1. Let C be a formally self-dual code over the field Z2 (ξ). (i) If there exists an odd codeword in C, then C is called a Type 0 code. (ii) If every codeword v ∈ C is even, but there exists at least one codeword that is singly even, then we say that C is a Type I code. If every codeword v ∈ C is doubly-even, then we say that C is a Type II code. This generalizes the notion of Type II and Type I for binary codes. Note that we are not assuming that these codes are linear nor are assuming that they are self-dual. We do this because we are interested in those codes over the field that can be constructed via the Gray map from additive codes. We shall apply the definitions of type to self-dual codes as well, but in this case we shall specify that the codes are self-dual. The code C = h(0, 1)i is an example of a Type 0 code of length 2, since WC (x, y) = x2 + (2r − 1)xy = 5

1 WC (x + (2r − 1)y, x − y), |C|

and C ⊥ = h(1, 0)i = 6 C. ¯ N . These vectors can be viewed as vectors in Let v1 , v2 , · · · , vk be vectors in Z2 (ξ) N Z4 [ξ] . We have the following result. ¯ N. Lemma 4.2. Let {v1 , v2 , · · · , vk } be a set that generates a self-orthogonal code in Z2 (ξ) If [vi , vi ]4 = 0 for all i, then all vectors w ∈ hv1 , · · · , vk i have [w, w]4 = 0. Proof. Let w =

k P

¯ Suppose µi ∈ Z4 [ξ] such that λi vi ∈ hv1 , · · · , vk i, where λi ∈ Z2 (ξ).

i=1

µ ¯i = λi for all i. Then we have that k hX i=1

λi v i ,

k X j=1

λj vj

i

= 4

k X k X

µi µj [vi , vj ]4 =

i=1 j=1

k X i=1

µ2i [vi , vi ]4 + 2

X

µi µj [vi , vj ]4 = 0,

i6=j

¯ since [vi , vi ]4 = 0 and [vi , vj ]2 = 0 in Z2 (ξ). Recall that a Type II binary code is a self-dual code over F2 such that all Hamming weights are congruent to 0 (mod 8). Theorem 4.3. Let G be a generator matrix of a Type II binary code. Then G generates ¯ a Type II code over Z2 (ξ). Proof. Let v1 , v2 , · · · , vk be the row vectors of the generator matrix G of a Type II binary code over the binary field Z2 = F2 . Then all the vectors are self-orthogonal. By ¯ they are still orthogonal and viewing the vectors v1 , v2 , · · · , vk as vectors over Z2 (ξ), [vi , vi ]4 = 0 for all i = 1, 2, · · · , k. By Lemma 4.2, for all vectors w ∈ hv1 , · · · , vk i, we have [w, w]4 = 0. Hence we have the result. ¯ Let C0 be the subcode Theorem 4.4. Let C be a Type I self-dual code over the field Z2 (ξ). of C consisting of doubly-even codewords. Then C0 is a linear code. ¯ Then Proof. Let v, w ∈ C0 and λ, λ0 ∈ Z2 (ξ). [λv + λ0 w, λv + λ0 w]4 = µ2 [v, v]4 + µ02 [w, w]4 + 2µµ0 [v, w]4 , where µ, µ0 are the preimages of λ and λ0 under the residue map ¯, i.e., µ ¯ = λ, µ¯0 = λ0 . Note that [v, v]4 and [w, w]4 are 0 by assumption, and [v, w]2 = 0 since C is self-dual. This implies that 2µµ0 [v, w]4 = 0. Hence λv + λ0 w ∈ C0 . Example 4.5. Let C be a linear code over Z2 (¯ ω ) with generator matrix 1 0 ω ¯ ω ¯2 G= , 0 1 ω ¯2 ω ¯ where r = 2 and ω ¯2 + ω ¯ + 1 = 0. Note that the matrix G generates a self-dual code and that each vector is doubly-even. Therefore by Lemma 4.2 the code is a Type II code. In this case, C0 = C is a linear Type II code. 6

¯ Then dim(C0 ) = Theorem 4.6. Let C be a Type I self-dual code over the field Z2 (ξ). dim(C) − 1. Proof. Note that C0 is a linear subcode of C by Theorem 4.4. Since C is Type I, every vector in C is either doubly-even or singly even. Let v be a singly even vector in C. In the following, we show that C = C0 + hvi. It is trivial that C0 + hvi ⊆ C. Now we prove C ⊆ C0 + hvi. Let c ∈ C be a codeword, if c is zero or doubly-even, then c = c + 0 ∈ C0 + hvi. Now suppose c is singly even, we ¯ such that c−λv ∈ C0 . Note that c−λv ∈ C0 prove that there exists an element λ ∈ Z2 (ξ) if and only if [c − λv, c − λv]4 = 0. We have [c − λv, c − λv]4 = [c, c]4 + 2µ[c, v]4 + µ2 [v, v]4 = [c, c]4 + µ2 [v, v]4 ,

(4.1)

where µ ¯ = λ and µ ∈ Z4 [ξ]. Let [c, c]4 = µ1 and [v, v] = µ2 , where µ ¯1 = λ1 and µ ¯ 2 = λ2 . 2 ¯ By Equation 4.1, [c − λv, c − λv]4 = 0 if and only if λ1 + λ λ2 = 0 in Z2 (ξ). Note that in a field of even order, x2 = y 2 implies that x2 + y 2 = (x + y)2 = 0. This implies that ¯ x = y. Therefore every element is a square in Z2 (ξ). Since λ1 + λ2 λ2 = 0 means that λ2 = λλ12 , where λλ21 is a square, hence there exist ¯ and a vector c0 ∈ C0 such that c = c0 + λv. This gives that dim(C0 ) = λ ∈ Z2 (ξ) dim(C) − 1. ¯ generated by Example 4.7. Let C be a linear code over Z2 (ξ) 1 1 0 0 G= . 0 0 1 1 ¯ It is easy to check that the code C is a Type I self-dual code over Z2 (ξ). In particular, if we take r = 2 and s(x) = x2 + x + 1, then s(x) is a basic irreducible polynomial in Z4 [x]. Let ω = x + hs(x)i, then ω 2 + ω + 1 = 0 and ω ¯2 + ω ¯ + 1 = 0. We know that dim(C) = 2 and C is a Type I self-dual code, where C0 = {(0000), (1111), (¯ ωω ¯ω ¯ω ¯ ), (¯ ω2ω ¯ 2ω ¯ 2ω ¯ 2 )}, and dim(C0 ) = 1 = dim(C) − 1. The number of cosets of C0 in C (as an additive group) is |C|/|C0 | = 16/4 = 4. We get the other three cosets as follows: C2 = {(0011), (1100), (¯ ωω ¯ω ¯ 2ω ¯ 2 ), (¯ ω2ω ¯ 2ω ¯ω ¯ )}, 2 2 2 2 C2¯ω2 = {(00¯ ωω ¯ ), (11¯ ω ω ¯ ), (¯ ωω ¯ 00), (¯ ω ω ¯ 11)}, 2 2 2 2 C2¯ω = {(00¯ ω ω ¯ ), (11¯ ωω ¯ ), (¯ ωω ¯ 11), (¯ ω ω ¯ 00)}. A Type I code C that is a self-dual code has C0 ⊆ C = C ⊥ ⊆ C0⊥ . Note that dim(C0 ) + dim(C0⊥ ) = N = 2 dim(C), dim(C0 ) = dim(C) − 1. We get dim(C0⊥ ) = dim(C) + 1. Hence there exists a vector x ∈ Z2 (¯ ω ) with C0⊥ = hC, xi, and let y be the vector with hC0 , yi = C. Then C0⊥ = hC0 , x, yi. Now for any vector w = c0 + λx + µy ∈ C0⊥ , where λ, µ ∈ Z2 (¯ ω ), we have [w, w]4 = [c0 + λx + µy, c0 + λx + µy] = λ2 [x, x]4 + 2λµ[x, y] + µ2 [y, y], 7

since x ∈ C0⊥ , y ∈ C = C ⊥ ⊆ C0⊥ . If w, w0 are in the same coset of C0 in C0⊥ , then w − w0 = c0 for some c0 ∈ C0 . Hence we have [w, w]4 = [w0 + c0 , w0 + c0 ]4 = [w0 , w0 ]4 . In particular, if w, w0 in C ⊆ C0⊥ , then w, w0 are in the same coset of C0 in C if and only if [w, w]4 = [w0 , w0 ]4 . In fact, we note that [w − w0 , w − w0 ]4 = [w, w]4 + 2[w, w0 ]4 + [w0 , w0 ]4 .

5

¯ α × Z4[ξ]β Self-Dual Codes in Z2(ξ)

In this section, we begin by studying the MacWilliams relations for additive codes which ¯α× relate the Lee weight enumerator of an additive code C and its dual code C ⊥ in Z2 (ξ) β ¯α× Z4 [ξ] . We then focus on the existence and constructions of self-dual codes in Z2 (ξ) Z4 [ξ]β . ¯ we take the usual definition of the For a code C of length N over the field Z2 (ξ), Hamming weight enumerator, i.e. X WC (x, y) = xN −wH (c) y wH (c) . c∈C

¯ α × Z4 [ξ]β and let N = α + 2β. We define the Lee Let C be an additive code in Z2 (ξ) weight enumerator of C as: X X LC (x, y) = xα+2β−wt(c) y wt(c) = xN −wt(c) y wt(c) . c∈C

c∈C

¯ α × Z4 [ξ]β . Then Theorem 5.1. Let C be an additive code in Z2 (ξ) LC ⊥ (x, y) =

1 LC (x + (2r − 1)y, x − y). |C|

¯ α × Z4 [ξ]β to Z2 (ξ) ¯ N is a weight preserving bijection. ThereProof. The map Φ from Z2 (ξ) fore, the weight enumerator acts as if it were the Hamming weight enumerator of code in ¯ N . Therefore, the MacWilliams relations in this space apply. Z2 (ξ) We have the following corollary. ¯ α × Z4 [ξ]β . Then Corollary 5.2. Let C be an additive code in Z2 (ξ) ¯ α × Z4 [ξ]β = 2rN . |C| · |C ⊥ | = Z2 (ξ) Proof. The standard proof applies. Namely the MacWilliams relations give |C ⊥ | = LC ⊥ (1, 1) = which gives |C ⊥ | =

1 (2r )N . |C|

1 LC (2r , 0), |C|

This gives the result. 8

¯ α × Z4 [ξ]β , then either r is even Corollary 5.3. If C is an additive self-dual code in Z2 (ξ) or α is even. Proof. Since C ⊥ = C, we have |C|2 = (2r )α+2β by Corollary 5.2. This implies that |C| = 2

rα +rβ 2

.

This gives that rα ≡ 0 (mod 2). ¯ α , w ∈ Z4 [ξ]β } in Z2 (ξ) ¯ α × Z4 [ξ]β and C 0 = {(v0 |w0 ) | v0 ∈ Let C = {(v|w) | v ∈ Z2 (ξ) 0 0 0 0 ¯ α , w0 ∈ Z4 [ξ]β } in Z2 (ξ) ¯ α × Z4 [ξ]β be two additive codes respectively. Let c = Z2 (ξ) 0 0 0 0 (v|w) ∈ C, c = (v |w ) ∈ C , we define c ◦ c0 = (v, v0 |w, w0 ). Let C ◦ C 0 be the code defined by C ◦ C 0 = {c ◦ c0 | c ∈ C, c0 ∈ C 0 }. (5.1) 0 0 0 α+α β+β ¯ It is easy to see that C ◦ C is an additive code in Z2 (ξ) × Z4 [ξ] . We call this construction the cross product construction. Furthermore, we have the following result. ¯ α × Z4 [ξ]β and C 0 an additive code in Lemma 5.4. Let C be an additive code in Z2 (ξ) α0 β0 0 ⊥ ⊥ 0⊥ ¯ Z2 (ξ) × Z4 [ξ] , then (C ◦ C ) = C ◦ C . Proof. Let d◦d0 ∈ C ⊥ ◦C 0⊥ , and let c◦c0 ∈ C ◦C 0 , where d = (x|y) ∈ C ⊥ , d0 = (x0 |y0 ) ∈ C 0⊥ and c = (v|w) ∈ C, c0 = (v0 |w0 ) ∈ C 0 . We have [c ◦ c0 , d ◦ d0 ] = [(v, v0 |w, w0 ), (x, x0 |y, y0 )] = 2([v, x] + [v0 , x0 ]) + [w, y] + [w0 , y0 ] = (2[v, x] + [w, y]) + (2[v0 , x0 ] + [w0 , y0 ]) = [(v|w), (x|y)] + [(v0 |w0 ), (x0 |y0 )] = [c, d] + [c0 , d0 ] = 0. Hence C ⊥ ◦ C 0⊥ ⊆ (C ◦ C 0 )⊥ . On the other hand, |C ⊥ ◦ C 0⊥ | = |C ⊥ ||C 0⊥ |. By Corollary 5.2, we have 0

0

(2r )N (2r )N (2r )N +N |C ◦ C | = |C ||C | = · = = |(C ◦ C 0 )⊥ |, |C| |C 0 | |C ◦ C 0 | ⊥

0⊥

⊥

0⊥

where N = α + 2β, N 0 = α0 + 2β 0 . This gives the result. ¯ α × Z4 [ξ]β for all even α and all β. Theorem 5.5. Self-dual codes exist in Z2 (ξ) ¯ = F2r of order 2r . This Proof. Let C be the code generated by (1, 1) over the field Z2 (ξ) code is a self-dual code of length 2. It can be viewed as an additive code C = h(11|)i = ¯ in Z2 (ξ) ¯ α × Z4 [ξ]β , where α = 2 and β = 0. It is immediate that C is {(aa|) | a ∈ Z2 (ξ)} self-dual. Let D be the code 2Z4 [ξ] in Z4 [ξ]. This code has cardinality 2r in an ambient space of size 4r . It is also self-orthogonal. Therefore it is a self-dual code of length 1, and ¯ α0 × Z4 [ξ]β 0 , it can be viewed as an additive code D = h(|2)i = {(|(2b)) | b ∈ Z4 [ξ]} in Z2 (ξ) where α0 = 0 and β 0 = 1. The code D is self-dual as well. By Lemma 5.4, we have (C ◦ D)⊥ = C ⊥ ◦ D⊥ = C ◦ D. ¯ b ∈ Z4 [ξ]} is a self-dual code in Z2 (ξ) ¯ 2 × Z4 [ξ]. This gives that C ◦ D = {(aa|2b) | a ∈ Z2 (ξ), By using the cross-product construction (see Equation 5.1), we obtain that there exist self-dual codes of length n = α + β for all even α and all β. 9

Example 5.6. Consider the codes C and D in the above theorem. Their weight enumerators are as follows: LC (x, y) = x2 + (2r − 1)y 2 , LD (x, y) = x2 + (2r − 1)y 2 . ¯ 2 × Z4 [ξ] is Hence the weight enumerator of C ◦ D in Z2 (ξ) LC◦D (x, y) = LC (x, y)LD (x, y) = x4 + (2r+1 − 2)x2 y 2 + (4r − 2r+1 + 1)y 4 . Remark 5.7. Under the generalized Gray map, the image of the code D = 2Z4 [ξ] in Z4 [ξ] ¯ = F2r generated by the vector (1, 1) which is a linear self-dual code. is the code over Z2 (ξ) In particular, we know that the code generated by ¯ b ∈ Z4 [ξ]} ∈ Z2 (ξ) ¯ 2 × Z4 [ξ] h(11|0), (00|2)i = {(aa|0) + (00|2b) | a ∈ Z2 (ξ), ¯ is an additive code, and its image under the Gray map is a linear self-dual code over Z2 (ξ) which has generator matrix as follows: 1 1 0 0 G= . 0 0 1 1 ¯ α and D ⊆ Z4 [ξ]β and let C, D be their corresponding codes Definition 5.8. Let C ⊆ Z2 (ξ) α 0 0 ¯ × Z4 [ξ] and Z2 (ξ) ¯ × Z4 [ξ]β respectively. An additive code in Z2 (ξ) ¯ α × Z4 [ξ]β in Z2 (ξ) is called decomposable if it is of the form C ◦ D, where β = 0 for C and α = 0 for D. Otherwise it is called indecomposable. We know that the additive code C ◦ D in Theorem 5.5 is a decomposable code. ¯ α × Z4 [ξ]β , we have the following bound on the For a decomposable code in Z2 (ξ) minimum distance. ¯ α × Z4 [ξ]β , where C ⊆ Proposition 5.9. Let Ce = C ◦ D be a decomposable code in Z2 (ξ) ¯ α and D ⊆ Z4 [ξ]β such that C and D be their corresponding codes in Z2 (ξ) ¯ α × Z4 [ξ]0 Z2 (ξ) 0 β ¯ × Z4 [ξ] respectively. Then and Z2 (ξ) e = min{dH (C), d(D)}. d(C) e then (v|) ∈ C and (|w) ∈ D. Hence Proof. Take (v|w) ∈ C, e = wt(C) e = min{wt((v|w)) | (0|0) 6= (v|w) ∈ C} e d(C) = min{wH ((v|)) + wt((|w)) | (v|) ∈ C, (|w) ∈ D} = min{wH (v), wt(w)) | v ∈ C, w ∈ D} = min{dH (C), d(D)}. This completes the proof.

10

6

¯ α × Z4[ξ]β Formally Self-Dual Codes in Z2(ξ)

¯ α × Z4 [ξ]β . In this section, we consider the existence of formally self-dual codes in Z2 (ξ) ¯ α ×Z4 [ξ]β . The code C is called formally Definition 6.1. Let C be an additive code in Z2 (ξ) self-dual if LC (x, y) = LC ⊥ (x, y). rα

Since a formally self-dual code C is an additive code, we have that |C| = 2 2 +rβ . This implies that rα ≡ 0 (mod 2). Furthermore, C is formally self-dual, which implies 1 LC (x, y) = LC ⊥ (x, y) = |C| LC (x + (2r − 1)y, x − y), but C and C ⊥ need not to be equal. ¯ 2 × Z4 [ξ]. Let Example 6.2. Consider the space Z2 (ξ) ¯ 2 }, D = {(0|b) | b ∈ Z4 [ξ]} C = {(v|0) | v ∈ Z2 (ξ) ¯ 2 × Z4 [ξ]. It is easy to verify that D ⊆ C ⊥ and that |D| = be two additive codes in Z2 (ξ) r |C| = 4 . By Corollary 5.2, |C ⊥ | = (2r )4 /|C| = 4r = |D|. Hence C ⊥ = D. The Lee weight enumerators of C and D are: LC (x, y) = LD (x, y) = x4 + (2r+1 − 2)x3 y + (4r − 2r+1 + 1)x2 y 2 . Note that C 6= D = C ⊥ , this implies that C and D are formally self-dual codes. We have the following theorem. ¯ α ×Z4 [ξ]β and Z2 (ξ) ¯ α0 × Theorem 6.3. Let C and C 0 be two formally self-dual codes in Z2 (ξ) 0 ¯ α+α0 ×Z4 [ξ]β+β 0 Z4 [ξ]β respectively. Then the code C◦C 0 is a formally self-dual code in Z2 (ξ) and the weight enumerator of C ◦ C 0 is LC◦C 0 (x, y) = LC (x, y)LC 0 (x, y). Proof. Let c ◦ c0 ∈ C ◦ C 0 , where c = (v|w) ∈ C, c0 = (v0 |w0 ) ∈ C 0 . Note that wt(c ◦ c0 ) = wt(c) + wt(c0 ). Hence X 0 0 0 0 LC◦C 0 (x, y) = x(α+α )+2(β+β )−wt(c◦c ) y wt(c◦c ) c◦c0 ∈C◦C 0

=

X

xα+2β−wt(c) y wt(c)

X

0

0

0

0

x(α +2β )−wt(c ) y wt(c )

c0 ∈C 0

c∈C

= LC (x, y)LC 0 (x, y). Furthermore, LC (x, y) = LC ⊥ (x, y), and LC 0⊥ (x, y) = LC 0 (x, y), since C and C 0 are formally self-dual codes. By Lemma 5.4, (C ◦ C 0 )⊥ = C ⊥ ◦ C 0⊥ . We obtain that LC◦C 0 (x, y) = LC (x, y)LC 0 (x, y) = LC ⊥ (x, y)LC 0⊥ (x, y) = LC ⊥ ◦C 0⊥ (x, y) = L(C◦C 0 )⊥ (x, y). This implies that C ◦ C 0 is a formally self-dual code.

11

Example 6.4. Let C1 = h(10|)i where α = 2, β = 0 and C2 = h(00|1)i where α = 2, β = 1. Then it is easy to see that C ⊥ = h(01|)i, C2⊥ = h(10|0), (01|0)i. The Lee weight enumerators of C1 and C1⊥ are LC1 (x, y) = x2 + (2r − 1)xy = LC1⊥ (x, y). By Remark 3.2, the Lee weight enumerators of C2 and C2⊥ are LC2 (x, y) = x4 + (2r+1 − 2)x3 y + (4r − 2r+1 + 1)x2 y 2 = LC2⊥ (x, y). This implies that C1 and C1⊥ are formally self-dual, and C2 and C2⊥ are formally self-dual too. By Theorem 6.3, we have LC1 ◦C2 (x, y) = LC1 (x, y)LC2 (x, y) = x6 + 3 · (2r − 1)x5 y + 3 · (4r − 2r+1 + 1)x4 y 2 + (2r − 1)(4r − 2r+1 + 1)x3 y 3 . ¯ α × Z4 [ξ]β exist for all even α and all β. Theorem 6.5. Formally self-dual codes in Z2 (ξ) Proof. We know that the code C1 = h(10|)i where α = 2 and β = 0 in Example 6.4 is a formally self-dual code, and D1 = h(|2)i is a formally self-dual code where α = 0 and β = 1. By using Theorem 6.3 repeatedly we obtain that there exist formally self-dual codes for all even α and all β. ¯ α . Then C can be viewed as a Let C be a linear formally self-dual code in Z2 (ξ) ¯ α × Z4 [ξ]β formally self-dual code, where β = 0. Similarly, we can view a formally Z2 (ξ) 0 ¯ α0 × Z4 [ξ]β 0 , where α0 = 0. self-dual code D in Z4 [ξ]β as a formally self-dual code in Z2 (ξ) Then we have the following corollary. ¯ (with Corollary 6.6. Let C be a linear formally self-dual code of length α over Z2 (ξ) respect to the Hamming weight enumerator) and D be a formally self-dual code of length ¯ 4 [ξ] β over Z4 [ξ] (with the Lee weight enumerator). Then C × D is a formally Z2 (ξ)Z self-dual code. Proof. Note that in this case, C × D = C ◦ D. Then simply apply Theorem 6.3 where C has β = 0 and D has α0 = 0. This gives the proof. ¯ α × Z4 [ξ]β are additive codes, namely they are Since the codes we consider in Z2 (ξ) subgroups that are not submodules, when we write that a code is generated by v1 , · · · , vs we mean X hv1 , · · · , vs i = {w | w = αi vi , i = 1, 2, · · · , s}. αi ∈Z

¯ or Z4 [ξ]. Note that αi ∈ Z are not in Z2 (ξ) To avoid writing lengthy generators we can write λi vi when we want each multiple of ¯ or Z4 [ξ]. vi to be a generator where λi in Z2 (ξ) We know that each vector in the ambient space is either of order 2 or order 4. Then the order 2 vectors are of the form (v|2w). Hence we can write the generator as A1 2A2 0 G = 0 2A3 2A4 , A5 A6 A7 12

where any row in A6 , A7 has at least one element not in 2Z4 [ξ]. Note that we can not necessarily make any of the Ai the identity matrix. For example if r = 2, in this case, we ¯ we can have the code let ω = ξ, and ω ¯ = ξ, C = h(¯ ω |ωω)i = {(0|00), (¯ ω |ωω), (0|(2ω)(2ω)), (¯ ω |(3ω)(3ω))}. This code is self-orthogonal with weight enumerator LC (x, y) = x5 + 2x2 y 3 + xy 4 . By the MacWillimas relations, we get 1 ((x + 3y)5 + 2(x + 3y)2 (x − y)3 + (x + 3y)(x − y)4 ) 4 = x5 + 5x4 y + 18x3 y 2 + 66x2 y 3 + 109xy 4 + 57y 5 .

LC ⊥ (x, y) =

By the generalized Gray map, the set of all vectors in the image Φ(C) of C is {(00000), (¯ ω 0¯ ω 0¯ ω ), (0¯ ωω ¯ω ¯ω ¯ ), (¯ ωω ¯ 0¯ ω 0)}. The image Φ(C) is not a linear code over the field Z2 (¯ ω ) = F4 , but it is linear as an additive code. ¯ α × Z4 [ξ]β . In the following, we consider the types of formally self-dual codes in Z2 (ξ) ¯ α × Z4 [ξ]β . Definition 6.7. Let C be a formally self-dual code in Z2 (ξ) ¯ α × Z4 [ξ]β is said to be a Type 0 code if they have vector c (i) The code C in Z2 (ξ) whose images Φ(c) is odd. ¯ α × Z4 [ξ]β is said to be Type I if the image Φ(c) of every (ii) The code C in Z2 (ξ) codeword v ∈ C is even, and there exists at least one codeword in Φ(C) that is singly even. ¯ α × Z4 [ξ]β is said to be Type II if the image Φ(c) of every (iii) The code C in Z2 (ξ) codeword v ∈ C is doubly-even. Recall that odd, even and doubly-even are defined in terms of their image as vectors ¯ over the field Z2 (ξ). Example 6.8. By the definition above, the codes C1 and C2 in Example 6.4 are Type 0 ¯ 2 × Z4 [ξ] is a Type I code. codes. By Remark 5.7, the code h(11|0), (00|2)i ⊆ Z2 (ξ) ¯ 2 × Z4 [ξ]2 . Suppose that the Example 6.9. Let C and C 0 be two additive codes in Z2 (ξ) code C = h(0, a ¯|2a, 0), (¯b, ¯b|b, b)i and the code C 0 = h(a¯0 , a¯0 |3a0 , a0 ), (b¯0 , 0|0, 2b0 )i, where 0 0 ¯ One can check that a, a , b, b ∈ Z4 [ξ] and ¯ is the residue map from Z4 [ξ] to Z2 (ξ). 0 ⊥ 0 3r ⊥ r 6 6r C ⊆ C . Note that |C | = |C| = 2 and |C| · |C | = (2 ) = 2 . Hence |C ⊥ | = |C| = 23r . We get |C 0 | = |C ⊥ |, this implies that C 0 = C ⊥ . It is easy to verify that C 0 6= C, this implies C and C 0 are not self-dual. Take r = 2, we can compute the Lee weight enumerators of C and C 0 as follows: LC (x, y) = x6 + 12x3 y 3 + 9x2 y 4 + 36xy 5 + 6y 6 = LC 0 (x, y). Hence C and C 0 are formally self-dual codes. By the Lee weight enumerator of C above, we know there exist 12 vectors in C which have odd weights, so C is a formally Type 0 code. In fact it is an indecomposable Type 0 code. 13

The following theorem is immediate. ¯ α × Z4 [ξ]β . Theorem 6.10. Let C be a formally self-dual code in Z2 (ξ) ¯ α+2β . If C is Type 0 then Φ(C) is a Type 0 formally self-dual code in Z2 (ξ) ¯ α+2β . If C is Type I then Φ(C) is a Type I formally self-dual code in Z2 (ξ) ¯ α+2β . If C is Type II then Φ(C) is a Type II formally self-dual code in Z2 (ξ) The usefulness of this theorem is that we can construct additive formally self-dual ¯ α × Z4 [ξ]β and use them to construct codes over the field Z2 (ξ) ¯ whose codes in Z2 (ξ) weight enumerators are held invariant by the action of the MacWilliams relations, but may not be linear codes over the field. We have the following theorem. Theorem 6.11. Type 0 Codes exist for all even α and all β. Proof. The theorem follows from Example 6.2 and Theorem 6.3. Theorem 6.12. Type I formally self-dual codes exist for all even α and all β. Proof. Formally self-dual Type I codes exist for all even α and all β by Theorem 5.5 since the self-dual codes exhibited are Type I formally self-dual codes and no formally self-dual code with α odd can exist for the same reason given in the proof of Theorem 5.5. Theorem 6.13. Type II formally self-dual codes exist for all α ≡ 0 (mod 8) and all β. Proof. We have shown that if C is a binary Type II code then C generates a Type II code in this setting. Then h(2)i generates a Type II code in Z4 [ξ] in that h(2)i is a self-dual code in Z4 [ξ]. Thus gives the result. Note that Example 4.5 gives a Type II code of length 4 but this is dependent on the fact that r = 2, so it does not apply in all cases.

Acknowledgements The second author thanks the Department of Mathematics, University of Scranton for their hospitality and support, where he stayed from December 2013 to February 2014. The second author was supported by NSFC through Grant No. 11171370.

References [1] M. Bilal, J. Borges, S.T. Dougherty and C. Fern´andez-C´ordoba, Maximum distance separable codes over Z4 and Z2 × Z4 , Des. Codes Cryptogr., 61, (2011), 31 - 40. [2] J. Borges, S. T. Dougherty and C. Fern´andez-C´ordoba, Characterization and constructions of self-dual codes over Z2 × Z4 , Adv. Math. Commun., 6, (2012), 287 303. 14

[3] A. Bonnecaze, P. Sol´e, C. Bachoc and B. Mourrain, Type II codes over Z4 , IEEE Trans. Inform. Theory, 43, (1997), 969 - 976. [4] J. Borges, C. Fern´andez-C´ordoba, J. Pujol, J. Rif`a and M. Villanueva, Z2 Z4 -linear codes: generator matrices and duality, Des. Codes Cryptogr., 54, (2010), 167 - 179. [5] J. Borges and J. Rif`a, A characterization of 1-perfect additive codes, IEEE Trans. Inform. Theory, 45, (1999), 1688 - 1697. [6] J.H. Conway and N. J. A. Sloane, Self-Dual Codes over the integers modulo 4, Journal of Combinatorial Theory, Series A, 62, (1993), 30 - 45. [7] P. Delsarte, An algebraic approach to the association schemes of coding theory, Philips Res. Rep. Suppl., 10, (1973). [8] P. Delsarte and V. Levenshtein, Asociation schemes and coding theory, IEEE Trans. Inform. Theory, 44, (1998), 2477 - 2504. [9] S.T. Dougherty and C. Fern´andez-C´ordoba, Z2 Z4 -additive fromally self-dual codes, Des. Codes Cryptogr., 61, (2011), 31 - 40. [10] M. Greferath and S. E. Schmidt, Gray isometries for finite rings and a nonlinear ternary (36, 312 , 15) code, IEEE Trans. Inform. Theory, 45, (1999), 2522 - 2524. [11] 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, 40, (1994), 301 - 319. [12] B. R. McDonald, Finite Rings with Identity, Pure and Applied Mathematics, Vol.28. Marcel Dekker, Inc., New York, 1974. [13] J. A. Wood, Duality for modules over finite rings and applications to coding theory, Amer. J. Math., 121, (1999), 555 - 575.

15