Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

590 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. IT-19, NO.

5, SEPTEMBER 1973

Goppa Codes
Invited Paper

ELWYN R. BERLEKAMP

Absfruct-Goppa described a new class of linear noncyclic error- whence


correcting codes in [l] and [2]. This paper is a summary of Goppa’s
work, which is not yet available in English.’ We prove the four most
important properties of Goppa codes. 1) There exist q-ary Goppa codes
with lengths and redundancies comparable to BCH codes. For the same
redundancy, the Goppa code is typically one digit longer. 2) All Goppa Since C is a codeword, the first sum on the right-hand side
codes have an algebraic decoding algorithm which will correct up to a vanishes mod g(z), and we have
certain number of errors, comparable to half the designed distance of
BCH codes. 3) For binary Goppa codes, the algebraic decoding algorithm
assumesa special form. 4) Unlike primitive BCH codes, which are known C A E C A mod g(z).
ysL z - y yeLZ - y
to haveactual distances asymptotically equal to their designed distances,
long Goppa codes have actual minimum distances much greater than It is therefore natural to define the syndrome polynomial
twice the number of errors, which are guaranteed to be correctable by the
algebraic decoding algorithm. In fact, long irreducible Goppa codes
S(z) as the polynomial of degreelessthan deg g(z) such that
asymptotically meet the Gilbert bound.
S(z) G c -% mod g(z).
I. DEFINITION yeLZ -y

L ET q be a prime power, let m be any integer, let g(z) We have just shown that
be any polynomial with coefficients in GF (qm), let
L denote a subset of elementsof GF (4”‘) that are not roots S(z) E c A mod g(z).
yeLZ - y
of g(z), and let IL] be the number of elementsin L. (Unless
otherwise specified, we will take L to be the set of all Let A4 be the subset of L such that Ey # 0 iffy E M. Then
elements of GF (4”‘) that are not roots of g(z).) Then there
is a Goppa code with symbol field GF (q), location field S(z) 3 c 5 mod g(z).
GF (qm), Goppa polynomial g(z), and length ILI. Its co- ye&f z - y
ordinates are most conveniently indexed by the elements of As usual in algebraic coding theory, we now introduce the
L. The code is defined as the set of all vectors C that satisfy polynomial whose roots are the locations of the errors,
the condition
dz> = ,FM tz - r>* (3)
C A E 0 mod g(z). (This form of the error-locator polynomial is the reciprocal
ysLZ - y
of the form used throughout [3].) We also now define a
If one expands the left-hand side of this congruence in variant of the error-evaluator polynomial, which for Goppa
powers of z mod g(z), and then equatescoefficients to zero, codes is most conveniently taken as
one obtains a set of deg g linear equations in the com-
ponents C,, of C, which may be viewed as parity-check 1(z) = yzlMEY a Jy) (z - 8). (4)
equations. This immediately yields the following theorem. It is obvious that b(z) and q(z) must be relatively prime.
Theorem 1: Goppa codes are linear. The redundancy of Differentiating (3) formally gives
the code with Goppa polynomial g(z) is at most deg g.
II. ALGEBRAIC DECODING
a’(z)= c yehf as&f-(y)
fl (z- a)
If the error vector E is added to the transmitted codeword whence, for each y E it4,
C, then the received word R is given by
V(Y)= E, aE~(y) (Y - 8) = EYeY)

R=C+E
so that E,, = q(y)/o’(y). Hence, once we have found the
polynomials d and q, the rest of the decoding is straight-
Manuscript receivedMay 9, 1973. forward. The coordinates of the error vector are given as
The author is with the Departmentsof Mathematicsand Electrical
Engineering-Computer Science, University of California, Berkeley, if a(y) # 0
Calif. 94720. 0,
i Translations of the full papers will soon he available from Con- E, = V(Y) (6)
sultants Bureau, 227 W. 17 St., New York, N.Y., 10011,at $15 per if a(y) = 0
article. al(r) ’

Authorized licensed use limited to: Nanjing Southeast University. Downloaded on August 18,2010 at 09:46:23 UTC from IEEE Xplore. Restrictions apply.
BERLEKAMP : GOPPA CODES 591

where a’(z) is the formal derivative of a(~).~ The crux of Theorem 2: If deg g(z) = 2t, then there is a t-error-
the decoding problem is therefore to determine the correcting algebraicdecodingalgorithm for the q-ary Goppa
coefficientsof the polynomials o and q. code with Goppa polynomial g(z).
To accomplish this, we must relate cr and q to the syn- To strengthen this result in the binary case, we first
drome as given by (2). M u ltiplying (2) by (3) gives the observethat since all nonzero Ey = 1, (4) and (5) coincide.
desiredrelation, n a m e ly, Hence (10) becomes ‘i

S(z) * o(z) E q(z) m o d g(z). (7) ~(‘)(a(~)) z d2)(d1)) m o d g(z). (12)


Following the analogy to [3, eq. (7.23)], I call congruence Writing 6 for the even part of o and zcr’for the odd part
(7) the key equation for decoding Goppa codes. G iven g(z) of g, (12) becomes
and S(z), the decoder’s problem is to find low-degree (&(l, + zo(1)‘)o(2)’ E (&.W + z~w)~u)’
polynomials e(z) and q(z) that satisfy (7). i3(l)a(2)’ + #2)@’
By reducing each power of z m o d g(z) and equating co- E 0 m o d g(z).
(13)
efficients of 1,z,z2,. * - ,zdegg-r,it becomesevident that (7) Since every polynomial on the left-hand side of (13) is
is a system of deg g linear equations in the unknown co- even, the left-hand side is a perfect square,and (13) implies
efficients of rr and q. Hence, to prove that the decoder is ,3($9’ + &‘+‘l” E 0 m o d g(z)
able to correct all patterns of up to t errors, it is sufficient (14)
to show that (7) has no more than one solution with deg o where g(z) is the m u ltiple of g(z) of least degreesuch that
and deg q sufficiently small, as this uniquenessis obviously S is a perfect square. (For example, if g(z) is squarefree,
equivalent to the corresponding set of linear equations then 3 = g2.) Hence, if deg g = 2t, deg o(l) I t, and
being linearly independent. deg a(‘) I t, then (14) implies that
W e therefore consider the conditions under which there
are two different pairs of solutions to (7):
from which, by relative primality, cr(l) = crc2).W e restate
S(z)a(‘)(z) E q(‘)(z) m o d g(z) (8)
this result as a theorem.
S(z)ac2)(z) = t,~(‘)(z)m o d g(z) (9) Theorem 3: If deg g(z) = t, and if g(z) has no repeated
irreducible factors, then there is a t-error-correcting alge-
where a(‘)(z) and q(‘)(z) are relatively prime, as are a(‘)(z) braic decoding algorithm for the binary Goppa code with
and V(~)(Z).If a(‘)(z) and g(z) had any common factor, Goppa polynomial g(z).
then this factor would have to divide r(‘)(z), contradicting In the special case in which g(z) is a power of z, (7)
the assumptionthat cr(l) and q(l) are relatively prime. Thus reducesto [3, eq. (7.23)]. From this, it can easily be shown
we may divide (8) by a(‘)(z) to obtain that the Goppa code with Goppa polynomial zZr is identical
to a primitive BCH code. In this case,the system of linear
S(z) = e m o d g(z) equations representedby (7) can be solved by the iterative
algorithm given in [3, sec. 7.41. Unfortunately, no method
and, similarly, from (8), of comparable simplicity is known for solving (7) in the
caseof more generalg(z).
S(z) = $f m o d g(z)
III. THE ASYMPTOTIC GILBERT BOUND
whence W e have just seen that the Goppa codes include the
Ok (10) primitive BCH codes as a special case. O f course the class
z a(2)(z)rf’)(z) m o d g(z).
of Goppa codes also includes many classesof non-BCH
If deg g = 2t and deg a(‘) I t, deg o(‘) I t, deg v(2) c t, codes.The Goppa codes for which g(z) is irreducible over
deg q(l) < t, then (10) becomes G F (qm) are called irreducible Goppa codes. W e shall now
a’1’(z)q’2’(z) = a(2yz)p(z). (11) show that most long irreducible Goppa codes satisfy the
From (1l), a(‘) divides o(2)@), and since o(l) and q(l) are G ilbert bound on m inimum distance. To this end, we let
relatively prime, o(l) must divide ot2). Similarly, a(‘) must g”‘ (z),g’2’ (z) * - - ,g(‘)(z) be the distinct irreducible poly-
divide #). Sinceboth are m a n ic, it follows that a(‘) = crc2), n o m ials of ddgreet over G F (4”). According to the well-
whenceu(l) = qc2).Th is proves that if deg g = 2t, then (7) known theorem presentedelsewhere[3, theorem 3.431,the
has at most one solution with deg r < deg cr I t, and this number of irreducible q-ary t-tics is
implies that the correspondingsystemof linear equationsin
the unknown coefficients of CJand q must be nonsingular. - q”’t (1 _ q -(mr/2)+1)
mf/d >

W e restate this conclusion as a theorem. dji

where p(d) is the M o e b ius function. Now the vector Y is


in the Goppa code with Goppa polynomial g”‘(z) iff
2 Notice that (6) is an improvementover [3, eq. (10.14)],becauseby
using o’we are able to determinethe value of eacherror symbol as it CL
is located rather than first finding all error locations and then all z 0 m o d g”‘(z).
error values. YE’=(P) Z - y

Authorized licensed use limited to: Nanjing Southeast University. Downloaded on August 18,2010 at 09:46:23 UTC from IEEE Xplore. Restrictions apply.
592 IEEE TRANSACTIONS ON INFORh4ATION THEORY, SEPTEMRER 1973

If the Hamming weight of Y is d, then more detailed proof of the fact that primitive BCH codes
are a special class of Goppa codes is presented. In [2,
xx- sec. 51 there is a survey of a number of other types of
YEGF(qm) Z- y codes, including Srivastava codes and Gabidulin codes,
is a rational function which can be written as the quotient which are also easily seento be weak specialcasesof Goppa
of a numerator of degree I (d - 1) and a denominator of codes.
degree d. The Goppa polynomial of each Goppa code A detailed example of the (16,8,5) binary Goppa code is
containing Y must divide the numerator. Since all ir- presentedin [ 1, sec. 61. In [l, sec. 71 Goppa proves that,
reducible q-ary t-tics are pairwise relatively prime, it follows under certain quite restrictive hypotheses, the BCH codes
that the number of irreducible Goppa codes containing Y are the only cyclic Goppa codes. Later, Berlekamp and
is at most L(d - 1)/t]. We now overbound the number of Moreno [4] showed that all double-error-correcting binary
Goppa codes which contain words of weight 5 D by Goppa codes become cyclic when extended by an overall
summing over all ($‘)(q - l)d vectors of weight d I D parity check. In particular, the (16,8,5) binary Goppa code
and bounding the number of Goppa codes containing each. may be obtained by shortening the binary quadratic residue
If code of length 17. We are still investigating the possibility
of close relationships betweenother specialclassesof Goppa
die [d+] (q - 1)d (7) < $ (1 - q-(m@)+l) (15) codes and cyclic codes.
In a subsequent paper [S], Goppa introduced several
then the number of “bad” irreducible Goppa codes is less new classes of codes based on the codes described here.
than the total number of irreducible Goppa codes, so there The new classeshave the following parameters: 1) q-ary
must be some remaining irreducible Goppa codes which codeswithn=q”m,k=n-2mt,d>2t+1;2)q-ary
have m inimum distance 2 D. For large n = qm, the ir- codes with n = qm - 2t + m(2t - 1) + 1, k = qm - 2t,
reducible Goppa codes have rate 2 R if we set t = d 2 2t + 1; and 3) binary codes with n = 2” + mt, k =
[(l - R)q*]/m, and inequality (15) is easily seento be only 2” - t, d 2 2t + 1. This new class of binary codes in-
negligibly weaker asymptotically than the classical Gilbert cludes an infinite number of codeswhich are better than any
criterion for the existence of codes with distance D; this known Goppa code of the type discussedhere, although at
criterion is any tixed rate the lower bound on the distance of these new
codes is asymptotically weaker than that for comparable
d$o(4 - ljd(3 < qcl-R)“. BCH codes.
We state the conclusion as Theorem 4. REFERENCES
Theorem 4: If R is any given rate, 0 < R < (q - 1)/q,
and if E is any small positive constant, then almost all 111V. D. Goppa, “A new class of linear error-correcting codes,”
Probl. Peredach. Inform,, vol. 6, no. 3, pp. 24-30, Sept. 1970.
irreducible q-ary Goppa codes of rate R and long length n PI -, “Rational representationof codes and (L,g) codes,”Probl.
Peredach. Inform., vol. 7, no. 3, pp. 4149, Sept. 1971.
have m inimum distance no more than en less than the [31 E. R. Berlekamp,Algebraic Coding Theory. New York: McGraw-
Gilbert bound. Hill, 1968.
[41 E. R. Berlekampand 0. Moreno, “Extended double-error-correct-
IV. CONCLUDING REMARKS ing binary Goppa codesare cyclic,” IEEE Trans. Inform. Theory,
vol. IT-19, Nov. 1973to be published.
A number of equivalent reformulations of Goppa codes I51 V. D. Goppa, “Some codes constructed on the basis of (L,g)
codes,”Probl. Peredach. Inform., vol. 8, no. 2, pp. 107-109,June
are given in [l, sec. 31 and [2, sets. 2, 31. In [2, sec. 41 a 1972.

Authorized licensed use limited to: Nanjing Southeast University. Downloaded on August 18,2010 at 09:46:23 UTC from IEEE Xplore. Restrictions apply.

You might also like