EUROPEAN JOURNAL OF PURE AND APPLIED MATHEMATICS Vol. 10, No. 2, 2017, 392-409 ISSN 1307-5543 – www.ejpam.com Published by New York Business Global Z2-Triple cyclic codes and their duals Srinivasulu B1, Maheshanand Bhaintwal2 1,2 Department of Mathematics, Indian Institute of Technology Roorkee, Roorkee, India. Abstract. A Z2-triple cyclic code of block length (r, s, t) is a binary code of length r+ s+ t such that the code is partitioned into three parts of lengths r, s and t such that each part is invariant under the cyclic shifts of the coordinates. Such a code can be viewed as Z2[x]-submodules of Z2[x] 〈xr−1〉 × Z2[x] 〈xs−1〉 × Z2[x] 〈xt−1〉 , in polynomial representation. In this paper, we determine the structure of these codes. We have obtained the form of the generators for such codes. Further, a minimal generating set for such codes is obtained. Also, we study the structure of the duals of these codes via the generators of the codes. 2010 Mathematics Subject Classifications: 94B05, 94B60 Key Words and Phrases: Triple cyclic codes, minimal spanning sets, dual codes 1. Introduction Codes over rings were introduced in early 1970s. Among them, cyclic codes are an important class of linear codes because of their richness in algebraic structure and practical use. Cyclic codes over finite fields are well studied [15] and they have been extended to various finite rings [11]. The search for new codes with good parameters encourages researchers to introduce various families of linear codes. In 1973, Delsarte and Levenshtein [10] defined additive codes in terms of association schemes as the subgroups of the underlying abelian group. Under binary Hamming scheme, the underlying group of order 2k is isomorphic to Zα2 ×Zβ4 , where α and β are non-negative integers. The subgroups of underlying group are called Z2Z4-additive codes. Borges et al. [5] have studied Z2Z4-additive codes by deriving their generator matrices and parity check matrices. In [1], Z2Z4-cyclic codes of block length (r, t) for odd t have been defined as Z4- submodules of Zr2 × Zt4, and a minimal spanning set for these codes has been determined. Extending this work, Borges et al. [6] gave duals of Z2Z4-cyclic codes of block length (r, t) for odd t. Recently Aydogdu et al. [3] have studied a new class of codes over the structure Z2Z2[u], where Z2[u] = Z2 + uZ2, u 2 = 0. They have defined Z2Z2[u]-additive codes as Z2[u]-submodules of Zs2 × Z2[u]t, and obtained their generator and parity check matrices. They have also defined the type of these codes and have shown that some optimal binary codes are Gray images of Z2Z2[u]-additive codes. Email addresses: bslu1981@gmail.com (Srinivasulu B), mahesfma@iitr.ac.in (M. Bhaintwal) http://www.ejpam.com 392 c© 2017 EJPAM All rights reserved. Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 393 Extending the concepts given in [6], recently Aydogdu and Siap have studied [2] the algebraic structure of ZprZps-additive codes. They have determined the generator and parity check matrices for these codes. Borges et al. [4] have derived the structure of Z2-double cyclic codes. They have determined generating polynomials for these codes and derived the relationship between the codes and their duals. Similarly structure of double cyclic codes over the rings Z4 and F2 + uF2 + u2F2, u 3 = 0 have been studied in [14][17]. In [14], Gao et al. have obtained some optimal or suboptimal non-linear binary codes. A double cyclic code is in fact a generalized quasi-cyclic (GQC) code of index two. Siap and Kulhan[16] introduced GQC codes over finite fields and the study has been extended to various finite rings by many authors [7, 8, 9, 12, 13]. Most of these studies focused on exploring 1-generator GQC codes where they have succeeded in finding their duals and obtained a good number of optimal codes. In this paper, extending the concepts of [4] and [17] we introduce Z2-triple cyclic codes and study their algebraic structure. We give a minimal spanning set for these codes. Further we present the structure of duals of these codes via their generators. The paper is organized as follows. In Section 2, we introduce some basic notations and definitions of Z2-triple cyclic codes and derive the form of their generators. In this section, we also determine a minimal spanning set for Z2-triple cyclic codes. In Section 3, we study the duals of Z2-triple cyclic codes. 2. Z2-triple cyclic codes Let r, s and t be three positive integers and n = r + s + t. Let C be a binary linear code of length n. The n coordinates of each codeword of C can be partitioned into three sets of size r, s and t. Therefore C is a Z2-submodule of Zr2 × Zs2 × Zt2. Definition 1. For any three positive integers r, s and t, a Z2-triple cyclic code C of block length (r, s, t) is a binary linear code of length n = r + s+ t such that σ(c) = (c1,r−1, c1,0, · · · , c1,r−2 | c2,s−1, c2,0, · · · , c2,s−2 | c3,t−1, c3,0, · · · , c3,t−2) ∈ C, whenever c = (c1,0, c1,1, · · · , c1,r−1 | c2,0, c2,1, · · · , c2,s−1 | c3,0, c3,1, · · · , c3,t−1) ∈ C. Let C be a Z2-triple cyclic code of block length (r, s, t). Let Cr be the canonical projection of C on the first r coordinates, Cs be the projection of C on next s coordinates and Ct be the projection of C on the last t coordinates. It is easy to see that these projections Cr, Cs and Ct are binary cyclic codes of lengths r, s and t, respectively. C is called separable if C = Cr × Cs × Ct. The dual C⊥ of a Z2-triple cyclic code C of block length (r, s, t) is defined as C⊥ = {v′ ∈ Zr2 × Zs2 × Zt2 | v · v′ = 0 for all v ∈ C}, where v · v′ is the usual inner product over Z2. Let m = lcm(r, s, t). The following result shows that the dual of a Z2-triple cyclic code of block length (r, s, t) is also a Z2-triple cyclic code of same block length. Theorem 1. If C is a Z2-triple cyclic code of block length (r, s, t), then C⊥ is also Z2-triple cyclic code of block length (r, s, t). Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 394 Proof. Let u ∈ C⊥ and v ∈ C. Since C is invariant under σ, σm−1(v) ∈ C. Therefore 0 = u · σm−1(v) = (u1,0v1,1 + · · ·+ u1,r−2v1,r−1 + u1,r−1v1,0) + (u2,0v2,1 + · · ·+ u2,s−1v2,0) + (u3,0v3,1 + · · ·+ u3,t−1v3,0) = (u1,r−1v1,0 + u1,0v1,1 + · · ·+ u1,r−2v1,r−1) + (u2,s−1v2,0 + · · ·+ u2,s−2v2,s−1) + (u3,t−1v3,0 + · · ·+ u3,t−2v3,t−1) = σ(u) · v. As u is an arbitrary element of C⊥, the result follows. Now we determine the generators for a Z2-triple cyclic code C of block length (r, s, t). For this, we first consider the algebraic structure of C in Z2[x] 〈xr−1〉 × Z2[x] 〈xs−1〉 × Z2[x] 〈xt−1〉 . Let Rr,s,t[x] = Z2[x] 〈xr−1〉 × Z2[x] 〈xs−1〉 × Z2[x] 〈xt−1〉 , Z2,r[x] = Z2[x] 〈xr−1〉 , Z2,s[x] = Z2[x] 〈xs−1〉 and Z2,t[x] = Z2[x] 〈xt−1〉 . By identifying each c = (c1 | c2 | c3) ∈ Zr2 × Zs2 × Zt2 with a triplet of polynomials (c1(x) | c2(x) | c3(x)) ∈ Rr,s,t[x], where c1(x) = ∑r−1 j=0 c1,jx j , c2(x) = ∑s−1 j=0 c2,jx j and c3(x) = ∑t−1 k=0 c3,jx j , we get a Z2-module isomorphism between Zr2×Zs2×Zt2 and Rr,s,t[x]. Also for any f(x) ∈ Z2[x] and c = (c1(x) | c2(x) | c3(x)) ∈ Rr,s,t[x], we define the product f(x) ∗ (c1(x) | c2(x) | c3(x)) = (f(x)c1(x) | f(x)c2(x) | f(x)c3(x)) ∈ Rr,s,t[x], where f(x)ci(x) is determined in the corresponding residue ring. Clearly this product is well defined. Therefore Rr,s,t[x] is a Z2[x]-module with respect to this product. We note that, in polynomial representation, x(c1(x) | c2(x) | c3(x)) = (xc1(x) | xc2(x) | xc3(x)) represents σ(c) for the corresponding element c = (c1 | c2 | c3) ∈ Zr2 ×Zs2 ×Zt2. The codes in the present setting are in fact the extensions of both binary cyclic codes and Z2-double cyclic codes that defined in [4]. We denote f ∗ g simply by fg. The following result follows immediately from the previous discussion. Theorem 2. Let C be a binary linear code of length r+s+ t. Then C is a Z2-triple cyclic code in Zr2 × Zs2 × Zt2 if and only if C is a Z2[x]-submodule of Rr,s,t[x]. Since both the modules Zr2 × Zs2 and Zt2 can be obtained by projecting Zr2 × Zs2 × Zt2 on first r + s coordinates and last t coordinates, respectively, we make use of the cyclic structures of both binary codes and Z2-double cyclic codes as given in [4] to find the generator polynomials for a Z2-triple cyclic code C of block length (r, s, t) in Rr,s,t[x]. The following theorem gives the generators for a Z2-double cyclic code of block length (r, s), which is useful for the rest of our study. Theorem 3. [4, Theorem 3.1] The Z2[x]-module Rr,s = Z2[x] 〈xr−1〉 × Z2[x] 〈xs−1〉 is a noetherian module, and every submodule C of Rr,s can be written as C = 〈(b(x) | 0), (l(x) | a(x)〉, where b(x), l(x) ∈ Z2[x]/〈xr − 1〉 with b(x) | (xr − 1) and a(x) ∈ Z2[x]/〈xs − 1〉 with a(x) | (xs − 1). Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 395 Theorem 4. [4, Proposition 3.2.] Let C be a Z2-double cyclic code of block length (r, s), such that C = 〈(b(x) | 0), (l(x) | a(x))〉, where b(x)|xr − 1, a(x)|xs − 1 over Z2. If deg(b(x)) = t1 and deg(a(x)) = t2, then a minimal spanning set for C is S′ = S′1 ∪ S′2, where S′1 = r−t1−1⋃ i=0 xi ∗ (b(x) | 0) S′2 = s−t2−1⋃ i=0 xi ∗ (l(x) | a(x)). In the following theorem, we determine the generator polynomials for Z2-triple cyclic codes of block length (r, s, t). Theorem 5. Let C be a Z2-triple cyclic code of block length (r, s, t). Then C = 〈(b(x) | 0 | 0), (l(x) | a(x) | 0), (g1(x) | g2(x) | g3(x))〉, where b(x), l(x), g1(x) ∈ Z2,r[x] with b(x)|xr− 1 and a(x), g2(x) ∈ Z2,s[x] with a(x)|xs− 1 and g3(x) ∈ Z2,t[x] with g3(x)|xt− 1. Proof. Consider the canonical projection πt : C→ Z2,t[x] such that (c1 | c2 | c3) 7→ c3. It is easy to see that πt is a Z2[x]-module homomorphism with kernel kerC(πt) = {(c1 | c2 | 0) ∈ C}, and therefore the set K = {(c1 | c2) ∈ C : (c1 | c2 | 0) ∈ C} is a Z2-double cyclic code of block length (r, s) in Rr,s[x]. From Theorem 3, there exist b, l ∈ Z2,r[x] and a ∈ Z2,s[x] such that K = 〈(b | 0), (l | a)〉, with b|xr − 1 and a|xs − 1. This implies that kerC(πt) = 〈(b | 0 | 0), (l | a | 0)〉. On the other hand the image of C under πt is an ideal of Z2,t[x] and as Z2,t[x] is a PID, there exists g3 ∈ Z2,t[x] such that πt(C) = 〈g3〉. Therefore we have C KerC(πt) ∼= πt(C), and hence C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 for some g1 ∈ Z2,r[x] and g2 ∈ Z2,s[x]. Hence the theorem. Let (c1 | 0 | 0) ∈ C. Then (c1 | 0) ∈ K = {(c1 | c2) ∈ C : (c1 | c2 | 0) ∈ C}. Also, from Theorem 5, we have K = 〈(b | 0), (l | a)〉. Therefore c1 ∈ 〈b〉. Hence (c1 | 0 | 0) ∈ C implies that c1 ∈ 〈b〉. The following results are useful to understand the structure of Z2-triple cyclic code and to determine their minimal spanning sets. The minimal spanning set of a Z2-triple cyclic code can be used to determine its cardinality and the generator matrix. In the rest of the paper we consider the Z2-triple cyclic code as defined in Theorem 5. Lemma 1. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t). Then deg(l) < deg(b) and deg(g1) < deg(b). Proof. Assume deg(l) ≥ deg(b). By applying division algorithm, there exist polynomi- als q and r in Z2[x] such that l = bq + r, where r = 0 or deg(r) < deg(b). Then 〈(b | 0 | 0), (l | a | 0)〉 = 〈(b | 0 | 0), (bq + r | a | 0)〉 = 〈(b | 0 | 0), (r | a | 0)〉. Hence, we may assume that deg(l) < deg(b). Similarly, we can show deg(g1) < deg(b). Lemma 2. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t). Then Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 396 (i) b|xs−1a l; (ii) a|xt−1g3 g2 and if g2 = 0, then b|xt−1g3 g1; (iii) b divides xt−1 g3a lg2 + xt−1 g3 g1. Proof. We have xs−1 a (l | a | 0) = ( xs−1 a l | 0 | 0 ) ∈ C. This implies that xs−1 a l ∈ 〈b〉 and hence b|xs−1a l. Similarly, we can prove the second result. For result (3), as a|xt−1g3 g2, we have xt−1 g3 g2 = ka for some k ∈ Z2[x]. Also as (kl | ka | 0), (x t−1 g3 g1 | x t−1 g3 g2 | 0) ∈ C, implies that (kl | ka | 0) + (x t−1 g3 g1 | x t−1 g3 g2 | 0) = (kl + xt−1 g3 g1 | 0 | 0) ∈ C. The result follows as kl + xt−1 g3 g1 ∈ 〈b〉. In the following theorem we determine a minimal spanning set for a Z2-triple cyclic code. Theorem 6. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) such that b, l, g1 ∈ Z2,r[x], a, g2 ∈ Z2,s[x], g3 ∈ Z2,t[x] with b|xr− 1, a|xs− 1 and g3|xt − 1. Let h1 = xr−1 b , h2 = xs−1 a and h3 = xt−1 g3 . If deg(b) = t1, deg(a) = t2 and deg(g3) = t3, then a minimal spanning set for C is S = S1 ∪ S2 ∪ S3, where S1 = r−t1−1⋃ i=0 xi ∗ (b | 0 | 0) S2 = s−t2−1⋃ i=0 xi ∗ (l | a | 0) S3 = t−t3−1⋃ i=0 xi ∗ (g1 | g2 | g3). Moreover, | C |= 2r+s+t−deg(b)−deg(a)−deg(g3). Proof. Let c be a codeword in C. Then there exist d1, d2, d3 ∈ Z2[x] such that c = d1 ∗ (b | 0 | 0) + d2 ∗ (l | a | 0) + d3 ∗ (g1 | g2 | g3) (1) = (d1b | 0 | 0) + (d2l | d2a | 0) + (d3g1 | d3g2 | d3g3) We first show that d1 ∗ (b | 0 | 0) ∈ span(S1). If deg(d1) < r − t1, then obviously d1 ∗ (b | 0 | 0) ∈ span(S1). Let deg(d1) ≥ r − t1. By division algorithm, there exist Q1,R1∈ Z2[x] such that d1 = Q1 xr−1 b +R1 with R1 = 0 or deg(R1) < r − t1. Then (d1b | 0 | 0) = (( Q1 xr − 1 b +R1 ) b | 0 | 0 ) = (Q1(x r − 1) +R1b | 0 | 0) = Q1(x r − 1 | 0 | 0) +R1(b | 0 | 0) = R1(b | 0 | 0) ∈ span(S1). Next we show that d2 ∗ (l | a | 0) ∈ span(S1 ∪ S2). We have by division algorithm d2 = Q2h2 +R2 with R2 = 0 or deg(R2) < s− t2, Q2, R2 ∈ Z2[x]. Therefore d2 ∗ (l | a | 0) = (Q2h2 +R2)(l | a | 0) Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 397 = Q2(lh2 | 0 | 0) +R2(l | a | 0). (2) Since 0 ≤ deg(R2) ≤ s − t2 − 1, we have R2(l | a | 0) ∈ span(S2). Also from Lemma 2, we have b | h2l, which implies that Q2(lh2 | 0 | 0) ∈ span(S1). Therefore from (2) we get d2 ∗ (l | a | 0) ∈ span(S1 ∪ S2). Finally we show that d3 ∗ (g1 | g2 | g3) belongs to span(S1 ∪ S2 ∪ S3). Again by the division algorithm, we have d3 = Q3h3 + R3 with R3 = 0 or deg(R3) < t − t3, where Q3 and R3 ∈ Z2[x]. Then d3 ∗ (g1 | g2 | g3) = (Q3h3 +R3) (g1 | g2 | g3) = Q3h3(g1 | g2 | 0) +R3(g1 | g2 | g3). (3) It easy to see that Q3h3(g1 | g2 | 0) ∈ C and hence Q3h3(g1 | g2) ∈ K = {(c1 | c2) : (c1 | c2 | 0) ∈ kerC(πt)}. From Theorem 4, we have Q3h3(g1 | g2) ∈ span(S′1 ∪ S′2). This implies that, Q3h3(g1 | g2 | 0) ∈ span(S1 ∪ S2). Also, R3(g1 | g2 | g3) ∈ span(S3), as deg(R3) < t − t3. Therefore, from (3), d3 ∗ (g1 | g2 | g3) ∈ span(S1 ∪ S2 ∪ S3). Hence C ∈ span(S1 ∪ S2 ∪ S3). The second result follows as S is linearly independent. The following example illustrates this. Example 1. Let r = s = t = 7. We have x7 − 1 = (x + 1)(x3 + x + 1)(x3 + x2 + 1) over Z2. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉, where b = (x + 1)(x3 + x2 + 1), l = (x+ 1)2, a = (x+ 1)(x3 +x+ 1), g1 = x+ 1, g2 = x2 +x and g3 = (x+ 1)(x3 +x2 + 1). Then, C satisfies all the conditions of Lemma 1 and Lemma 2. Therefore, C is a Z2-triple cyclic code of block length (7, 7, 7). Also, S = S1 ∪ S2 ∪ S3 forms a generating set for C, where S1 = ∪2i=0x i(x4 + x2 + x + 1 | 0 | 0), S2 = ∪2i=0x i(x2 + 1 | x4 + x3 + x2 + 1 | 0) and S3 = ∪2i=0x i(x+ 1 | x+ x2 | x4 + x2 + x+ 1). The cardinality of C is 29. Also, C is generated by the generator matrix G, where G =  1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 1 0 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 0 1  . Further, the minimum Hamming distance of C is 4 and therefore, C is a [21, 9, 4] binary linear code with the Hamming weight distribution given by [< 0, 1 >,< 4, 7 >,< 6, 21 > ,< 8, 98 >,< 10, 154 >,< 12, 175 >,< 14, 49 >,< 16, 7 >]. 3. Duals of Z2-triple cyclic codes In this section, we determine the duals of Z2-triple cyclic codes of block length (r, s, t). In Theorem 1, it is shown that the dual C⊥ of a Z2-triple cyclic code C is also a Z2-triple Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 398 cyclic code. Therefore, we may let C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 with b̂|xr − 1, â|xs − 1 and ĝ3|xt − 1 over Z2. Further, let m = lcm(r, s, t) and denote the polynomial ∑m−1 i=0 xi by θm(x). Then by [4, Preposition 4.2], we have the following result. Proposition 1. Let r, s, t ∈ N and m = lcm(r, s, t). Then, xm − 1 = θm r (xr)(xr − 1) = θm s (xs)(xs − 1) = θm t (xt)(xt − 1). For any polynomials f, g ∈ Z2[x], we denote the g.c.d. of f and g by (f, g), and we extend this notation for three or more polynomials. For any polynomial f of degree n the reciprocal of f is defined as f∗ = xnf( 1x). The following result is usefull for our study. Theorem 7. Let f and g be two binary polynomials, such that deg(f) ≥ deg(g). Then (i) deg(f) ≥ deg(f∗), and equality holds if x - f ; (ii) (fg)∗ = f∗g∗; (iii) (f + g)∗ = f∗ + xdeg(f)−deg(g)g∗; (iv) g | f ⇒ g∗ | f∗ and (v) (f∗, g∗) = (f, g)∗. Proof. The proofs of 1, 2 and 3 are straight forward. For 4, let g | f , so that f = kg for some k ∈ Z2[x]. Then f∗ = k∗g∗. Therefore g∗ | f∗. From the definition of g.c.d., there exist m1,m2 ∈ Z2[x] such that (f, g) = m1f +m2g. Assuming deg(m1f) ≥ deg(m2g), we get (f, g)∗ = m∗1f ∗ + xdeg(m1f)−deg(m2g)m∗2g ∗. Again as (f∗, g∗) | f∗ and (f∗, g∗) | g∗, so (f∗, g∗) | (f, g)∗. On the other hand, (f, g) | f implies that (f, g)∗ | f∗. Similarly (f, g)∗ | g∗. Hence (f, g)∗ | (f∗, g∗). The result follows. Remark 1. If x - f or x - g, then it is easy to prove that deg(f∗, g∗) = deg(f, g)∗ = deg(f, g). Now we define a mapping ψ : Rr,s,t[x]× Rr,s,t[x]→ Z2[x] 〈xm−1〉 such that ψ(u, v) = u1θm r (xr)xm−deg(v1)−1v∗1 + u2θm s (xs)xm−deg(v2)−1v∗2 + u3θm r (xr)xm−deg(v3)−1v∗3, (4) where u = (u1 | u2 | u3), v = (v1 | v2 | v3) ∈ Rr,s,t[x]. The map ψ is a bilinear map between the two Z2[x]-modules. ψ is a generalization of a similar map defined in [4] for Z2-double cyclic codes. Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 399 Lemma 3. Let u = (u1 | u2 | u3), v = (v1 | v2 | v3) be elements in Zr2 × Zs2 × Zt2 with associated polynomials u(x) = (u1(x) | u2(x) | u3(x)) and v(x) = (v1(x) | v2(x) | v3(x)) in Rr,s,t[x]. Then u is orthogonal to v and all its cyclic shifts if and only if ψ(u, v) = 0. Proof. Let u = (u1,0, u1,1, · · · , u1,r−1 | u2,0, u2,1, · · · , u2,s−1 | u3,0, u3,1, · · · , u3,t−1) and v = (v1,0, v1,1, · · · , v1,r−1 | v2,0, v2,1, · · · , v2,s−1 | v3,0, v3,1, · · · , v3,t−1) be two elements in Zr2 × Zs2 × Zt2. Let σ(i)(v) be the i-th shift of v. Then σ(i)(v) = (v1,0+i, v1,1+i, · · · , v1,i−1 | v2,0+i, v2,1+i, · · · , v2,i−1 | v3,0+i, v3,1+i, · · · , v3,i−1) for 1 ≤ i ≤ m − 1. Under polynomial representation we have ψ(u, σ(i)(v)) = r−1∑ p=0 θm r (xr) r−1∑ j=0 u1,jv1,p+jx m−1−p + s−1∑ q=0 ( θm s (xs) s−1∑ k=0 u2,kv2,q+kx m−1−q ) + t−1∑ l=0 ( θm t (xt) t−1∑ w=0 u3,wv3,l+wx m−1−l ) . Rearranging the terms in the summation we get ψ(u, σ(i)(v)) = m−1∑ i=0 Six m−1−i mod(xm − 1), where Si = ∑r−1 j=0 u1,jv1,i+j+ ∑s−1 k=0 u2,kv2,i+k+ ∑t−1 l=0 u1,lv2,i+l. On the other hand, we have u·σ(i)(v) = ∑r−1 j=0 u1,jv1,i+j+ ∑s−1 k=0 u2,kv2,i+k+ ∑t−1 l=0 u1,lv2,i+l = Si. Thus, ψ(u, σ(i)(v)) = 0 if and only if Si = 0 for all 1 ≤ i ≤ m− 1. Hence the result. Lemma 4. Let u = (u1 | u2 | u3) and v = (v1 | v2 | v3) in Rr,s,t[x] such that ψ(u, v) = 0. Then (i) If u2 = 0 or v2 = 0 and u3 = 0 or v3 = 0, then u1v ∗ 1 = 0 (mod xr − 1). (ii) If u1 = 0 or v1 = 0 and u3 = 0 or v3 = 0, then u2v ∗ 2 = 0 (mod xs − 1). (iii) If u1 = 0 or v1 = 0 and u2 = 0 or v2 = 0, then u3v ∗ 3 = 0 (mod xt − 1). Proof. Let u2 = 0 or v2 = 0 and u3 = 0 or v3 = 0. Then from the definition of ψ, we have ψ(u, v) = u1θm r (xr)xm−deg(v1)−1v∗1 = 0 (mod xm − 1). This implies that u1θm r (xr)xm−deg(v1)−1v∗1 = (xm − 1)g for some g ∈ Z2[x]. Taking f = xdeg(v1)+1g, we get u1θm r (xr)xmv∗1 = f(xm − 1) and therefore u1(x m − 1)xmv∗1 = (xm − 1)(xr − 1)f . Since x and xr − 1 are relatively prime, we have u1v ∗ 1 = 0 (mod xr − 1). Other results can be proved similarly. Now we determine the form of generator matrix of a Z2-triple cyclic code. The gener- ator matrix of a Z2-triple cyclic code C determines the cardinalities of the projections Cr, Cs and Ct and their duals, and these are further be used to obtain the duals of a Z2-triple cyclic codes. Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 400 Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ be its dual. Then from Theorem 6, C is spanned by S = S1 ∪ S2 ∪ S3 and therefore C is generated by the matrix whose rows are the elements of the set S. Let C1, C2 and C3 be the subcodes of C generated by S1, S2 and S3, respectively, and let G1, G2 and G3 be their generator matrices, where G1 = (Ir−deg(b) A | 0 | 0),G2 = (B | C Ir−deg(a) | 0),G3 = (D | E | F It−deg(g3)). Then, the matrix G =  G1 G2 G3  forms a generator matrix for C. We obtain an equivalent form of the matrix G by adjusting its rows, so that we can make use of this equivalent form to find the cardinalities of the respective pro- jections Cr, Cs and Ct. It is easy to see that Cr is generated by (b, l, g1), and this implies that the dimension of Cr is r − deg(b, l, g1), which is greater than or equal to r − deg(b). Therefore, the matrices B and D must have submatrices, say Bε1 and Dε2 of full ranks ε1 and ε2, respectively, such that ε1 + ε2 = deg(b) − deg(b, l, g1). Add the corresponding rows of G2 and G3 that contain Bε1 and Dε2 , to G1. As a result, G2 and G3 are now reduced to the matrices of the form G′2 = (0 | C1 Ir−deg(a)−ε1 | 0) and G′3 = (0 | E1 | F1 It−deg(g3)−ε2). Similarly the dimension of Cs is s− deg(a, g2), as Cs is generated by (a, g2). Therefore, the matrix E1 must have a submatrix, say Ek1 , of full rank k1 = deg(a)− ε2− deg(a, g2). Again, adding the rows that contain the matrix Ek1 , to G′2, we get the remaining part of the generating matrix G of C as (0 | 0 | F ′1 It−deg(g3)−ε2−k1). Let k2 = deg(g3)+ε2+k1 = deg(a)+deg(g3)−deg(a, g2). Therefore, the generator matrix G of C is permutation equivalent to the matrix G′, where G ′ =  Ir−deg(b) A1 A2 A3 Bε1 B1 B2 C11 Iε1 0 0 C21 R1 Is−deg(a)−ε1 0 0 Dε2 D11 E11 E12 Eε2 E14 F11 Iε2 E21 E22 Ek1 E24 F21 R2 Ik1 F31 F32 R3 It−k2  . The cardinalities of Cr, Cs and Ct and their duals follow from G′. The cardinalities of (C⊥)r, (C⊥)s and (C⊥)t can be obtained by projecting the parity check matrix of C on first r coordinates, next s coordinates and remaining last t coordinates, respectively. The results are summarized in the following theorem. Theorem 8. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t). Then, | Cr | = 2r−deg(b)+ε | (Cr) ⊥ | = 2deg(b,l,g1) | (C⊥)r | = 2deg(b), | Cs | = 2r−deg(a,g2) | (Cs) ⊥ | = 2deg(a,g2) | (C⊥)s | = 2deg(a)+ε1 and | Ct | = 2r−deg(g3) | (Ct) ⊥ | = 2deg(g3) | (C⊥)t | = 2k2 , where ε = deg(b)− deg(b, l, g1) and k2 = deg(a) + deg(g3)− deg(a, g2). Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 401 Theorem 9. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual of C. Then b̂ = xr − 1 (b, l, g1)∗ . Proof. First we determine the degree of b̂. From the definition of C⊥, it is easy to show that (Cr) ⊥ = 〈b̂〉. This implies that | (Cr) ⊥ |= 2r−deg(b̂). From Theorem 8, we have | (Cr) ⊥ |= 2deg(b,l,g1). Therefore deg(b̂) = r − deg(b, l, g1). (5) Now, as (b̂ | 0 | 0) ∈ C⊥, from the definition of ψ, we have ψ ( (b̂ | 0 | 0), (b | 0 | 0) ) = ψ ( (b̂ | 0 | 0), (l | a | 0) ) = ψ ( (b̂ | 0 | 0), (g1 | g2 | g3) ) = 0, all modulo (xm − 1). This implies that b̂ b∗ = b̂ l∗ = b̂ g∗1 = 0 (mod xr − 1). Therefore, b̂ gcd(b∗, l∗, g∗1) = 0 (mod xr − 1). Since (b∗, l∗, g∗1) = (b, l, g1) ∗, we have b̂ gcd(b, l, g1) ∗ = 0 (mod xr − 1). Then there exists λ ∈ Z2[x] such that, b̂ (b, l, g1) ∗ = λ(xr − 1) (6) From equations (5) and (6), we get λ = 1 and hence b̂ (b, l, g1) ∗ = (xr − 1). Lemma 5. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t). Then ( 0 | 0 | abg3 (a,g2) ) ∈ C. Proof. Since (b | 0 | 0), (l | a | 0) ∈ C, so l(b | 0 | 0) + b(l | a | 0) = (0 | ab | 0) ∈ C. Similarly (b | 0 | 0), (g1 | g2 | g3) ∈ C implies that (0 | bg2 | bg3) ∈ C. There- fore, as (0 | ab | 0) , (0 | bg2 | bg3) ∈ C, we have g2 (a,g2) (0 | ab | 0) + a (a,g2) (0 | bg2 | bg3) =( 0 | 0 | abg3 (a,g2) ) ∈ C. Theorem 10. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual of C. Then ĝ3 = (xt − 1)(a, g2) ∗ a∗g∗3 . Proof. Again, first we determine the degree of ĝ3. From the definition of C⊥, it is easy to show that (C⊥)s = 〈ĝ3〉 and this implies that | (C⊥)s |= 2t−deg(ĝ3). Also from Theorem 8, we have | (C⊥)s |= 2k2 . Therefore deg(ĝ3) = t− deg(g3)− deg(a) + deg(a, g2). (7) Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 402 Now from Lemma 5, we have ( 0 | 0 | abg3 (a,g2) ) ∈ C and also, as (ĝ1 | ĝ2 | ĝ3) ∈ C⊥, we have ψ (( 0 | 0 | abg3 (a,g2) ) , (ĝ1 | ĝ2 | ĝ3) ) = 0 (mod xm − 1). This implies that ĝ3 a∗b∗g∗3 (a,g2)∗ = 0 (mod xt − 1), and therefore ĝ3 a∗g∗3 (a,g2)∗ = 0 (mod xt − 1). Hence ĝ3 a∗g∗3 (a,g2)∗ = λ′(xt − 1) for some λ′ ∈ Z2[x]. From the degree consideration of ĝ3 i.e. from (7), we get λ′ = 1. The result follows. Theorem 11. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual of C. Then, for some λ1, λ2 ∈ Z2[x], we have ĝ1 b ∗ = λ1(x r − 1) and ĝ2 a ∗b∗ = λ2(x s − 1)(b, l, g1) ∗. Proof. From the definitions of C and C⊥, we have ψ((ĝ1 | ĝ2 | ĝ3), (b | 0 | 0)) = 0 (mod xm − 1). This implies that ĝ1 b ∗ = λ1(x r − 1) for some λ1 ∈ Z2[x]. On the other hand, it is easy to show that ( 0 | ab (b,l,g1) | 0 ) ∈ C. Therefore, ψ (( 0 | ab (b,l,g1) | 0) , (ĝ1 | ĝ2 | ĝ3)) = 0 (mod xm − 1). This implies that ĝ2 a ∗b∗ = λ2(x s − 1)(b, l, g1) ∗ for some λ2 ∈ Z2[x]. In the following theorem, we obtain the explicit forms for λ1 and λ2 that are given in Theorem 11. Theorem 12. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual code of C. Let ρ1 = l∗ (b,l,g1)∗ and ρ2 = g∗2 (a,g2)∗ . Then ĝ1b ∗ = λ1(x r − 1) and ĝ2 a ∗b∗ = λ2(x s − 1)(b, l, g1) ∗, where λ1 = (ρ1) −1 (ρ2) −1 b∗ (b, l, g1)∗ x2m+deg(l)−deg(a)+deg(g2)−deg(g3) ( mod ( (b, g1) ∗ (b, l, g1)∗ , a∗ (a, g2)∗ )) and λ2 = ( g∗2 (a, g2)∗ )−1 b∗ (b, l, g1)∗ x2m+deg(g2)−deg(g3) ( mod a∗ (a, g2)∗ ) . Proof. Since (l | a | 0), (g1 | g2 | g3) ∈ C and (ĝ1 | ĝ2 | ĝ3) ∈ C⊥, we have ψ((ĝ1 | ĝ2 | ĝ3), (l | a | 0)) = ψ(ĝ1 | ĝ2 | ĝ3), (g1 | g2 | g3)) = 0 (mod xm − 1). This implies that ĝ1θm r (xr)xm−1−deg(l)l∗ + ĝ2θm s (xs)xm−1−deg(a)a∗ = 0 (mod xm − 1) (8) and ĝ1θm r (xr)xm−1−deg(g1)g∗1 + ĝ2θm s (xs)xm−1−deg(g2)g∗2 + ĝ3θm t (xt)xm−1−deg(g3)g∗3 = 0 (mod xm − 1) (9) Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 403 Substituting ĝ1 and ĝ2 from Theorem 11, in (8) and (9), and rearranging the terms, we get (xm − 1) l∗ b∗ xm−1−deg(l)λ1 + (xm − 1) (b, l, g1) ∗ b∗ xm−1−deg(a)λ2 = 0 (mod xm − 1) (10) and (xm − 1) g∗1 b∗ xm−1−deg(g1)λ1 + (xm − 1) (b, l, g1) ∗g∗2 a∗b∗ xm−1−deg(g2)λ2 + (xm − 1) (a, g2) ∗ a∗ xm−1−deg(g3) = 0 (mod xm − 1) (11) From (10) and (11), we get (xm−1) (b, l, g1) ∗g∗1 b∗ x2m−2−deg(a)−deg(g1)λ2+(xm−1) (b, l, g1) ∗ a∗b∗ g∗2l ∗ x2m−2−deg(l)−deg(g2)λ2 + (xm − 1) (a, g2) ∗ a∗ l∗ x2m−2−deg(l)−deg(g3) = 0 (mod xm − 1). (12) Equation (12) can be rewritten as (xm − 1) (b, l, g1) ∗ b∗ (a, g2) ∗ a∗ [ g∗1a ∗ (a, g2)∗ x2m−2−deg(a)−deg(g1)λ2 + g∗2 (a, g2)∗ l∗ x2m−2−deg(l)−deg(g2)λ2 + b∗ (b, l, g1)∗ l∗ x2m−2−deg(l)−deg(g3) ] = 0 (mod xm − 1). (13) This implies that [ g∗1a ∗ (a, g2)∗ x2m−2−deg(a)−deg(g1)λ2 + g∗2 (a, g2)∗ l∗ x2m−2−deg(l)−deg(g2)λ2 + b∗ (b, l, g1)∗ l∗ x2m−2−deg(l)−deg(g3) ] = 0 (mod xm − 1). Since a∗ (a,g2)∗ divides xm − 1, we get g∗2 (a, g2)∗ x2m−2−deg(l)−deg(g2)λ2 + b∗ (b, l, g1)∗ x2m−2−deg(l)−deg(g3) = 0 mod ( a∗ (a, g2)∗ ) . (14) Since a∗ (a,g2)∗ and g∗2 (a,g2)∗ are relatively prime, we get from (14) λ2 = ( g∗2 (a, g2)∗ )−1 b∗ (b, l, g1)∗ x2m+deg(g2)−deg(g3) ( mod a∗ (a, g2)∗ ) . Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 404 . Using the similar arguments that are given in finding λ1, we therefore get λ1 = (ρ1) −1 (ρ2) −1 b∗ (b, l, g1)∗ x2m−deg(g3)−deg(a)+deg(g2)+deg(l) ( mod ( (b, g1) ∗ (b, l, g1)∗ , a∗ (a, g2)∗ )) , where ρ1 = l∗ (b,l,g1)∗ and ρ2 = g∗2 (a,g2)∗ . Hence the result. Theorem 13. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual code of C. Then â b∗(a, g2) ∗ = (xs − 1)(b, l, g1) ∗. Proof. First we determine the degree of â. We note that dim(C⊥) = (r + s + t) − (deg(b̂) + deg(â) + deg(ĝ3)). Also, since dim(C) = (r+ s+ t)− (deg(b) + deg(a) + deg(g3)) implies that dim(C⊥) = deg(b)+deg(a)+deg(g3). Therefore from Theorem 9 and Theorem 10, we get deg(â) = s− b− (a, g2) + (b, l, g1). (15) Now since ( 0 | ab (b,l,g1) | 0 ) and ( 0 | bg2 (b,l,g1) | bg3 (b,l,g1) ) are in C, and (l̂ | â | 0) ∈ C⊥, we have ψ ( (l̂ | â | 0), ( 0 | ab (b,l,g1) | 0 )) = ψ ( (l̂ | â | 0), ( 0 | bg2 (b,l,g1) | bg3 (b,l,g1) )) = 0. This implies that â a∗b∗ (b,l,g1)∗ = â g∗2b ∗ (b,l,g1)∗ = 0 (mod (xs − 1)) and hence â (a,g2)∗b∗ (b,l,g1)∗ = 0 (mod (xs − 1)). Therefore, for some γ ∈ Z2[x], we have â (a, g2) ∗b∗ (b, l, g1)∗ = γ(xs − 1) . (16) From equation (15) and equation (16), we get γ = 1 and hence â b∗(a, g2) ∗ = (xs − 1)(b, l, g1) ∗. Theorem 14. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual code of C. Then l̂ b∗ = β(xr − 1), where β = ( l∗ (b,l,g1)∗ )−1 a∗ (a,g2)∗ xm+deg(l)−deg(a) ( mod (b,g1)∗ (b,l,g1)∗ ) . Proof. Since (b | 0 | 0) ∈ C and (l̂ | â | 0) ∈ C⊥, we have l̂b∗ = 0 (mod xr − 1). Therefore l̂ b∗ = β(xr − 1) for some β ∈ Z2[x]. Again, as (l̂ | â | 0) ∈ C⊥ and (l | a | 0) ∈ C, so ψ ( (l̂ | â | 0), (l | a | 0) ) = 0 (mod xm− 1). This implies that Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 405 l̂θm r (xr)xm−1−deg(l)l∗ + âθm s (xs)xm−1−deg(a)a∗ = 0 (mod xm − 1). (17) Substituting l̂ and â in equation (17), we get (xm − 1) l∗ b∗ xm−1−deg(l)β + (xm − 1) (b, l, g1) ∗ b∗(a, g2)∗ a∗xm−1−deg(a) = 0 (mod xm − 1). (18) Rearranging the terms in equation (18), we get (xm−1) (b, l, g1) ∗ b∗ [ l∗ (b, l, g1)∗ xm−1−deg(l)β + a∗ (a, g2)∗ xm−1−deg(a) ] = 0 (mod xm−1). (19) With similar arguments as in Theorem 12, we get β = ( l∗ (b, l, g1)∗ )−1 a∗ (a, g2)∗ xm+deg(l)−deg(a) ( mod (b, g1) ∗ (b, l, g1)∗ ) . (20) Hence the result. Summarising the previous results we have the following theorem. Theorem 15. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉 be the dual code of C. Let ρ1 = l∗ (b,l,g1)∗ and ρ2 = g∗2 (a,g2)∗ . Then (i) b̂ = xr−1 (b,l,g1)∗ ; (ii) ĝ3 = (xt−1)(a,g2)∗ a∗g∗3 ; (iii) â = (xs−1)(b,l,g1)∗ (a,g2)∗b∗ ; (iv) ĝ1 = λ1 (xr−1) b∗ , ĝ2 = λ2 (xs−1)(b,l,g1)∗ a∗b∗ , where λ1 = (ρ1) −1 (ρ2) −1 b∗ (b, l, g1)∗ x2m+deg(l)−deg(a)+deg(g2)−deg(g3) ( mod ( (b, g∗1) (b, l, g1)∗ , a∗ (a, g2)∗ )) and λ2 = ( g∗2 (a, g2)∗ )−1 b∗ (b, l, g1)∗ x2m+deg(g2)−deg(g3) ( mod a∗ (a, g2)∗ ) . (v) l̂ b∗ = β(xr − 1), where β = ( l∗ (b,l,g1)∗ )−1 a∗ (a,g2)∗ xm+deg(l)−deg(a) ( mod (b,g1)∗ (b,l,g1)∗ ) . Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 406 Example 2. Let r = 10, s = 12 and t = 15. Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉, where b = x6 + x5 + x+ 1, l = x5 + 1, a = x6 + 1, g1 = x5 + 1, g2 = x5 + x4 + x2 + x and g3 = x12 + x9 + x6 + x5 + x4 + x2 + x+ 1. C satisfies all the conditions given in Lemma 1 and Lemma 2. Therefore, C is a Z2-triple cyclic code of block length (10, 12, 15). Also, S = S1 ∪ S2 ∪ S3 forms a generating set for C, where S1 = ∪3i=0x i(x6 + x5 + x+ 1 | 0 | 0), S2 = ∪5i=0x i(x5 + 1 | x6 + 1 | 0) and S3 = ∪2i=0x i(x5 + 1 | x5 + x4 + x2 + x | x12 + x9 + x6 + x5 + x4 + x2 + x+ 1). The cardinality of C is 213. A generator matrix of C is G =  1100011000 000000000000 000000000000000 0110001100 000000000000 000000000000000 0011000110 000000000000 000000000000000 0001100011 000000000000 000000000000000 1000010000 100000100000 000000000000000 0100001000 010000010000 000000000000000 0010000100 001000001000 000000000000000 0001000010 000100000100 000000000000000 0000100001 000010000010 000000000000000 1000010000 000001000001 000000000000000 1000010000 011011000000 111011100100100 0100001000 001101100000 011101110010010 0010000100 000110110000 001110111001001  . Further, the minimum Hamming distance of C is 4 and therefore, C is a [37, 13, 4] binary linear Code. From Theorem 15, we have the dual code of C as C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0), (ĝ1 | ĝ2 | ĝ3)〉, where b̂ = (x + 1)(x4 + x3 + x2 + x + 1), â = (x + 1)(x2 + x + 1)3, ĝ3 = x+ 1, ĝ1 = l̂ = 0 and ĝ2 = (x+ 1)(x2 + x+ 1)2. Let t = 0. Then by taking g1 = g2 = g3 = 0, we have (b, l, g1) = (b, l) and (b, g1) = b and hence from Theorem (15), we see that Z2-double cyclic codes are special case of the family of codes that we are considering when t = 0. Thus we have the following result. Corollary 1. Let C = 〈(b | 0 | 0), (l | a | 0)〉 be a Z2-double cyclic code of block length (r, s) and C⊥ = 〈(b̂ | 0 | 0), (l̂ | â | 0)〉 be the dual code of C. Then (i) b̂ = xr−1 (b,l)∗ ; (ii) â a∗b∗ = (xs − 1)(b, l)∗; (iii) l̂ b∗ = β(xr − 1), where β = ( l∗ (b,l)∗ )−1 xm−deg(a)+deg(l) ( mod ( b∗ (b,l)∗ )) . Let C = 〈(b | 0 | 0), (l | a | 0), (g1 | g2 | g3)〉 be a Z2-triple cyclic code of block length (r, s, t) as in Theorem (3). If b|l, b|g1 and a|g2, then C = 〈(b | 0 | 0), (0 | a | 0), (0 | 0 | g3)〉. We note that Cr = 〈b〉, Cs = 〈a〉 and Ct = 〈g3〉 and C = Cr × Cs × Ct. Hence C is Srinivasulu B, Maheshanand Bhaintwal / Eur. J. Pure Appl. Math, 10 (2) (2017), 392-409 407 separable. A generator matrix of C is permutation equivalent to the matrix G =  Ir−deg(b) A 0 0 0 0 0 0 Is−deg(a) B 0 0 0 0 0 0 C It−deg(g3)  . The following theorem shows that the dual of a separable Z2-triple cyclic code is also separable. Theorem 16. Let C = 〈(b | 0 | 0), (0 | a | 0), (0 | 0 | g3)〉 be a separable Z2-triple cyclic code of block length (r, s, t). Then (i) C⊥ is also a separable Z2-triple cyclic code of block length (r, s, t), (ii) C⊥ = 〈( xr−1 b | 0 | 0 ) , ( 0 | xs−1a | 0 ) , ( 0 | 0 | xt−1g3 )〉 , and (iii) dmin(C) = min{dmin(Cr), dmin(Cs), dmin(Ct)}. Proof. As l = g1 = g2 = 0, the proof follows from Theorem 15. Remark 2. If C is a non-separable Z2-triple cyclic code of block length (r, s, t), then dmin(C) ≥ min{dmin(Cr), dmin(Cs), dmin(Ct)}. Example 3. Let r = 6, s = 4 and t = 5. Let C = 〈(b | 0 | 0), (0 | a | 0), (0 | 0 | g3)〉, where b = (x + 1)(x2 + x + 1)2, a = (x + 1)3 and g3 = x4 + x3 + x2 + x + 1. Then C is a Z2-triple cyclic code of block length (6, 4, 5). The set S = {(x5 + x4 + x3 + x2 + x+ 1 | 0 | 0), (0 | x3 + x2 + x + 1 | 0), (0 | 0 | x4 + x3 + x2 + x + 1)} forms a generating set for C. The cardinality of C is 23. Further, the minimum Hamming distance of C is 4 and therefore C is a [15, 3, 4] binary linear code with the Hamming weight distribution [< 0, 1 >,< 4, 1 >,< 5, 1 >,< 6, 1 >,< 9, 1 >,< 10, 1 >,< 11, 1 >,< 15, 1 >]. The dual of C is also a separable Z2-triple cyclic code of block length (6, 4, 5) such that C⊥ = 〈(x+ 1 | 0 | 0), (0 | x+ 1 | 0), (0 | 0 | x+ 1)〉 with minimum Hamming distance 2 and therefore it is a [15, 12, 2] binary code. 4. Conclusion In this paper we have considered Z2-triple cyclic codes of block length (r, s, t). We have studied the structure these codes and determined the form of their generators of these codes. We have determined the size of Z2-triple cyclic codes by giving a minimal spanning set. We also studied the relationship between the generators of Z2-triple cyclic codes and their duals and determined the generators for dual of a Z2-triple cyclic code. REFERENCES 408 References [1] T. Abualrub, I. Siap and N. Aydin. Z2Z4-Additive cyclic codes. IEEE Trans. Inform. Theory, 60(3) : 1508− 1514, 2014. [2] I. Aydogdu and I. Siap. ZprZps-additive codes. Linear Multilinear Algebra, 63(10) : 2089− 2102, 2014. [3] I. Aydogdu, T. Abualrub and I. Siap. On Z2Z2[u]-additive codes. Int. J. of Comput. Math., 92(9) : 1806− 1814, 2013. [4] J. Borges, C. Fernàndez-Còrdoba and R. Ten-Valls. Z2-double cyclic codes, arXiv : 1410.5604v1. [5] J. Borges, C. Fernàndez-Còrdoba, J. Pujol, J. Rifà and M. Villanueva. Z2Z4-linear codes: generator matrices and duality, Des. Codes Crypt., 54(2) : 167− 179, 2009. [6] J. Borges, C. Fernàndez-Còrdoba and R. Ten-Valls. Z2Z4-Additive cyclic codes, gen- erator polynomials and dual codes. IEEE Trans. Inform. Theory, 62(11) : 6348 − 6354, 2016. [7] M. Bhaintwal and S. Wasan. On quasi-cyclic codes over Zq. Appl. Algebra Engrg. Comm. Comput., 20(5) : 459− 480, 2009. [8] Y. Cao. Structural properties and enumeration of 1-generator generalized quasi-cyclic codes. Des. Codes Cryptogr., 60(1) : 67− 79, 2011. [9] Y. Cao. Generalized quasi-cyclic codes over Galois rings: structural properties and enumeration. Appl. Algebra Eng. Commun. Comput., 22(3) : 219− 233, 2011. [10] P. Delsarte and V. I. Levenshtein. Association schemes and coding theory. IEEE Trans. Inform. Theory, 44(6) : 2477− 2504, 1998. [11] H. Q. Dinh and S. R. Loṕez-Permouth. Cyclic and negacyclic codes over finite chain rings. IEEE Trans. Inform. Theory., 50(8) : 1728− 1743, 2004. [12] M. Esmaeili and S. Yari. Generalized quasi-cyclic codes: structural properties and code construction. Appl. Algebra Eng. Commun. Comput., 20(2) : 159− 173, 2009. [13] J. Gao, F-W. Fu, L. Shen and W. Ren. Some results on generalized quasi-cyclic codes over Fq + uFq. IEICE Trans. Fund., 97(4) : 1005− 1011, 2014. [14] J. Gao, M. Shi, T. Wu and F-W. Fu. On double cyclic codes over Z4. Finite Fields Appl., 39 : 233− 250 2016. [15] F. J. MacWilliams and N. J. A. Sloane. The Theory of Error Correcting Codes. North Holland, Amsterdam, 1977. REFERENCES 409 [16] I. Siap and N. Kulhan. The structure of generalized quasi-cyclic codes. Appl. Math. E-Notes, 5 : 24− 30, 2005. [17] T. Yao, M. Shi and P. Solé. Double cyclic codes over Fq + uFq + u2Fq. Int. J. Inf. Coding Theory, 3(2) : 145− 157, 2015.