SciELO - Scientific Electronic Library Online

 
vol.85 issue3A closer look at the Impact Factor (JCR 2012): problems, concerns and actions neededChemical constituents of Distictella elongata (Vahl) Urb. (Bignoniaceae) author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

Share


Anais da Academia Brasileira de Ciências

Print version ISSN 0001-3765

An. Acad. Bras. Ciênc. vol.85 no.3 Rio de Janeiro Sept. 2013

http://dx.doi.org/10.1590/S0001-37652013000300002 

Mathematical Sciences

A decoding method of an n length binary BCH code through (n + 1)n length binary cyclic code

TARIQ SHAH1 

MUBASHAR KHAN1 

ANTONIO A. DE ANDRADE2 

1Department of Mathematics, Quaid-i-Azam University, 45320, Islamabad, Pakistan

2Departamento de Matemática, IBILCE, Universidade Estadual Paulista “Júlio de Mesquita Filho”, Rua Cristóvão Colombo, 2265, Bairro Jardim Nazareth, 15054-000 São José do Rio Preto, SP, Brasil

ABSTRACT

For a given binary BCH code Cn of length n = 2 s - 1 generated by a polynomial of degree r there is no binary BCH code of length (n + 1)n generated by a generalized polynomial of degree 2r. However, it does exist a binary cyclic code C (n+1)n of length (n + 1)n such that the binary BCH code Cn is embedded in C (n+1)n . Accordingly a high code rate is attained through a binary cyclic code C (n+1)n for a binary BCH code Cn . Furthermore, an algorithm proposed facilitates in a decoding of a binary BCH code Cn through the decoding of a binary cyclic code C (n+1)n , while the codes Cn and C (n+1)n have the same minimum hamming distance.

Key words: BCH code; binary cyclic code; binary Hamming code; decoding algorithm

RESUMO

Para um determinado código binário BCH Cn de comprimento n = 2 s −1 gerado por um polinômio de grau r não existe um código BCH binário de comprimento (n + 1)n gerado por um polinômio generalizado de grau 2r. No entanto, não existe um código cíclico binário C(n+1)n de comprimento (n + 1)n de tal modo que o código BCH binário C n é imerso em C(n+1)n . Assim, um código de taxa elevada é alcançado através de um código cíclico binário C (n+1)n para um código BCH binário C n . Além disso, propomos um algoritmo que facilita na decodificação de um código BCH binário C n através da decodificação de um código cíclico binário C (n+1)n , ao passo que os códigos C n e C(n+1)n possuem a mesma distância de Hamming mínima.

Palavras-Chave: Código BCH; código cíclico binário; código de Hamming binário; algoritmo de decodificação

INTRODUCTION

The applications of finite commutative rings, particularly finite local rings, have great importance due to their principal ideals. In the design of communication systems and high rate digital computers, encoding and decoding have an importance for error control. The main component of the conventional error-correcting codes are ideals in a finite commutative principal ideal ring.

In Cazaran and Kelarev 1997 authors introduce the necessary and sufficient conditions for the ideal to be a principal ideal and describe all finite principal ideal rings , where I is generated by univariate polynomials. Moreover, in Cazaran and Kelarev 1999, they obtained conditions for certain rings to be finite commutative principal ideal rings. However, the extension of a BCH code embedded in a semigroup ring , where S is a finite semigroup, is introduced by Cazaran et al. 2006, where an algorithm was given for computing the weights of extensions for codes embedded in as ideals. A numerous information related with several ring constructions and concerning polynomial codes was given by Kelarev 2002. Whereas, in Kelarev 2007, 2008, Kelarev discusses the concerning extensions of BCH codes in several ring constructions, where the results can also be considered as particular cases of semigroup rings of particular nature. Andrade and Palazzo 2005 elaborated the cyclic, BCH, alternant, Goppa and Srivastava codes over finite rings, which are in real meanings constructed through a polynomial ring in one indeterminate with a finite coefficient ring. Shah in Shah et al. 2011a, b, instead of a polynomial ring, the construction methodology of cyclic, BCH, alternant, Goppa, and Srivastava codes over a finite ring is used through a semigroup ring, where the results of Andrade and Palazzo 2005 are improved in such a way that in the place of cancellative torsion free additive monoid of non negative integers, the cancellative torsion free additive monoids and are taken, respectively. Consequently, this new structure gives a construction of a finite quotient ring of a polynomial ring into a finite quotient ring of monoid rings of particular nature. In Shah et al. 2011a, b, R is considered as a finite unitary commutative ring for the quotient rings and , respectively. However, in (Andrade et al. 2010) authors describe the decoding principle based on modified Berlekamp-Massey algorithm for BCH, alternant and Goppa codes constructed through monoid rings .

The existence of a binary cyclic ( , ) code, where k is a positive integer, corresponding to a binary cyclic (n, nr) code is established in Shah et al. 2012 by monoid ring . Furthermore, in Shah et al. 2012 a decoding procedure for binary cyclic (n, nr) code by the binary cyclic ( , ) code is also given, which improve the code rate and error corrections capabilities.

We were provoked by Shah et al. 2012 and initiated the inquiry in support to binary BCH codes alike binary cyclic codes. However, we observed that for an n length binary BCH code with n = 2 s − 1 generated by the polynomial of degree r it is not possible to construct a binary BCH code of length (n+1)n generated by the generalized polynomial of degree 2r. However, in this study, we established that corresponding to a binary BCH code C n (n, nr) there is a binary cyclic code C(n+1)n ((n+1)n, (n+1)n−2r) such that C n is embedded in C(n+1)n . Furthermore, we propose an algorithm that enables decoding a binary BCH code of length n through the decoding of (n + 1)n length binary cyclic code.

This paper is formulated as follows. In Section 2, first we investigate that, for a positive integer n = 2 s − 1, where s is a positive integer, such that if a polynomial of degree r divides xn − 1, then a generalized polynomial of degree 2r divides in . Second, we discuss cyclic codes of length (n+1)n generated by . In Section 3, we discuss the non existence and existence of a binary BCH code of length (n+1)n and a cyclic code of length (n+1)n against a binary BCH code of length n, respectively. Consequently, a link of a BCH code (n, n−r) and a cyclic code ((n+1)n, (n+1)n−2r) is developed. However, in Section 4, we present the decoding procedure for a binary cyclic code ((n + 1)n, (n + 1)n − 2r) by which we can obtain the decoding of a binary BCH code (n, nr). Concluding remarks are given in Section 5.

CYCLIC CODE OF LENGTH (n + 1)n CONSTRUCTED THROUGH

A semigroup ring R[x; S] is the set of all finitely nonzero functions from a semigroup (S,*) into an associative ring (R,+, ·) in which binary operations addition and multiplication are given by (f + g)(s) = f(s) + g(s) and , where the shows that the sum is taken over all pairs (t, u) of elements of S such that t * u = s, otherwise (fg)(s) = 0. If S is a monoid, then R[x; S] is called monoid ring. A nonzero element f of R[x; S] has unique representation , where fi 6 ≠ 0 and si 6 ≠ sj for ij. If S is and R is an associative ring, particularly the binary field , then the semigroup ring R[x; S] is simply the polynomial ring R[x]. Clearly, it follows that . Since is an ordered monoid, it follows that we can define the degree of an element in .

We initiate this study by an observation that the indeterminate of generalized polynomials in a semigroup ring is given by and it behaves like an indeterminate x in . For instance, for a torsion free cancellative monoid S, it follows that the monoid ring is a Euclidean domain if is a field and or (Gilmer and Parker 1974). Of course, here is a torsion free cancellative and isomorphic to .

Given any generalized polynomial , we can construct the factor ring , where is a principal ideal in generated by . The elements of the factor ring are the cosets of the ideal . The factor ring is a field if, and only if, is irreducible over .

Proposition 1 Let be a polynomial of degree r. If n = 2 s − 1, where s is a positive integer, then the generalized polynomial of degree 2r divides in .

Proof. Clearly divides . If , then divides .

Now onward, if , then is given by

where ζ denotes the coset . Thus, f(ζ) = 0, where ζ satisfies the relation ζ n (n+1)−1 = 0. Let us now make a change in notation and write in place of ζ. Thus, the ring becomes in wich the relation holds, that is .

The multiplication * in the ring is modulo . So, given , we write to denote their product in the ring and to denote their product in the ring . If deg , then . Otherwise, is the remainder left on dividing by . In other words, if , then , then for some generalized polynomial . Practically, to obtain , we simply compute the ordinary product and then put , and so on. Now, consider and it would be

That is

Particularly, we can take the product in by following lema.

Lemma 2 The is isomorphic to .

Proof. It follows that , where . In fact, we deal the coefficients of generalized polynomials of . So has n(n + 1) terms and hence the coefficients in . Corresponding to , there is a n(n + 1)-tuppled vector ( in . Thus, there is an isomorphism between the vector space and defined by .

We observed that, multiplication by in the ring corresponds to cyclic shift σ in , that is . A subspace C of is a linear code. From Lemma 2, identifying every vector c in with the polynomial in , it follows that . The elements of the code C are now referred as codewords or code generalized polynomials.

By use of the techniques of (Shah et al. 2012), the following results can easily be established for a positive integer n(n + 1) instead of .

Theorem 3 (Shah et al. 2012) Let C be a linear code over . Then C is cyclic if, and only if, for every .

Theorem 4 (Shah et al. 2012) A subset C of is a cyclic code if, and only if, C is an ideal of the ring .

It is noticed that , where represents the principal ideal generated by in the ring .

Theorem 5 (Shah et al. 2012) If C is a nonzero ideal in the ring, then,

  1. there exists a unique monic polynomial of least degree in C;

  2. divides divides in ;

  3. for all divides in ; and

  4. .

Conversely, if C is an ideal generated by , then is a generalized polynomial of least degree in C if, and only if, divides in .

From Theorem 5, it follows that the only ideals in the ring are linear codes which are generated by the factors of . Thus, we can obtain all cyclic codes of length n(n + 1) over if we find all factors of . In the case of trivial factors, we get trivial codes. If , then . Whereas implies .

Remark 6 If does not divide , then cannot be of least degree in the ideal .

Definition 7 Let C be a nonzero ideal in . If is a unique monic generalized polynomial of least degree in C, then is called the generator generalized polynomial of the cyclic code C.

Note that if is the ideal generated by , then is the generator generalized polynomial of C if, and only if, is monic and divides .

A LINK OF A BCH CODE (n, nr) AND A CYCLIC CODE ((n+1)n, (n+1)n−2r)

In this section, we develop a link between a binary BCH code (n, nr) and a binary cyclic code ((n+1)n, (n+1)n − 2r). For this, let Cn be a binary BCH code based on the positive integers c, δ 1, q = 2 and n such that 2 ≤ δ 1n with gcd(n, 2) = 1 and n = 2 s − 1, where . Consequently, the binary BCH code Cn has generator polynomial of degree r given by g(x) = lcm{mi (x) : i = c, c + 1, ... , c +δ 1−2}, where mi (x) are minimal polynomials of ζ i for i = c, c + 1, ... , c + 1−2. Whereas ζ is the primitive nth root of unity in . Since mi (x) divides xn − 1 for each i, it follows that g(x) divides xn − 1. This implies Cn = (g(x)) is a principal ideal in the factor ring . From Proposition 1, it follows that the generalized polynomial of degree 2r divides in . So, there is a cyclic code C (n+1)n generated by in . Since divides in , it follows that . Now, by third isomorphism theorem for rings, it follows that . Thus, Cn is embedded in C (n+1)n and the monomorphism ϕ : Cn C (n+1)n is defined as , where a(x) ∈ Cn . The above discussion shape the following theorem.

Theorem 8 Let s be a positive integer. If Cn is a binary BCH code of length n = 2 s − 1 generated a polynomial of degree r given by , then

  1. there exist a binary cyclic code C (n+1)n of length (n+1)n generated by a generalized polynomial of degree 2r given by ; and

  2. the binary BCH code Cn is embedded in the binary cyclic code C (n+1)n .

For a binary BCH code Cn with generator polynomial g(x) it is not possible to construct a binary BCH code C (n+1)n with generator polynomial . Indeed, as we know that generator polynomial of a binary BCH code is the least common multiple of irreducible polynomials over . For instance, if is the generator polynomial of the binary BCH code Cn , then is not the least common multiple of irreducible polynomials in . Hence, is not qualify for a generator of a binary BCH code.

Example 9 Let s = 2, n = 2 s − 1 = 22 − 1 = 3, δ = 3, c = 1 and p(x) = x 2 + x + 1 a primitive polynomial of degree 2. Thus, , where ζ satisfies the relation ζ2 + ζ + 1 = 0. Using this relation, it follows that {0, ζ1 = ζ , ζ2 = 1 + ζ , ζ3 = 1}. Let mi (x) be the minimal polynomial of ζ i , where i = c, c + 1, ... , c, c + 1, ... , c + δ − 2. Thus, m 1(x) = x 2 + x + 1, and hence, g(x) = lcm{mi (x) : i = c, c + 1, ... , c + δ − 2} = x 2 + x + 1. Also, is a binary BCH code based on the positive integers c = 1, δ = 3, q = 2 and n = 3 such that 2 ≤ δn with gcd(n, 2) = 1. Since divides in , it follows that the corresponding cyclic code C 12(12, 8) is generated by .

GENERAL DECODING PRINCIPLE

Berlekamp et al. 1978 demonstrated that the maximum-likelihood decoding is a NP-hard problem for general linear codes. Whereas by the principle of maximum-likelihood decoding we obtain a code after decoding which is closest to the received vector when the errors are corrected. We use the decoding procedure which follows the same principle.

In the following we interpret the decoding terminology for a binary cyclic code C (n+1)n with length (n+1)n and having parity-check matrix H. If the vector b is received, then we obtain the syndrome vector of b given by S(b) = bHT . In this way, we calculate a table of syndromes which is useful in determining the error vector e such that S(b) = S(e). So the decoding of received vector b has done as the transmitted vector a = be.

The general principle of decoding is to pick the codeword nearest to the received vector. For this purpose, we prepare a look-up table that gives the nearest codeword for every possible received vector. The algebraic structure of a linear code as a subspace provides a convenient method for preparing such a table. If C (n+1)n is a subspace of , then C (n+1)n is a subgroup of the additive group . Recall that for every , the set is called a coset of C (n+1)n and the set of these cosets form a partition of the set . Hence, is the disjoint union of distinct cosets of C (n+1)n .

Let y be any vector in , and supose is the codeword nearest to y. Now, x lies in the coset . For all , it follows that d(y,x) ≤ d(y,c), i.e. w(yx) ≤ w(yc). Hence, yx is the vector of least weight in the coset containing y. Writing e = yx, it follows that x = ye. Thus, the following theorem is obtained.

Theorem 10 Let be a linear code. Given a vector , the codeword x nearest to y is given by x = y − e, where e is the vector of least weight in the coset containing y. If the coset containing y has more than one vector of least weight, then there are more than one codewords nearest to y.

Definition 11 Let C (n+1)n be a linear code in . The coset leader of a given coset of C (n+1)n is defined to be the vector with the least weight in the coset.

Theorem 12 Let C (n+1)n be an ((n+1)n, (n+1)n−2r) code over . If H is a parity-check matrix of C (n+1)n , then .

From Theorem 12, it follows that S(y) = 0 if, and only if, . Let y such that . Thus, S(y) = S(y′) holds if, and only if, (yy′)HT = 0, that is, . Hence, two vectors have the same syndrome if, and only if, they lie in the same coset of C (n+1)n . Thus, there is a one-to-one correspondence between the cosets of C (n+1)n and the syndromes. A table with two columns showing the coset leader ei and the corresponding syndromes S(ei ) is called the syndrome table. To decode a received vector y, we compute its syndrome S(y) and then look at the table to find the coset leader e for which S(e) = S(y). Then y is decoded as x = ye. The syndrome table is given by

where N = qn–k , and S(ei ) = eiHT for 1 ≤ iN.

Now, consider a binary BCH code Cn based on the positive integers c, δ, q = 2 and n such that 2 ≤ δn with n = 2 s − 1, where s is a positive integer. Let ζ be a primitive nth root of unity in . Let denote the minimal polynomial of ζ i . Let g(x) be the product of distinct polynomials among mi (x), for i = c, c + 1, ... , c + δ − 2, that is, g(x) = lcm{mi (x) : i = c, c + 1, ... , c + δ − 2}.

Assume that C (n+1)n is the corresponding binary cyclic code of length (n + 1)n with minimum distance d and with generator generalized polynomial which has the check generalized polynomial

Of course, . Thus, the matrix H is given by

is the parity-check matrix de order (2r × (n + 1)n for binary cyclic code C (n+1)n of dimension k = (n + 1)n − 2r. Syndrome of the vector is denoted as S(a) = aHT . For the vector a given by , it follows that the generalized polynomial is given by in So, S(a) = aHT , where

Now, assume that the codeword vC is transmitted and the received vector is given by a = v + e, where is the error vector which has the polynomial form

Therefor, S(e) = S(a). Now, the syndrome table for the binary cyclic code C (n+1)n is

where N = 2(n+1)nk , k = (n+1)n − 2r and S(ei ) = eiHT for 1 ≤ iN.

DECODING ALGORITHM

We establish a decoding method of a binary BCH code of length n through binary cyclic code of length (n+1)n. Though, here in the following we sum up the procedure which indicates the steps in decoding a received word of the cyclic code of length (n + 1)n and explain the technique obtaining the wrapped codeword of the BCH code of length n.

Step 1: Evaluate the check generalized polynomial of binary ciclic code C (n+1)n .

Step 2: Construct the syndrome table for the binary cyclic code C (n+1)n .

Step 3: Calculate the received generalized polynomial corresponding to received polynomial .

Step 4: Calculate the syndrome vector for the vector

corresponding to the received generalized polynomial

Step 5: By looking at syndrome table (step 2), find the coset leader e for which S(b′) = S(e).

Step 6: Decode b′ as b′e = a′.

Step 7: The corresponding corrected codeword polynomial a(x) in binary BCH code Cn is obtained.

Example 13 Let s = 2, n = 22 − 1 = 3 and C 3 be the BCH code with positive integers c, δ, gcd(n, 2) = 1 and generated by . In this case, is the generator polynomial of the corresponding binary cyclic code C (3+1)3 = C 12(12, 8, d). The generator matrix of C 12 is given by

and parity-check matrix with check polynomial is given by

Syndrome table is given by

Let be the received vector of binary BCH code C 3 . Then, its polynomial representation is given by b(x) = 1 + x in and the corresponding received polynomial in the cyclic code C 12 is given by in , and its vector representation is . Also, S(b′) = b′*(H′) T = 0010 = S(e 5), hence the corrected codeword in C 12 is a′ = b′ + e 5 = 101010000000 and its polynomial representation is a′ (x) = 1+x2+x4 in . Hence, the corresponding corrected codeword in binary BCH code C 3 is a(x) = 1 + x + x 2 in , that is a = 111.

AN APPLICATION TO COGNITIVE RADIO

Cognitive radio is a most recent technology in wireless communication by which the spectrum is vigorously used when the primary user, the approved possessor of the spectrum, is not consumed. The scheme of cognitive radio is initiated in Mitola 2000. Rendering this notion, the cognitive radio has the competence to judge the radio environs and step up the decision according to the transmission parameters such as code rate, modulation scheme, power, carrier frequency and bandwidth.

The fundamental map in Zhao and Sadler 2007 is to issue license spectrum to secondary users and hurdle the interference observed by primary users. To guard the primary user from the interference activated by the secondary user during transmission, (Srinivasa and Jafar 2006) offered an organization of transmission models as interweave, underlay and overlay.

By (Mitola 2000), in the interweave model the secondary user has opportunistic accesses to the spectrum slum while the primary user is not in and pull out when the primary user wants to in once more. For cognitive radio transformation under the interweave model we may get spectrum corresponding to the binary cyclic code C (n+1)n for data transfer of the primary user. Now, the setup only allow the secondary user having binary BCH code Cn for its data transfer. Accordingly the secondary user obtain high speed data transfer as compare to its own scheme of the BCH code Cn .

CONCLUSION

This paper addresses the following aspects:

  1. There does not exist a binary BCH code of length (n+1)n generated by a generalized polynomial of degree 2r corresponding to a binary BCH code of length n with n = 2 s − 1 generated by a polynomial of degree r such that Cn is embedded in C (n+1)n .

  2. There does exist a binary cyclic code of length (n + 1)n generated by a generalized polynomial of degree 2r corresponding to a binary BCH code of length n with n = 2 s − 1 generated by a polynomial of degree r such that Cn is embedded in C (n+1)n .

  3. An algorithm is given which enables in decoding of a given binary BCH code Cn of length n through the decoding of a binary cyclic code C (n+1)n of length (n + 1)n. Consequently, we have the advantage that, if nr message transmitted under the cover of binary cyclic code C (n+1)n , then we obtain high speed data transfer as compare to the BCH code Cn . Whereas the codes Cn and C (n+1)n have same minimum hamming distance.

  4. By the interweave model for cognitive radio, the secondary user transfers its data through the binary BCH code Cn and has opportunistic accesses to the spectrum of primary user which uses binary cyclic code C (n+1)n for its data transfer. As a result the secondary user achieve high data transfer rate as compare to its own scheme based on the BCH code Cn .

Acknowledgements

The authors are very grateful to Fundação de Amparo à Pesquisa do Estado de São Paulo (FAPESP) by financial support, 2007/56052-8 and 2011/03441-2.

REFERENCES

Andrade AA and Palazzo Jr R. 2005. Linear codes over finite rings. TEMA - Tend Mat Apl Comput 6(2): 207-217. [ Links ]

Andrade AA, Shah T and Khan A. 2010. Goppa codes through generalized polynomials and its decoding principle. Int J Appl Math 23(3): 517-526. [ Links ]

Berlekamp ER, McEliece RJ and Van Tilborg HCA. 1978. On the inherent intractability of certain coding problem. IEEE Trans Inf Theory 24(3): 384-386. [ Links ]

Cazaran J and Kelarev AV. 1997. Generators and weights of polynomial codes. Archiv Math 69: 479-486. [ Links ]

Cazaran J and Kelarev AV. 1999. On finite principal ideal rings. Acta Math Univ Comenianae 68(1): 77-84. [ Links ]

Cazaran J, Kelarev AV, Quinn SJ and Vertigan D. 2006. An algorithm for computing the minimum distances of extensions of BCH-codes embedded in semigroup rings. Semigroup Forum 73: 317-329. [ Links ]

Gilmer R and Parker T. 1974. Divisibility properties in semigroup rings. Michigan Math J 21(1): 65-86. [ Links ]

Kelarev AV. 2002. Ring constructions and applications. World Scientific, River Edge, New York, 300 p. [ Links ]

Kelarev AV. 2007. Algorithms for computing parameters of graph-based extensions of BCH-codes. J Discrete Algorithms 5: 553-563. [ Links ]

Kelarev AV. 2008. An algorithm for BCH-codes extended with finite state automata. Fundam Inform 84(1): 51-60. [ Links ]

Mitola J. 2000. Cognitive Radio: An Integrated Agent Architecture for Software Defined Radio. Ph.D. Dissertation, KTH, Stockholm, Sweden, 304 p. (Unpublished). [ Links ]

Shah T, Khan A and Andrade AA. 2011a. Encoding through generalized polynomial codes. Comput Appl Math 30(2): 349-366. [ Links ]

Shah T, Khan A and Andrade AA. 2011b. Constructions of codes through semigroup ring and encoding. Comput Math App 62: 1645-1654. [ Links ]

Shah T, Amanullah and Andrade AA. 2012. A decoding procedure which improves code rate and error corrections. J Adv Res App Math 4(4): 37-50. [ Links ]

Srinivasa S and Jafar SA. 2006. The throughput potential of cognitive radio: a theoretical perspective. IEEE Commun Mag 45(5): 73-79. [ Links ]

Zhao Q and Sadler BM. 2007. A Survey of Dynamic Spectrum Access. IEEE Sig Proc Magazine 24: 79-89. [ Links ]

Received: April 30, 2012; Accepted: April 29, 2013

Correspondence to: Antonio Aparecido de Andrade E-mail: andrade@ibilce.unesp.br

Creative Commons License This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-Commercial License, which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.