Quaternary Convolutional Codes from Linear Block Codes over Galois Rings Patrick Sol´e∗ and Virgilio Sison† October 12, 2006
Abstract From a linear block code B over the Galois ring GR(4, m) with a k×n generator matrix and minimum Hamming distance d, a rate-k/n convolutional code over the ring Z4 with squared Euclidean free distance at least 2d and a non-recursive encoder with memory at most m − 1 is constructed. When the generator matrix of B is systematic, the convolutional encoder is systematic, basic, non-catastrophic and minimal. Long codes constructed in this manner are shown to satisfy a Gilbert-Varshamov bound.
Keywords: Convolutional codes over rings, squared Euclidean free distance, Galois rings, homogeneous weight
1
Introduction
The theory of convolutional codes over rings was initiated by Massey and Mittelholzer [10] when they showed that the most appropriate codes for phase modulation are the linear codes over the residue class ring ZM . Johannesson, Wan and Wittenmark [5] advanced the structural analysis of convolutional codes over rings which behave quite differently from codes over fields. Fagnani and Zampieri [2] extended the analysis further and presented quite a complete theory of convolutional codes over the ring Zpr in the usual case where the input sequence space is a free module. Mahapakulchai and Van Dyck [9] employed noncatastrophic polynomial encoders over Z4 for the MAP decoding of MPEG-4 images. The search for and design of good convolutional codes over Z4 that give rise to binary trellis codes with high free distances were reported in several places in the literature, for instance in [6] and [7]. ∗ †
CNRS, I3S ESSI, BP 145, Route des Colles, 06 903 Sophia Antipolis, France,
[email protected] IMSP, University of the Philippines Los Ba˜ nos, College, Laguna, Philippines,
[email protected]
1
In this paper, we adopt a simple but novel technique of constructing non-recursive systematic quaternary convolutional codes from linear block codes over the Galois ring GR(pr , m), and derive upper and lower bounds on the squared Euclidean free distance. The material is organized as follows. Section II introduces the basic definitions and the relevant concepts needed in the succeeding sections. We refer the reader to [8] and [16] for a thorough discussion of Galois ring theory. The paper by Norton and S˘al˘agean [13] discusses linear block codes over Galois rings fully well. The structural properties of ring convolutional encoders are given in [17], [5] and [2]. Section III explains the construction of the convolutional encoder while Section IV derives a lower bound on the squared Euclidean free distance in terms of the minimum distance of the block code. A heuristic approach to finding an upper bound for the squared Euclidean free distance is given. Finally in Section V we give concrete examples of fixed-rate quaternary convolutional codes constructed from certain linear block codes over GR(4, m), m = 2, 3. Apparently, some long codes obtained by our construction have low complexity and possess good distance properties.
2 2.1
Preliminaries and definitions Linear block codes over Galois rings
Let p be a prime number, and r, m ≥ 1 be integers. Consider the finite commutative ring Zpr of integers modulo pr . When r = 1 then the ring Zp is a field and is usually denoted by Fp . Let Zpr [D] be the ring of polynomials in the indeterminate D with coefficients in Zpr . We denote by Fpm the Galois field (unique up to isomorphism) with pm elements, which is a field extension Fp [α] of Fp by a root α of an irreducible polynomial π(D) of degree m in Fp [D]. The Galois ring R = GR(pr , m), of characteristic pr and cardinality prm , is a finite chain ring of length r. That is, R is a local principal ideal ring whose ideals pi R, i = 0, 1, . . . , r, are linearly ordered by inclusion, {0} = pr R ⊂ pr−1 R ⊂ . . . ⊂ pR ⊂ R with its unique maximal ideal pR containing the nilpotent elements. The elements of R\pR are units. The ring R is a Galois extension Zpr [ω] of Zpr by a root ω of a monic basic irreducible polynomial h(D) of degree m in Zpr [D], where h(D) mod p is a monic irreducible polynomial in Fp [D]. The existence of h(D) is assured by Hensel lifting. The Galois ring R is isomorphic to the residue class ring Zpr [D]/(h(D)) and its residue field R/pR is the Galois field Fpm . Every element z ∈ R has a unique additive representation z = b0 + b1 ω + b2 ω 2 + . . . + bm−1 ω m−1
(1)
where bi ∈ Zpr , i = 0, 1, . . . , m − 1. When m = 1, the Galois ring GR(pr , m) becomes the integer ring Zpr , and when r = 1, we obtain the Galois field Fpm . 2
The Galois ring GR(pr , m) is a free module of rank m over Zpr . By the uniqueness of the additive representation given in (1), the set Pm (ω) = {1, ω, ω 2 , . . . , ω m−1 }
(2)
is a free basis for GR(pr , m). We shall call this set as the polynomial basis of GR(pr , m) over the base ring Zpr . A linear block code B of block length n over R is an R-submodule of Rn . A k × n matrix G is called a generator matrix for B if the rows of G span B and no proper subset of the rows of G generates B. The generator matrix G is in standard form if, after a suitable permutation of the coordinates, Ik0 A0,1 A0,2 A0,3 . . . A0,r−1 A0,r 0 pIk pA1,2 pA1,3 . . . pA1,r−1 pA1,r 1 0 p2 Ik2 p2 A2,3 . . . p2 A2,r−1 p2 A2,r G= 0 . . . . . . .. .. .. .. .. .. 0
0
0
0
. . . pr−1 Ikr−1 pr−1 Ar−1,r
where Iki is the ki × ki identity matrix, ki a non-negative integer, Ai,j is a matrix over R, P and the columns are grouped into blocks of lengths k0 , k1 , . . . , kr−1 , n − k where k = r−1 i=0 ki , k being the number of rows of G. Any code B has a generator matrix in standard form, and the parameters k0 , k1 , . . . , kr−1 are the same for any generator matrix G in standard form for B. Each codeword of B can be expressed in the form (u0 , u1 , . . . , ur−1 )G where each ui is a vector of length ki with components in R/pr−i R ' pi R. Thus, B has pms P codewords where s = r−1 i=0 (r − i)ki , and we say that B has type (prm )k0 (p(r−1)m )k1 (p(r−2)m )k2 . . . . . . (p2m )kr−2 (pm )kr−1 . The code B is a free R-module if and only if ki = 0 for all i = 1, . . . , r − 1, and a code over R is called free if it is a free R-module. Any linear block code over a field is free. We equip the linear block code B with the usual Hamming metric. If x, y ∈ B, the Hamming distance of x and y is given by d(x, y) = |{i | 1 ≤ i ≤ n, xi 6= yi }|. The Hamming weight of x is wHam (x) = d(x, 0). We will use the symbol d to denote the minimum Hamming distance or minimum Hamming weight of B.
2.2
pr -ary convolutional codes
In this correspondence, we shall consider a rate-k/n pr -ary convolutional code C to be a Zpr [D]-submodule of Zpr [D]n obtained as the Zpr [D]-rowspan of a matrix G(D) ∈ Z4 [D]k×n . 3
The rows of G(D) are assumed to be linearly independent. The polynomial matrix G(D) is called a generator matrix or a convolutional encoder of C. If we denote an information sequence by the k-vector u(D) = [u1 (D), u2 (D), . . . , uk (D)], the corresponding code sequence (or codeword) is the n-vector v(D) = [v1 (D), v2 (D), . . . , vn (D)] which results from the product v(D) = u(D)G(D). Two generator matrices are equivalent if they generate exactly the same code. Thus in a class of generator matrices for a code, we wish to employ the encoder that possesses the most desirable structural properties. A generator matrix whose entries are all polynomials is called a polynomial matrix. Polynomial encoders are feedback-free (or non-recursive), they do not re-enter part of the output into the encoder as part of the next input. The encoder G(D) for C is said to be systematic if it causes the information symbols to appear unchanged among the code symbols, or equivalently, if some k of its columns form the k × k identity matrix. The matrix G(D) is basic if it has a polynomial right inverse. We want a generator matrix G(D) that is minimal, that is, there exists a realization of G(D) that uses the least number of encoder states required to generate the code. The encoder state at a given instant is the contents of the memory cells at that instant. Interestingly, every (realizable) systematic generator matrix for C is minimal [12, Theorem 3]. Surprisingly however, there exist convolutional codes over rings which do not possess a minimal or a systematic generator matrix. In other words, both minimality and systematicity are code properties [12, 11]. Thus we say that C is minimal (systematic) if it has a minimal (systematic) generator matrix. The ith constraint length, denoted by νi , is defined to be the maximum among the degrees of the component polynomials of the ith row of G(D). The overall constraint length Pk of G(D) is given by ν = i=1 νi . The memory µ of G(D) is the maximum among the constraint lengths of G(D). We say that G(D) is minimal-basic if G(D) is basic and the overall constraint length ν is minimal over all equivalent basic generator matrices. For the field case, minimal-basicity implies minimality, and ν gives the minimal number of encoder states (for the binary case, for instance, this number is equal to 2ν for the controller canonical realization of G(D)). Because of this, the parameter ν has been called the degree of the code. For the ring case however, a minimal-basic generator matrix is not necessarily minimal. At best, the minimal overall constraint length determines an upper bound on the minimal number of encoder states. If p = r = 2, the code C shall be called a quaternary convolutional code. We shall use the Lee weight wL on Z4 defined by wL (0) = 0, wL (1) = wL (3) = 1, wL (2) = 2. The 4
squared Euclidean weight of x ∈ Z4 is given by wE2 (x) = 2wL (x). The squared Euclidean weight used is the one corresponding to embed Z4 into the standard 4-PSK constellation. P For f = fi Di ∈ Z4 [D], we define the Lee weight of f , denoted by wL (f ), to be the sum of the Lee weights of the coefficients fi ∈ Z4 , and the squared Euclidean weight of f , wE2 (f ), to be 2wL (f ). If v(D) is a codeword in C, the Lee weight of v(D), denoted wL (v(D)), is the sum of the Lee weights of its n components, while the squared Euclidean weight of v(D), wE2 (v(D)), is 2wL (v(D)). The squared Euclidean free distance, dE f ree , of C, is the minimum 2 wE (v(D)) over all nonzero codewords v(D) of C. The free distance is a code property and is independent of the choice of generator matrix for the code.
3
The C(B, h, G) Construction
We follow the technique in [14] to construct quaternary convolutional encoders from the encoders of linear block codes over GR(4, m). Let B be a linear block code over the Galois ring GR(4, m) with a k ×n generator matrix G. In this section and the next, we consider the additive representation of the elements of GR(4, m) in terms of the polynomial basis Pm (ω) for GR(4, m). This means that every element z ∈ GR(4, m) can be viewed as a polynomial pz (ω) in ω with coefficients in Z4 and with degree at most m − 1. Let the matrix G(D) to be exactly the generator matrix G of B with every entry z ∈ GR(4, m) in G replaced by pz (D). The matrix formed is a k × n polynomial (non-recursive) matrix over Z4 [D] that generates a quaternary convolutional code which we denote by C(B, h, G). The memory µ of G(D) is at most m − 1. In this construction we deal with systematic (hence free) block codes. The reason is the following proposition. Proposition 3.1 Let B be a linear block code over the Galois ring GR(4,m) with a k × n generator matrix G. If G is systematic, then the convolutional code C(B, h, G) is systematic. By construction, G(D) contains the k × k identity matrix, hence G(D) is systematic. It follows immediately that G(D) is minimal [12, Theorem 3] and basic [2, Proposition 4]. The generator matrix is also non-catastrophic, that is, there is no information sequence with an infinite number of nonzero symbols that gives a code sequence of finite weight [2].
4
Free distance bounds
Following Construction A of lattices from codes, we form the subset Λ(B, h) = {x ∈ Z4 [D]n | (x
mod h) ∈ B}
of Z4 [D]n , which is clearly a Z4 [D]-module. Except when B = Rn , we have that C(B, h, G) is a proper subset of Λ(B, h) since, for instance, the all-h vector belongs to Λ(B, h) but not to C(B, h, G). We now give a lower bound on the squared Euclidean free distance of C(B, h, G). 5
Proposition 4.1 Let B be a linear block code over the Galois ring GR(4, m) with a systematic generator matrix G, and with minimum Hamming distance d. The squared Euclidean free distance dE f ree of C(B, h, G) is at least 2d. Proof: Let v(D) = [v1 (D), v2 (D), . . . , vn (D)] be a nonzero codeword of C(B, h, G), and suppose v(D) = u(D)G(D), for some u(D) = [u1 (D), u2 (D), . . . , uk (D)] ∈ Z4 [D]k . Since C(B, h, G) is systematic, the input is part of the output. Let v(ω) denote the codeword in B that results from reducing v(D) modulo h(D). If v(ω) 6= 0, then wH (v(ω)) ≥ d by definition of d, where wH denotes the Hamming weight of a codeword. Consequently, wL (v(D)) ≥ wH (v(ω)) ≥ d and it follows that dE f ree ≥ 2d. Now suppose v(ω) = 0. This means that for each 1 ≤ i ≤ n, vi (D) = qi (D)h(D)ri , where ri ≥ 1 are integers (may be different), and qi (D) ∈ Z4 [D] are assumed to be no longer divisible by h(D). Let h(D)rt be the smallest power of h(D) occurring in a vi (D). We divide each vi (D) by h(D)rt to get the codeword v 0 (D) = [q1 (D)h(D)s1 , q2 (D)h(D)s2 , . . . , qn (D)h(D)sn ], si = ri − rt ≥ 0, that results from the input vector u0 (D) = [qi1 (D)h(D)si1 , qi2 (D)h(D)si2 , . . . , qik (D)h(D)sik ], where the indices i1 < i2 < . . . < ik indicate the k positions in the output where the components of the input occur (if G is in standard form, these are the first k positions of the output). Since h(D) is not a zero divisor in Z4 [D], we have that wH (v 0 (D)) = wH (v(D)) and arrive at the same conclusion as in the first supposition. Proposition 4.2 Let ∆(n, k, m) denote the largest squared Euclidean free distance of a rate-k/n quaternary convolutional code of memory at most m − 1. We have the bound ∆(n, k, m) ≥ 2nH4−1 m (1 − k/n), where HQ (.) is the Q−ary entropy function. Proof: The result follows by Proposition 4.1 with a GR(4, m)−linear code whose minimum Hamming distance is above the Gilbert Varshamov bound. (See [4] for a Galois ring version of Varshamov Gilbert). From this bound we see that long quaternary codes obtained by the C(B, h, G) construction are good. See the Appendix for larger alphabets and other metrics. Proposition 4.3 If the memory µ of the encoder G(D) ∈ Z4 [D]k×n of C(B, h, G) is the maximum possible, then the squared Euclidean free distance dE f ree of C(B, h, G) satisfies dE f ree ≤
4k 2mn 4k − 1
(3)
Proof: The Heller upper bound on the (Hamming) free distance df ree of a binary, rate-b/c convolutional code (µ + i)c (4) df ree ≤ min i≥1 2(1 − 2−bi ) 6
Code
n
k
Block Code
1A 1B 1C 1D 1E 1F 1G 1H 1I
4 4 6 8 8 10 10 12 12
2 2 3 4 4 5 5 6 6
Type II, 162 , (a) Type II, 162 , (b) P3 (1 + 2ω, ω, 2 + 3ω) B3 (1 + 2ω, ω, 2 + 3ω) B3 (2, 2 + 3ω, 2 + ω) P5 (1 + 3ω, ω, 2 + ω) P5 (3 + 2ω, ω, 2 + 3ω) B5 (0, ω, 3ω) B5 (0, 2 + 3ω, 2 + ω)
Ref d [1] [1] [3] [3] [3] [3] [3] [3] [3]
3 3 4 4 4 4 4 4 4
St 16 16 64 64 64 1024 1024 1024 1024
lb ub 6 6 8 8 8 8 8 8 8
17 17 24 32 32 40 40 48 48
Table 1: Systematic unit-memory quaternary convolutional codes from linear block codes over GR(4, 2)
is also valid for any non-linear, time-invariant, binary, rate-b/c trellis code. The image of C(B, h, G) under the Gray map φ is a rate-2k/2n (possibly non-linear) binary trellis code of the same memory µ with the property that dE f ree (C(B, h, G)) = 2df ree (φ(C(B, h, G))). By applying (4) to φ(C(B, h, G)) and letting i = 1, we get dE f ree ≤
4k 2(µ + 1)n 4k − 1
(5)
The bound (3) comes from (5) for the case µ = m − 1. Observe that for k sufficiently large and m fixed, we have dE f ree ≤ 2mn. Expectedly for the degenerate case m = 1, the upper bound in (3) is the Plotkin bound for the minimum squared Euclidean distance of the quaternary image of B with respect to Pm (ω) (see [15, Corollary 2.2]).
5
Examples
In Table 1, for fixed rates, we give known systematic linear block codes over GR(4, 2) (please see [1, 3]) and their minimum Hamming distances d. The encoder G(D) for the associated convolutional code C(B, h, G) has unit memory. We also give the number of states St of G(D), and a lower bound (lb) from Proposition 4.1 and an upper bound (ub) from (5) for the distance dE f ree of C(B, h, G). Table 2 shows block codes over GR(4, 3) that give rise to convolutional encoders with memory 1 or 2. We use the notation in [3] for the pure quadratic double circulant code with generator matrix Pq (r, s, t) and the bordered quadratic double circulant code with generator matrix Bq (r, s, t). For any given r, s, t ∈ GR(4, m), the matrix Pq (r, s, t) is the q×2q matrix (Iq | Qq (r, s, t)), 7
Code
n
k
Block Code
2A 2B 2C 2D
6 8 8 10
3 4 4 5
P3 (1 + 2ω, 2 + 3ω, 3ω) B3 (1 + 2ω, 3, 3 + 3ω) B3 (2 + ω, 3 + 2ω, 1 + 2ω + 2ω 2 ) P5 (3 + 3ω, 1, 2 + 2ω)
d µ 4 4 4 4
1 1 2 1
St 64 64 512 1024
lb ub 8 8 8 8
24 32 48 40
Table 2: Systematic quaternary convolutional codes from QDC codes over GR(4, 3)
while the matrix Bq (r, s, t) is the (q + 1) × (2q + 2) matrix 1 0...0 α β ...β 0 γ Bq (r, s, t) = . .. .. Iq . Qq (r, s, t) 0 γ
where Iq is the q × q identity matrix and Qq (r, s, t) = (qij ) is the q × q matrix whose rows and columns are labeled with the elements of Fq as follows: a0 = f (0), a1 = f (1), a2 = f (2), . . . , aq−1 = f (q − 1), where f is a one-to-one mapping from the integers {0, 1, . . . , q − 1}∪∞ onto the elements of Fq ∪∞ with the property that f (0) = 0, f (1) = 1 and f (∞) = ∞. Then qij = χ(aj − ai ), where χ(0) = r, χ(aj − ai ) = s if aj − ai is a quadratic residue, and χ(aj − ai ) = t if aj − ai is a quadratic non-residue. If q is a prime number, we let f be the identity map, and this makes the matrix Qq (r, s, t) to be circulant. Otherwise the matrix Qq (r, s, t) is not circulant and this corresponds to the generalized quadratic residue codes. We have chosen α = 0, β = 1 and γ = ±β. Appropriately chosen values for α and β give rise to bordered QDC-codes with lower complexity, although the pure QDC-codes compensate for sharper lower bounds on the free distance.
6
Acknowledgements
The second author is grateful to UP, CHED-IMSP, and DOST-PCASTRD for the financial grants; both authors are grateful to Dr. Alexis Bonnecaze and Dr. Philippe Gaborit for helpful discussions, and to Dr. Rolf Johannesson and Dr. Emma Wittenmark for sending a copy of [17].
7
Appendix: 2`−ary convolutional codes for Euclidean distance
As observed by a referee, the Lee distance, the Hamming distance of the Gray image and the Euclidean distance on Z2` are pairwise different for ` ≥ 3. We briefly explain (without 8
proofs) how to generalize the main results of the article to an arbitrary distance d that satisfies d ≥ c` dH , where dH is the standard Hamming distance on Z2` . For instance the reader can check, that, for the Euclidean distance c` = 4 sin2 ( 2π` ), and that, as was used before, c2 = 2. Further, for the Lee distance c` = 1 for all ` ≥ 1. Proposition 7.1 Let B be a linear block code over the Galois ring GR(2` , m) with a systematic generator matrix G, and with minimum Hamming distance d. The squared Euclidean free distance dE f ree of C(B, h, G) is at least c` d. The asymptotics are: Proposition 7.2 Let ∆(n, k, m, `) denote the largest squared Euclidean free distance of a rate-k/n 2` −ary convolutional code of memory at most m − 1. We have the bound ∆(n, k, m, `) ≥ c` nH2−1 `m (1 − k/n), where HQ (.) is the Q−ary entropy function.
References [1] K. Betsumiya and Y. Choie, “Jacobi forms over totally real fields and Type II codes over Galois Rings GR(2m , f ),” Europ. J. of Comb., vol. 25, pp. 475–486, 2004. [2] F. Fagnani and S. Zampieri, “System-theoretic properties of convolutional codes over rings,” IEEE Trans. Inform. Theory, vol.47, no. 6, pp. 2256–2274, September 2001. [3] P. Gaborit, A. Natividad and P. Sol´e, “Eisenstein lattices, Galois rings and quaternary codes,” Int. J. of Number Theory, vol.2, no. 2, pp. 289–303, June 2006. [4] B. Hove and C. Thommesen, “On Gilbert-Varshamov type bounds for Z2k -linear codes”, Proc. 2001 IEEE Int. Symp. Inform Theory, June 24-29, 2001. [5] R. Johannesson, Z. Wan and E. Wittenmark, “Some structural properties of convolutional codes over rings,” IEEE Trans. Inform. Theory, vol.44, pp. 839-845, March 1998. [6] R. Johannesson and E. Wittenmark, “Two 16-state, rate R = 2/4 trellis codes whose free distances meet the Heller bound,” IEEE Trans. Inform. Theory, vol.44, no. 4, pp. 1602-1604, July 1998. [7] R. K¨otter, U. Dettmar and U.K. Sorger, “On the construction of trellis codes based on (P)UM codes over Z4 ,” Probl. Inf. Trans., vol.31, no.2, pp. 154-161, 1995. [8] B.R. MacDonald, Finite Rings with Identity, Marcel Dekker, 1974. 9
[9] S. Mahapakulchai and R. Van Dyck, “Design of ring convolutional trellis codes for MAP decoding of MPEG-4 images,” IEEE Trans. Commun., vol.52, no. 7, pp. 10331037, July 2004. [10] J.L. Massey and T. Mittelholzer, “Convolutional codes over rings,” Proc. 4th Joint Swedish-Soviet Int. Workshop on Inform. Th., Gotland, Sweden, pp. 14-18, Aug. 27 - Sept. 1, 1989. [11] J.L. Massey and T. Mittelholzer, “Systematicity and rotational invariance of convolutional codes over rings,” Proc. 2nd Int. Workshop on Alg. and Combinatorial Coding Theory, Leningrad, pp. 154-158, Sept. 16-22, 1990. [12] T. Mittelholzer, “Minimal encoders for convolutional codes over rings,” Communications Theory and Applications, HW Comm. Ltd., pp. 30-36, 1993. [13] G. Norton and A. S˘al˘agean, “On the structure of linear and cyclic codes over a finite chain ring,” AAECC 10, pp. 489-506, 2000. [14] P. Sol´e, “Construction A for convolutional codes,” Proceedings of AGCT-2005, to appear in S´eminaires et Congr´es, Soci´et´e Math´ematique de France. [15] P. Sol´e and V. Sison, “Bounds on the Minimum Homogeneous Distance of the pr -ary Image of Linear Block Codes over the Galois Ring GR(pr , m),” Preprint, 2006. [16] Z.X. Wan,Lectures on Finite Fields and Galois Rings, World Scientific, 2003. [17] E. Wittenmark, “An encounter with convolutional codes over rings,” Ph.D. Dissertation, Lund University, Sweden, 1998.
10