Goppa and Srivastava Codes Over Finite Rings
Total Page:16
File Type:pdf, Size:1020Kb
“main” — 2005/10/10 — 16:27 — page 231 — #1 Volume 24, N. 2, pp. 231–244, 2005 Copyright © 2005 SBMAC ISSN 0101-8205 www.scielo.br/cam Goppa and Srivastava codes over finite rings ANTONIO APARECIDO DE ANDRADE1 and REGINALDO PALAZZO JR.2∗ 1Department of Mathematics, Ibilce, Unesp, 15054-000 São José do Rio Preto, SP, Brazil 2Department of Telematics, Feec, Unicamp, 13083-852 Campinas, SP, Brazil E-mails: [email protected] / [email protected] Abstract. Goppa and Srivastava codes over arbitrary local finite commutative rings with identity are constructed in terms of parity-cleck matrices. An efficient decoding procedure, based on the modified Berlekamp-Massey algorithm, is proposed for Goppa codes. Mathematical subject classification: 11T71, 94B05, 94B40. Key words: Goppa code, Srivastava code. 1 Introduction Goppa codes form a subclass of alternant codes and they are described in terms of a polynomial called Goppa polynomial. The most famous subclasses of alternant codes are BCH codes and Goppa codes, the former for their simple and easily ins- trumented decoding algorithm, and the latter for meeting the Gilbert-Varshamov bound. However, most of the work regarding construction and decoding of Goppa codes has been done considering codes over finite fields. On the other hand, linear codes over rings have recently generated a great deal of interest. Linear codes over local finite commutative rings with identity have been dis- cussed in papers by Andrade [1], [2], [3] where it was extended the notion of Hamming, Reed-Solomon, BCH and alternant codes over these rings. In this paper we describe a construction technique of Goppa and Srivastava codes over local finite commutative rings. The core of the construction technique #609/04. Received: 3/VI/04. Accepted: 11/V/05. “main” — 2005/10/10 — 16:27 — page 232 — #2 232 GOPPA AND SRIVASTAVA CODES OVER FINITE RINGS mimics that of Goppa codes over a finite field, and is addressed, in this paper, from the point of view of specifying a cyclic subgroup of the group of units of an extension ring of finite rings. The decoding algorithm for Goppa codes consists of four major steps: (1) calculation of the syndromes, (2) calculation of the elementary symmetric functions by modified Berlekamp-Massey algorithm, (3) calculation of the error-location numbers, and (4) calculation of the error magnitudes. This paper is organized as follows. In Section 2, we describe a construction of Goppa codes over local finite commutative rings and an efficient decoding procedure. In Section 3, we describe a construction of Srivastava codes over local finite commutative rings. Finally, in Section 5, the concluding remarks are drawn. 2 Goppa Codes In this section we describe a construction technique of Goppa codes over arbitrary local finite commutative rings in terms of parity-check matrices, which isvery similar to the one proposed by Goppa [4] over finite fields. First, we review basic facts from the Galois theory of local finite commutative rings. Throughout this paper denotes a local finite commutative ring with identity, A m maximal ideal and residue field K A GF(p ), for some prime p, M = M ≡ m will be a positive integer, and x denotes the ring of polynomials in the A[ ] variable x over . The natural projection x K x is denoted by μ, where A A[ ] → [ ] μ(a(x)) a(x). = Let f (x) be a monic polynomial of degree h in x such that μ( f (x)) is A[ ] irreducible in K x . Then f (x) is also irreducible in x [5, Theorem XIII.7]. [ ] A[ ] Let be the ring x / f (x) . Then is a local finite commutative ring with R A[ ] h i R identity and it is called a Galois extension of of degree h. Its residue field is A mh 1 / 1 GF(p ), where 1 is the unique maximal ideal of , and K R M M R = ≡ mh K1∗ is the multiplicative group of K1, whose order is p 1. − Let ∗ denote the multiplicative group of units of . It follows that ∗ is R R R an abelian group, and therefore it can be expressed as a direct product of cyclic groups. We are interested in the maximal cyclic subgroup of ∗, hereafter R s denoted by s, whose elements are the roots of x 1 for some positive integer G − Comp. Appl. Math., Vol. 24, N. 2, 2005 “main” — 2005/10/10 — 16:27 — page 233 — #3 ANTONIO APARECIDO DE ANDRADE and REGINALDO PALAZZO JR. 233 s such that gcd(s, p) 1. There is only one maximal cyclic subgroup of ∗ = R having order relatively prime to p [5, Theorem XVIII.2]. This cyclic group has order s pmh 1. = − The Goppa codes are specified in terms of a polynomial g(z) called Goppa polynomial. In contrast to cyclic codes, where it is difficult to estimate the minimum Hamming distance d from the generator polynomial, Goppa codes have the property that d deg(g(z)) 1. ≥ r + Let g(z) g0 g1z gr z be a polynomial with coefficients in and = + + ∙ ∙ ∙ + R g 0. Let η (α , α , , α ) be a vector consisting of distinct elements of r 6= = 1 2 ∙ ∙ ∙ n s such that g(αi ) are units from for i 1, 2, , n. G R = ∙ ∙ ∙ Definition 2.1. A shortened Goppa code (η, ω, g) of length n s over C ≤ A has parity-check matrix 1 1 g(α1)− g(αn)− 1 ∙ ∙ ∙ 1 α1g(α1)− αn g(αn)− H . ∙ ∙ ∙ . , (1) = . .. . r 1 1 r 1 1 α − g(α1)− α − g(αn)− 1 ∙ ∙ ∙ n 1 1 1 where ω (g(α− ), g(α− ), , g(α− )). The polynomial g(z) is called = 1 2 ∙ ∙ ∙ n Goppa polynomial. Definition 2.2. Let (η, ω, g) be a Goppa code. C • If g(z) is irreducible then (η, ω, g) is called an irreducible Goppa code. C • If, for all c (c1, c2, , cn) (η, ω, g), it is true that c0 = ∙ ∙ ∙ ∈ C = (cn, cn 1, , c1) (η, ω, g), then (η, ω, g) is called a reversible − ∙ ∙ ∙ ∈ C C Goppa code. • If g(z) (z α)r then (η, ω, g) is called a commutative Goppa code. = − C • If g(z) has no multiple zeros then (η, ω, g) is called a separable Goppa C code. Comp. Appl. Math., Vol. 24, N. 2, 2005 “main” — 2005/10/10 — 16:27 — page 234 — #4 234 GOPPA AND SRIVASTAVA CODES OVER FINITE RINGS Remark 2.1. Let (η, ω, g) be a Goppa code. C 1. We have (η, ω, g) is a linear code. C 2. A parity-check matrix with elements from is then obtained by replacing A each entry of H by the corresponding column vector of length h from . A rl 3. For a Goppa code with polynomial gl (z) (z βl ) , where βl s, we = − ∈ G have rl rl rl (α1 βl )− (α2 βl )− (αn βl )− − r − r ∙ ∙ ∙ − r α1(α1 βl ) l α2(α2 βl ) l αn(αn βl ) l − − − − ∙ ∙ ∙ − − Hl . = . .. rl 1 r rl 1 r rl 1 r α − (α1 βl ) l α − (α2 βl ) l αn − (αn βl ) l 1 − − 2 − − ∙ ∙ ∙ − − which is row-equivalent to 1 1 1 r r r (α1 βl ) l (α2 βl ) l (αn βl ) l − − ∙ ∙ ∙ − (α1 βl ) (α2 βl ) (αn βl ) − r − r − r (α1 βl ) l (α2 βl ) l (αn βl ) l Hl − − ∙ ∙ ∙ − = . .. . r 1 r 1 r 1 (α1 βl ) l − (α2 βl ) l − (αn βl ) l − − r − r − r (α1 βl ) l (α2 βl ) l ∙ ∙ ∙ (αn βl ) l − − − 1 1 1 r r r (α1 βl ) l (α2 βl ) l (αn βl ) l −1 −1 ∙ ∙ ∙ −1 (r 1) (r 1) (r 1) (α1 βl ) l (α2 βl ) l (αn βl ) l − − − − ∙ ∙ ∙ − − . = . .. . 1 1 1 (α1 βl ) (α2 βl ) ∙ ∙ ∙ (αn βl ) − − − k rl k Consequently, if g(z) l 1(z βl ) i 1 gl (z), then the Goppa = = − = = code is the intersection of Goppa codes with Goppa polynomial gl (z) Q Q = rl (z βl ) , for l 1, 2, , k, and its parity-check matrix is given by − = ∙ ∙ ∙ H1 H2 H . = . . H k Comp. Appl. Math., Vol. 24, N. 2, 2005 “main” — 2005/10/10 — 16:27 — page 235 — #5 ANTONIO APARECIDO DE ANDRADE and REGINALDO PALAZZO JR. 235 4. Alternant codes are a special case of Goppa codes [3, Definition 2.1]. It is possible to obtain an estimate of the minimum Hamming distance d of (η, ω, g) directly from the Goppa polynomial g(z). The next theorem provides C such an estimate. Theorem 2.1. The code (η, ω, g) has minimum Hamming distance d r 1. C ≥ + Proof. We have (η, ω, g) is an alternant code (n, η, ω) with η (α1, C C 1 1 1 = α , , α ) and ω (g(α )− , g(α )− , , g(α )− ) [3, Definition 2.1]. By 2 ∙ ∙ ∙ n = 1 2 ∙ ∙ ∙ n [3, Theorem 2.1] it follows (η, ω, g) has minimum distance d r 1. C ≥ + x 3 Example 2.1. Let Z2 i and A[ ] , where f (x) x x 1 is A = [ ] R = f (x) = + + irreducible over and i 2 1. If α is a rooth ofi f (x), then α generates a cyclic A 3 = − 4 2 3 2 group s of order s 2 1 7. Let η (α, α , 1, α ), g(z) z z 1 and G 1 4 =1 − =1 2 1= 3 5 6 = + + ω (g(α)− , g(α )− , g(1)− , g(α )− ) (α , α , 1, α ). Since deg(g(z)) = = = 3, it follows that α3 α5 1 α6 H α4 α2 1 α , = α5 α6 1 α3 is the parity-check matrix of a Goppa code (η, ω,g) over with length 4 and C A minimum Hamming distance at least 4.