The minimum distance of codes in an array coming from telescopic semigroups Christoph Kirfel and Ruud Pellikaan
∗
Appeared in: IEEE Trans. Inform. Theory, IT-41 (1995), 1720-1732.
Abstract The concept of an error-correcting array gives a new bound on the minimum distance of linear codes and a decoding algorithm which decodes up to half this bound. This gives a unified point of view which explains several improvements on the minimum distance of algebraic-geometric codes. Moreover it is explained in terms of linear algebra and the theory of semigroups only.
Key words: geometric Goppa codes, algebraic-geometric codes, algebraic curves, semigroup of Weierstrass point, Feng-Rao bound, error-correcting array, telescopic, decoding.
1
Introduction
In the work of Feng and Rao [6] we find for the first time an effective and efficient decoding algorithm for algebraic-geometric codes which decodes up to half the designed minimum distance. This algorithm gets new syndromes recursively. In every step there is a majority ∗ Manuscript received February 22, 1994; revised August 10, 1995. This work was presented at the conference Arithmetic, Geometry and Coding Theory 4, at Luminy, France, June 28 - July 2, 1993. The first author is with the Bergen Lærerhøgskole, Land˚ asvingen 15, N-5030 Landaas, Norway, email:
[email protected] and his research was founded by the NFR/NAVF. The second author is with the Department of Mathematics and Computing Science, Eindhoven University of Technology, P.O. Box 513, 5600 MB Eindhoven, The Netherlands, email:
[email protected]
1
voting for an unknown syndrome. This algorithm is called majority coset decoding by Duursma [4, 5]. Furthermore it was noted in [7] that majority voting often decodes beyond half the Goppa designed minimum distance. In this way a new bound for the minimum distance of one point AG codes was obtained. We generalized this work to arbitrary linear codes in [29] by the concepts of an array of codes and an error-correcting array. For a sequence of codes which has an error-correcting array we defined the so called Feng-Rao bound for the minimum distance of these codes and an algorithm which decodes up to half this bound. In this way one gets in general an improvement of the Goppa bound for algebraic-geometric codes in case the redundancy of the code is smaller than 3g, where g is the genus of the curve used. This method enables us to give another proof of a result of Garcia, Kim and Lax [10, 11]. This new bound can be expressed in terms of the semigroup of non-gaps of a Weierstrass point. In particular we get a nice formula in case of so-called telescopic semigroups. Two generator semigroups are examples of telescopic semigroups. The result in the case of semigroups with two generators, one of which is a power of the characteristic of the finite field, was obtained by Johnsen, Manshadi and Monzavi [19]. In section 2 we repeat the definition of an error-correcting array and give a bound on the minimum distance and an algorithm which decodes up to half this bound. Algebraicgeometric codes are the main example and application of error-correcting arrays and we treat it in section 3. The knowledge of the semigroup of non-gaps at a rational point on a curve is essential for the effective computation of the new bound. In section 4, 5 and 6 we give the properties of semigroups which we need for getting formulas for the minimum distance in terms of non-gap sequences, in particular for semigroups with two generators and more generally for telescopic semigroups. In section 7 we treat several examples. Notation The set of non-negative integers is denoted by N0 and the set of positive integers is denoted by N. The finite field with q elements is denoted by Fq . We denote the coordinatewise multiplication of a and b in Fnq by a ∗ b, so ai bi is the ith coordinate of a ∗ b. With this multiplication Fnq becomes an Fq -algebra. The standard inner product on P ai bi . The dual of a linear code C in Fnq is Fn q is denoted by , that is to say < a, b >= denoted by C ⊥ , that is to say C ⊥ = {y ∈ Fnq | < y, c >= 0 for all c ∈ C}. The semispace in Fnq generated by a subset A is denoted by hAi. The weight of a word y is denoted by wt(y). The length of a code C is usually denoted by n and the minimum distance by d(C) or d. In this paper we have by definition that the zero code has minimum distance ∞. The subspace of Fnq generated by by a subset B is denoted by hBi. The semigroup in N0 generated by a subset A is denoted by hAi. The number of elements of a set S is denoted by #S.
2
Arrays for a sequence of codes
The following definition is slightly more general than in [29].
2
Definition 2.1 Consider Fnq with the multiplication ∗ as an Fq -algebra. Let K be an Fq -algebra. Let ϕ : K → Fn q be a morphism of Fq -algebras. Let C = (Cr )r∈N be a sequence of Fq -linear codes of length n. An array for the sequence of codes C is a triple (U, V, W) of sequences of subspaces of K enumerated by U = (Ui )i∈N , V = (Vj )j∈N and W = (Wr )r∈N such that Cr = (ϕ(Wr ))⊥ for all r ∈ N and the following conditions hold: (1) dim(Ui ) = i and dim(Vj ) = j and dim(Wr ) = r for all i, j, r ∈ N. (2) Ui ⊆ Ui+1 and Vj ⊆ Vj+1 and Wr ⊆ Wr+1 for for all i, j, r ∈ N. (3) For all i, j ∈ N there exists an r ∈ N such that Ui Vj ⊆ Wr , where Ui Vj is the set of products f g of elements f ∈ Ui and g ∈ Vj . For such i and j, we define r(i, j) to be the smallest index r such that Ui Vj ⊆ Wr . (4) If f ∈ Ui \ Ui−1 and g ∈ Vj \ Vj−1 and r = r(i, j), then f g is an element of Wr \ Wr−1 for all i, j ∈ N. (5) r(i − 1, j) < r(i, j) and r(i, j − 1) < r(i, j) for all i, j ∈ N. C∞ is by definition the intersection of all Cr for r ∈ N. We call the array an error-correcting array if, moreover the following condition holds: (6) C∞ = 0 Definition 2.2 For an array for codes and r ∈ N we define the following set Nr = {(i, j) ∈ N2 |r(i, j) = r + 1} Let nr be the number of elements of Nr . Define for r ∈ N δF R (r) = min{ns |r ≤ s} ∪ {d(C∞ )}. The minimum distance of the zero code is by definition ∞. We call δF R (r) the Feng-Rao designed minimum distance of the code Cr with respect to the array of codes, and we abbreviate it by δr . Remark 2.3 1) Lausten [22] showed that the apparently stronger Condition (5) was tacitly assumed in [29] instead of Condition (4). Remark that r(i, j) is increasing by definition, that is if i ≤ i0 and j ≤ j 0 , then r(i, j) ≤ r(i0 , j 0 ). Condition (5) says that r(i, j) is strictly increasing. Assume the Conditions (1), (2) and (3). It is easy to show that Condition (5) implies (4). It is somewhat more involved to show that Condition (4) implies (5), but it is still straightforward linear algebra, see [22, Lemma 7.2.1]. 2) In the original definition of an array of codes [29], the Fq -algebra K and Fnq were the 3
same. In order to get examples of arrays of algebraic-geometric codes in this way, see Example 2.4, one has to assume that the degree of the divisor G is sufficiently large. But this assumption is not needed anymore in this new set up. 3) Remark that we could have taken K to be an Fqe -algebra and the vector spaces Ui , Vj and Wr to be Fqe -linear in order to treat subfield subcodes as well. But this would not give better estimates for the minimum distance. Example 2.4 We give a sequence of cyclic codes as the simplest example of a sequence of codes which has an error-correcting array. For simplicity we do not consider the cyclic codes as subfield subcodes but over the field itself. Let Fq be the finite field with q elements. Let n = q − 1. Let α be a primitive element of Fq . Let K = Fq [X] be the ring of polynomials in one variable with coefficients in Fq . Then K is an Fq -algebra by the ordinary multiplication of polynomials. Define the map ϕ : K → Fnq by ϕ(f ) = (f (α0 ), f (α1 ), . . . , f (αn−1 )) for f ∈ K. Then ϕ is a morphism of Fq -algebras. Let Ui = {f ∈ Fq [X]|deg(f ) < i}, let Wi = Vi = Ui and let Ci be the dual of ϕ(Wi ) for all i ∈ N. Then Cr = {(c0 , c1 , . . . , cn−1 ) ∈ Fnq |
n−1 X
ci αij = 0 for all 0 ≤ j < r},
i=0
that is to say Cr is the cyclic code over Fq with defining set {αj |0 ≤ j < r}. If r ≥ n, then Cr = 0, since a non-zero polynomial of degree n − 1 has not r distinct zeros. Thus C∞ = 0. Furthermore r(i, j) = i + j − 1 and Nr = {(i, j) ∈ N2 |1 ≤ i ≤ r + 1, j = r + 2 − i}, so nr = r + 1 and δF R (r) = r + 1 is the BCH bound for cyclic codes. We called δF R (r) a designed minimum distance. This is justified by the following theorem. Theorem 2.5 For an array of codes we have that d(Cr ) ≥ δF R (r), for all r ∈ N. Proof: See also [7, 29]. Choose fi ∈ Ui \ Ui−1 and gj ∈ Vj \ Vj−1 . Then f1 , . . . , fi is a basis of Ui and g1 , . . . , gj is a basis of Vj , by Conditions (1) and (2). Thus fi gj ∈ Wr \Wr−1 , if r(i, j) = r, by Condition (4). Let ai = ϕ(fi ) and bj = ϕ(gj ). We denote δF R (r) by δr . The proof of the theorem is by decreasing induction on r. A decreasing sequence of subvector spaces of Fnq is stationary, thus there exists an l such that Cr = C∞ for all r ≥ l. Therefore, the statement: δr ≥ d(Cr ), is obvious for all r ≥ l by the definition of δF R . Suppose we have already proved d(Cr+1 ) ≥ δr+1 . Now we prove that d(Cr ) ≥ δr . If y is a non-zero word in Cr+1 , then wt(y) ≥ δr+1 ≥ δr , by the induction hypothesis, and the definition of δr . Now suppose y ∈ Cr \ Cr+1 . Consider the entries Si,j in the u × v matrix S, where Si,j =< y, ai ∗ bj >, and u and v are chosen sufficiently large so that Nr is contained in the set {(i, j) ∈ N2 |1 ≤ i ≤ u, 1 ≤ j ≤ v}.
4
If r(i, j) ≤ r, then Si,j = 0, by Condition (3). Now we show that Si,j 6= 0 in case r(i, j) = r + 1. Let r(i, j) = r + 1. Now Wr+1 = Wr + < fi gj >, since Wr ⊆ Wr+1 by Condition (2), and fi gj ∈ Wr+1 \ Wr by Condition (4), and dim(Wr+1 ) = dim(Wr ) + 1 by Condition (1). Furthermore Cr⊥ is the ⊥ image of Wr under ϕ and Cr+1 is the image of Wr+1 under ϕ, and ϕ(fi gj ) = ai ∗ bj . Thus ⊥ ⊥ Cr+1 = Cr + < ai ∗ bj >. If Si,j = 0, then < y, ai ∗ bj >= 0. But y ∈ Cr , so < y, x >= 0 ⊥ for all x ∈ Cr+1 . Thus y ∈ Cr+1 which is a contradiction. The function r(i, j) is strictly increasing by Condition (5), therefore S has an echelon form with non-zero pivots at all entries Si,j where r(i, j) = r + 1. Thus the rank of the matrix S is at least equal to the number of elements of Nr , which we called nr . On the other hand, we can decompose the same matrix in a product of three matrices S = ADBt , where A is the matrix with a1 , . . . , au as rows, B is the matrix with b1 , . . . , bv as rows and D is the n × n diagonal matrix with y on the diagonal, and zeros outside the diagonal. Hence rank(S) ≤ rank(D) = wt(y). Combining the two inequalities involving the rank of S we get wt(y) ≥ nr , which is at least δr , by definition. Thus d(Cr ) ≥ δr , and we have proved the theorem by induction. 2 Wei [37] has defined the notion of generalized weights of a linear code which is a generalization of the minimum distance. A simple observation leads to a bound for the rth generalized weight of Cs in terms of δF R . Definition 2.6 The support of a code C is defined by supp(C) = {i | ci 6= 0 for some c ∈ C}. The rth generalized weight dr (C) of a linear code C is defined by dr (C) = min{#supp(D) | D is a linear subcode of C and dim(D) = r }. Lemma 2.7 If C 0 is a subcode of C and has at most codimension v in C, then du+v (C) ≥ du (C 0 ). Proof: Let D be a linear subcode of C of dimension u + v such that #supp(D) = du+v (C). The dimension of the intersection of D with C 0 , which we denote by D0 , is at least u, since C 0 has at most codimension v in C. So #supp(D0 ) ≥ du (C 0 ). The support of D0 is contained in the support of D. Thus du+v (C) ≥ du (C 0 ). 2 Theorem 2.8 For an array of codes we have that dr (Cs ) ≥ δF R (r + s − 1), for all r, s ∈ N. Proof: Let C = Cs and C 0 = Cr+s−1 . Then C 0 is a subcode of C and has at most codimension r − 1 in C. Applying Lemma 2.7 with u = 1 and v = r − 1 gives 5
dr (Cs ) ≥ d1 (Cr+s−1 ), which is at least δF R (r + s − 1), by Theorem 2.5. 2 We are concerned with showing that the Feng-Rao is an improvement of the Goppa bound for algebraic geometric codes. For completeness sake we prove that one can decode up to half this new bound. Suppose we have a code C1 for which we need a decoding algorithm, and a subcode C2 for which we have a decoding algorithm. Coset decoding is an algorithm which has as input a word y1 such that y1 ∈ e + C1 , and as output y2 such that y2 ∈ e + C2 . In the following we treat a method which is called majority coset decoding for a decreasing sequence of codes which has an error-correcting array. This generalizes the work of Feng and Rao [6] and Duursma [4, 5] from geometric Goppa codes to arbitrary linear codes. Theorem 2.9 A code in a sequence of codes which has an error-correcting array has a decoding algorithm of complexity O(n3 ) which corrects up to half the Feng-Rao bound, where n is the word length of the code. Proof: First we introduce some definitions, see [6, 7, 8]. Let S be a u × v-matrix with entries Si,j , 1 ≤ i ≤ u, 1 ≤ j ≤ v. Let S(i, j) be the i × j-matrix with entries Si0 ,j 0 , 1 ≤ i0 ≤ i, 1 ≤ j 0 ≤ j. Consider the folowing two conditions: (7) rank(S(i − 1, j − 1)) = rank(S(i − 1, j)) = rank(S(i, j − 1)) (8) rank(S(i − 1, j − 1)) = rank(S(i, j)) Clearly Condition (8) implies (7); conversely if Condition (7) holds, then there exists a unique value for Si,j such that Condition (8) holds. We call (i, j) a discrepancy if Condition (7) holds and Condition (8) does not hold. Remark that Condition (7) holds for (i, j) if and only if Condition (8) holds for all (i0 , j), 1 ≤ i0 < i and all (i, j 0 ), 1 ≤ j 0 < j. Thus in every row there is at most one discrepancy and the same holds for every column. The number of discrepancies of S is equal to the rank of S. Suppose y is a received word and has error e with respect to C = Cw of weight at most t ≤ (δw − 1)/2. Let ai and bj be defined as in the proof of Theorem 2.5. Let Si,j =< e, ai ∗ bj > and let S be the corresponding u × v-matrix with entries Si,j . In the following we choose, for a given r, u and v sufficiently large such that Nr is contained in the set {(i, j) ∈ N2 |1 ≤ i ≤ u, 1 ≤ j ≤ v}. Notice the difference between the definition of Si,j in this proof and in the proof of the previous theorem. Now the proof goes by increasing induction on r. For all (i, j) such that r(i, j) ≤ w we know the syndrome Si,j , since y ∈ e + Cw . Let yw = y. Suppose we already know an element ys ∈ e + Cs for all s ≤ r and all the syndromes Si,j for (i, j) such that r(i, j) ≤ r. 6
Now we explain how to get an element yr+1 ∈ e + Cr+1 and the syndromes Si,j such that r(i, j) ≤ r + 1. If Cr = Cr+1 , then yr = yr+1 and we are done. So we may assume that Cr 6= Cr+1 and therefore dim(Cr ) = dim(Cr+1 ) + 1. We call a pair (i, j) a candidate if r(i, j) = r + 1 and Condition (7) holds. A candidate is called true if Condition (8) holds, and false otherwise. We know the candidates but we do not know which candidates are true nor false. We first prove the remarkable property that the number of true candidates, which we will denote by T , is strictly greater than the number of false candidates, which we will denote by F . Afterwards we show how to compute a certain λ ∈ Fq for every candidate, which is the same for all true candidates and thus gives us yr+1 and new syndromes. We have seen already in the proof of Theorem 2.5 that the rank of S is at most wt(e) ≤ t. A discrepancy at entry (i, j), with r(i, j) ≤ r, is called known. Denote the number of known discrepancies by K. The other discrepancies are called unknown. Clearly we have that all false candidates are unknown discrepancies. Thus K + F ≤ the number of all discrepancies = rank(S) ≤ t. If (i, j) is a known discrepancy and (i, j 0 ) ∈ Nr , j < j 0 , then (i, j 0 ) is not a candidate; and similarly for (i0 , j) ∈ Nr , i < i0 . Furthermore for every pair (i, j) such that r(i, j) = r + 1, that is (i, j) ∈ Nr , which is not a candidate, there exists a known discrepancy in the same row or column, possibly in both. For every candidate, true or false, there exist no known discrepancy in the same row or column. We called nr the number of elements of Nr . Thus nr ≤ T + F + 2K. If we combine the two inequalties above and use that 2t < δw ≤ δr ≤ nr , then we get nr ≤ T + F + 2K ≤ T + F + (2t − 2F ) < T − F + nr . Therefore F < T, that is the number of true candidates is greater than the number of false candidates. We associate with each candidate an element λ ∈ Fq in such a way that all true candidates have the same λ, thus giving a way to know the true candidates, by majority as we explained above, and therefore the syndromes Si,j such that r(i, j) = r + 1. For every candidate, that 0 is for every (i, j) such that Condition (7) holds, there is a unique Si,j ∈ Fq possible at entry 0 (i, j) such that Condition (8) holds. This entry Si,j can be computed using the known syndromes, and is equal to Si,j if and only if (i, j) is a true candidate. The vector space Cr contains the vector space Cr+1 and the quotient is one dimensional, so there exists a vector cr such that Cr = hcr i + Cr+1 . Therefore there exists a unique λr ∈ Fq such that ⊥ yr+1 := yr + λr cr is an element of e + Cr+1 . If r(i, j) = r + 1, then Cr+1 = Cr⊥ + hai ∗ bj i. Thus < cr , ai ∗ bj > is not equal to zero. By taking the inner product with ai ∗ bj we get < yr , ai ∗ bj > +λr < cr , ai ∗ bj >= Si,j . 7
0 For every candidate (i, j) we compute Si,j as explained above and the element λi,j defined by 0 Si,j − < yr , ai ∗ bj > λi,j = . < cr , ai ∗ bj > 0 = Si,j so λi,j = λr . Therefore all λi,j are the same If (i, j) is a true candidate, then Si,j for all true candidates (i, j). Thus the λ which occurs most often among the λi,j of the candidates is equal to λr . In this way we get yr+1 ∈ e + Cr+1 and the syndromes Si,j such that r(i, j) ≤ r + 1, that is one step further in the induction. There exists an l ∈ N such that Cr = C∞ for all r ≥ l, as we remarked already in the proof of Theorem 2.5. Finaly C∞ = 0, by Condition (6), so we have found the error e of the received word, since yl = e. We leave the estimate on the complexity to the reader or refer to [6]. 2
Remark 2.10 1) If we have an array for a sequence of codes (Cr )r∈N and C∞ 6= 0, then we still could decode in case we have a decoding algorithm for C∞ . We say that the array is a t-errorcorrecting array for Cw if there exist i, j ∈ N such that (ϕ(Ui ), ϕ(Vj )) is a t-error correcting pair for Cl , where l = r(i, j) and t ≤ (δF R (w) − 1)/2. See [28, 29] for the definition of an error-correcting pair. In case Cw has a t-error-correcting array, then we have an efficient decoding algorithm which corrects all received words with at most t errors. 2) There are improvements on the complexity in special cases for codes from plane curves given by [9, 32], but up to now there is no improvement on the complexity for a sequence of asymptotically good codes.
3
Error-correcting arrays for codes on curves
In this section we give and investigate our main example: arrays for sequences of algebraicgeometric codes. For the main properties of algebraic curves over finite fields and geometric Goppa codes we refer to [12, 13, 14, 35, 36]. Let X be a projective, non-singular, absolutely irreducible curve defined over the finite field Fq . We say that X is a curve for short. The genus of X is denoted by g. Let Fq (X ) be the function field of X over Fq and ΩX the vector space of rational differential forms on X over Fq . A place is a set of rational points over an extension Fqe of Fq which are conjugate under the action of the Frobenius map x 7→ xq . A divisor is a finite sum of places with integer coefficients. We add and compare divisors componentwise, that is to P P P say if G = aP P and H = bP P , then G + H = (aP + bP )P and G ≤ H if and only P P if aP ≤ bP for all places P . Let G = aP P . The degree of G is by definition aP and is denoted by deg(G). The support of G, denoted by supp(G), is the set of places with non-zero coefficient: supp(G) = {P |aP 6= 0}. For a place P on the curve and a rational function f of the curve we denote by vP (f ) the order of the zero of f at P in case f has a zero, and −vP (f ) is the order of the pole of f at P in case f has a pole at P . The principal P divisor of f is by definition the formal finite sum vP (f )P , taken over all the places of the 8
curve X . The degree of a principal divisor is zero. The divisor (ω) of a differential form ω is defined similarly as the sum over all zeros and poles of ω counted with multiplicities. The degree of the divisor of a differential form is equal to 2g − 2. If G is a divisor, then we denote the coefficient of P in G by vP (G). The two fundamental vector spaces on a curve associated with a divisor G are: L(G) = {f ∈ Fq (X ) |f = 0 or (f ) ≥ −G} and Ω(G) = {ω ∈ ΩX |ω = 0 or (ω) ≥ G}. If deg(G) < 0, then L(G) = 0; and if deg(G) > 2g − 2, then Ω(G) = 0. If F ≤ G, then dim(L(G)) ≤ dim(L(F )) + deg(G − F ). The Theorem of Riemann-Roch relates the dimensions of L(G) and Ω(G): dim(L(G)) = deg(G) + 1 − g + dim(Ω(G)). Furthermore, if deg(G) > 2g − 2, then Ω(G) = 0, so dim(L(G)) = deg(G) + 1 − g. Let P1 , . . . , Pn be n distinct rational points on the curve X . We fix the order of the Pi and denote the divisor P1 + · · · + Pn by D . The algebraic-geometric or geometric Goppa codes associated with D and G are defined by: CL (D, G) = {(f (P1 ), ..., f (Pn ))|f ∈ L(G)}, CΩ (D, G) = {(resP1 (ω), ..., resPn (ω))|ω ∈ Ω(G − D)}. Usually one supposes deg(G) < n or deg(G) > 2g − 2, respectively, in order to be able to say something about the dimension and the minimum distance of these codes. That is, if deg(G) < n, then CL (D, G) has at least dimension deg(G) + 1 − g and at least minimum distance n − deg(G). If deg(G) > 2g − 2, then CΩ (D, G) has at least dimension n − deg(G) − 1 + g and at least minmum distance deg(G) − 2g + 2. If 2g − 2 < deg(G) < n, then the dimensions are exactly equal to the above mentioned lower bounds. CL (D, G) and CΩ (D, G) are dual codes. We are mainly interested in the minimum distance of codes C of the form C = CΩ (D, G). The minimum distance of such codes is at least deg(G) − 2g + 2. We call it the Goppa designed minimum distance of C and denote it by δΓ (C). The divisor of poles of f is by definition equal to −vP (f )P , where the sum is taken over all places where f has a pole, and is denoted by (f )∞ . A positive integer γ is called a (Weierstrass) gap at a rational point P if L(γP ) = L((γ − 1)P ) otherwise γ is called a non-gap at P . The integer γ is a non-gap at P if and only if there exists a rational function f which has no poles outside P and has pole order γ at P , or equivalently (f )∞ = γP . We need the generalization of the notion of a gap at a point considered by Homma [18] and Garcia and Lax [10]. P
Definition 3.1 Let G be a divisor and P a rational point. An integer γ ≥ −deg(G) is called a G-non-gap at P if there is a rational function f such that vP ((f ) + G) = −γ and vQ ((f ) + G) ≥ 0 for all places Q 6= P ,
9
or equivalently ((f ) + G)∞ = γP. If no such function exists, γ is called a G-gap at P . In case G = 0, we just say non-gap and gap, respectively. Remark 3.2 1) The integer γ is a G-gap at P if and only if L(G + γP ) = L(G + (γ − 1)P ). This follows directly from the definitions. 2) If γ ≥ −deg(G) + 2g, then γ is a G-non-gap at P . This follows from the Remark 3.2.1 and the Theorem of Riemann-Roch. 3) The G-gaps at P lie in the interval [−deg(G), −deg(G) + 2g − 1] and the number of G-gaps at P is exactly equal to g. The first part is a reformulation of Remark 3.2.2 and the second part follows from the fact that the dimension of L(G + γP ) increases with at most one if we increase γ with one, and dim(L(G + γP )) = 0 or g in case γ = −deg(G) − 1 or −deg(G) + 2g − 1, respectively. 4) If α is an F -non-gap at P and β is a G-non-gap at P , then α + β is an (F + G)-non-gap at P . This is a direct consequence of the definitions. In particular: if α is a non-gap at P and β is a non-gap at P , then α + β is a non-gap at P . Thus the non-gaps at P form a semigroup. The G-non-gaps at P do not form a semigroup in general. 5) Let (µi )i∈N be the F -non-gap sequence at P , that is to say the enumeration of all F -nongaps at P in increasing order. Then dim(L(F +µi P )) = i and dim(L(F +(µi −1)P )) = i−1. This follows by the definitions. Thus µi = −deg(F ) + i − 1 + g for i > g, by the Theorem of Riemann-Roch. Example 3.3 Let P be a rational point of the curve which is not in the support of D. Let (µi ) be the F -non-gap sequence at P , let (νi ) be the G-non-gap sequence at P and let (ρi ) be the (F + G)-non-gap sequence at P . Thus for every i and j there exists an r such that µi + νj = ρr , by Remark 3.2.4. Let Ui = L(F + µi P ), let Vj = L(G + νj P ) and let Wr = L(F + G + ρr P ). Conditions (1), (2) and (3) of Definition 2 are immediate by the choice of the sequences (µi ), (νi ) and (ρr ). We claim that: if µi + νj = ρr , then r(i, j) = r. Condition (5) follows from this claim, that is r(i, j) is strictly increasing, since µi and νj are strictly increasing as functions of i and j, respectively. Now we give a proof of the claim. Suppose µi + νj = ρr . Therefore L(F + µi P )L(G + νj P ) ⊆ L(F + G + ρr P ), that is Ui Vj ⊂ Wr , so r(i, j) ≤ r. By definition there exists a rational function f such that ((f ) + F )∞ = µi P and a rational function g such that ((g) + G)∞ = νi P . So ((f g) + F + G)∞ = (µi + νj )P = ρr P. 10
Thus f g ∈ L(F + G + ρr P ) and f g 6∈ L(F + G + (ρr − 1)P ), that is to say f g ∈ Wr \ Wr−1 . We conclude that r = r(i, j) and therefore we have shown the claim. Let P, P1 , . . . , Pn be n+1 distinct rational points on X . Let K be the ring of all rational functions on the curve which have no poles outside P . Then K is an Fq -algebra and it contains all the Ui , Vj and Wr as subvector spaces. Let D = P1 +· · ·+Pn . Let ϕ : K → Fnq be the evaluation map, defined by ϕ(f ) = (f (P1 ), . . . , f (Pn )). Let F and G be two divisors on X which have support disjoint from the support of D. Then ϕ(Wr ) = CL (D, F + G + ρr P ) by definition, which is the dual of CΩ (D, F + G + ρr P ). Suppose r > n + g. Then L(F + G + ρr P ) has dimension r and ρr + deg(F + G) = r + g − 1, by Remark 3.2.5. So L(F + G + ρr P − D) has dimension r − n, by the Theorem of Riemann-Roch. Furthermore, L(F + G + ρr P − D) is the kernel of the evaluation map ϕ : L(F + G + ρr P ) → Fnq , since the P1 , . . . , Pn are mutually distinct, are not equal to P and are not in the support of F nor G. Thus ϕ(L(F + G + ρr P )) = Fnq , so Cr = 0 and C∞ = 0. In this way we get an error-correcting array for the sequence of codes CΩ (D, F + G + ρr P ). Theorem 3.4 Let P, P1 , . . . , Pn be n+1 distinct rational points on a curve X over Fq , and let G be a divisor on the curve. Then the algebraic-geometric code CΩ (D, G) is member of a sequence of codes (CΩ (D, G + µr P ))r∈N which has an error-correcting array. Proof: This follows immediately from the construction and what we have proved in Example 3.3 by taking F = 0. 2 Corollary 3.5 An algebraic-geometric code has a decoding algorithm which decodes up to half the Feng-Rao bound with complexity O(n3 ) in case the curve has at least n + 1 rational points, where n is the code length. Proof: This follows from Theorems 2.9 and 3.4. 2 Remark 3.6 In the papers of Feng and Rao [6, 7] only codes of the form CΩ (D, mP ) are considered, so there it suffices to take Ui = Vi . In Duursma’s [4, 5] approach arbitrary divisors G are allowed and one can take Ui different from Vi . The restriction that the number of points on the curve is greater than n remains. Definition 3.7 For a given integer m, a rational point P , and divisors F and G on a curve, we define the following set: D(m) = {(x, y)| x is an F -gap at P and y is a G-gap at P and x + y = m}. Theorem 3.8 For an error-correcting array for a sequence of codes as in Example 3.3 we have: nr ≥ deg(F + G) + ρr+1 + 1 − 2g + #D(ρr+1 ), nr = r + 1 − g + #D(ρr+1 ) if r ≥ g, nr = r + 1 − g if r > 3g − 2, δF R (r) ≥ r + 1 − g and equality holds if r > 3g − 2. 11
Proof: The number of elements of Nr is equal to nr = #{(i, j)|µi + νj = ρr+1 }, since r(i, j) = r +1 if and only if µi +νj = ρr+1 as we have seen in Example 3.3. For a given integer m, define the following sets. A(m) is the set of pairs of integers (x, y) such that x ≥ −deg(F ), y ≥ −deg(G) and x + y = m. Let B(m) be the set of pairs (x, y) ∈ A(m) such that x is an F -gap at P , and let C(m) be the set of pairs (x, y) ∈ A(m) such that y is a G-gap at P . Clearly D(m) = B(m) ∩ C(m). By the principle of inclusion/exclusion we have that nr = #A(ρr+1 ) − #B(ρr+1 ) − #C(ρr+1 ) + #D(ρr+1 ) The number of elements of A(ρr+1 ) is ρr+1 + deg(F + G) + 1. The total number of F -gaps at P is g, so #B(ρr+1 ) ≤ g, and similarly #C(ρr+1 ) ≤ g, giving the first inequality. Assume r ≥ g, then ρr+1 + deg(F + G) = r + g. If x is an F -gap at P , then x ≤ −deg(F ) + 2g − 1, so y = ρr+1 − x ≥ −deg(G). So the number of elements of B(ρr+1 ) is exactly g. In the same way one has #C(ρr+1 ) = g. Therefore nr = r + 1 − g + #D(ρr+1 ), if r ≥ g. Now suppose that r > 3g − 2. If x is an F -gap and y is a G-gap at P , then x ≤ − deg(F ) + 2g − 1 and y ≤ −deg(G) + 2g − 1. If moreover x + y = ρr+1 , then ρr+1 ≤ −deg(F + G) + 4g − 2. But ρr+1 = −deg(F + G) + r + g, in case r ≥ g. Therefore such a pair (x, y) does not exist, since r > 3g − 2. Thus D(ρr+1 ) = ∅ and nr = r + 1 − g, if r > 3g − 2. The statement about δF R follows immediately from the definition and the above results on nr . 2 Corollary 3.9 The Feng-Rao designed minimum distance is greater than or equal to the Goppa designed minimum distance for a sequence of codes with the error-correcting array as in Example 3.3. Proof: The inequality follows immediately from Theorem 3.8 and the definition of δF R (r), since nr ≥ ρr+1 + deg(F + G) + 1 − 2g ≥ ρr + deg(F + G) + 2 − 2g = δΓ (Cr ). 2 Error-correcting arrays give also a method to prove a generalization of a result of Garcia, Kim and Lax [11, Theorem 4]. Proposition 3.10 Suppose that each of the integers α, α + 1, . . . , α + t is an F -gap at P and β − t, . . . , β − 1, β are G-gaps at P . Put H = F + G + (α + β − 1)P . Suppose D = P1 + · · · + Pn , where the Pi are n distinct rational points, each not equal to P and not belonging to the support of H. Then the minimum distance of CΩ (D, H) is at least deg(H) − (2g − 2) + (t + 1). Proof: Let (µi ) be the F -non-gap sequence at P , let (νi ) be the G-non-gap sequence at P and let (ρi ) be the (F + G)-non-gap sequence at P . Consider the error-correcting 12
array for the sequence of codes (CΩ (D, F + G + ρr P )r∈N , as we did in Example 3.3. Let ρw be the greatest (F + G)-non-gap which is at most α + β − 1, so L(F + G + (α + β − 1)P ) = L(F + G + ρw P ) and Cw = CΩ (D, G). Let ρl be the greatest (F + G)-non-gap which is at most α + β + t, so L(F + G + (α + β + t)P ) = L(F + G + ρl P ). If w ≤ r < l, then α + β − 1 < ρr+1 ≤ ρl ≤ α + β + t, so ρr+1 = α + β + τ , for some integer τ such that 0 ≤ τ ≤ t. So we can write ρr+1 = (α + τ + i) + (β − i) for 0 ≤ i ≤ t − τ, that is to say, we can write ρr+1 in at least t − τ + 1 ways as the sum of an F -gap and a G-gap, so #D(ρr+1 ) ≥ t − τ + 1. Therefore nr ≥ deg(F + G) + (α + β + τ ) + 1 − 2g + (t − τ + 1), by Theorem 3.8, so nr ≥ deg(H) − (2g − 2) + (t + 1), for all w ≤ r < l. Now δF R (r) ≥ δΓ (Cl ) = deg(H) − (2g − 2) + (t + 1) for all r ≥ l, by Corollary 3.9. So δF R (w) ≥ deg(H) − (2g − 2) + (t + 1), by the definition of δF R . Thus the minimum distance of Cw is at least deg(H) − (2g − 2) + (t + 1), by Theorem 2.5. 2 If we take F = G in the above Proposition 3.10, and assume that β − t + 1, . . . , β − 1, β are G-gaps at P instead of β − t, . . . , β − 1, β are G-gaps at P , and assume α + t ≤ β, then we get a result of Garcia, Kim and Lax [11, Theorem 4]. Proposition 3.11 Suppose that each of the integers α, α + 1, . . . , α + t is a G-gap at P and β − t + 1, . . . , β − 1, β is a G-gap at P . Suppose α 6= β in case t = 1. Put H = 2G + (α + β − 1)P . Suppose D = P1 + · · · + Pn , where the Pi are n distinct rational points, each not equal to P and not belonging to the support of H. Then the minimum distance of CΩ (D, H) is at least deg(H) − (2g − 2) + (t + 1). Proof: With this weakened assumption on the G gaps in case F = G, and the assumption α 6= β in case t = 1, one still can give a proof in the same way as the proof of Proposition 3.10. In case τ > 0 the proof is exactly the same. In case τ = 0, we can write ρr+1 = (α + i) + (β − i) for 0 ≤ i ≤ t − 1, that is to say, we can write ρr+1 in t ways as the sum of two G-gaps. We assumed α 6= β in case t = 1, so for at least one 0 ≤ i ≤ t − 1 we have α + i 6= β − i. Thus, since we have to count ordered pairs of G-gaps which sum up to ρr+1 , we can count at least one of the sums (α + i) + (β − i) twice, since F = G. Therefore #D(ρr+1 ) ≥ t + 1, and we can proceed in the same way as in the proof of Proposition 3.10. 2 Remark 3.12 Below we will consider certain non-gap sequences on curves. In order to get asymptotically good codes by means of the Feng-Rao bound on curves which imporve upon the so-called Tsfasman-Vl˘adut¸-Zink bound, one has to know the non-gap sequence of curves with many rational points, for instance of modular curves, see [36, page 407]. To our knowledge the determination of such non-gap sequences is still an open problem. 13
4
Symmetric semigroups
We now choose F = G = 0 in Example 3.3. Thus F + G = 0 and our non-gap sequences (µi ), (νj ) and (ρr ) coincide and form the non-gap sequence of a semigroup S. This means, for any ρi , ρj ∈ S also the ρi + ρj ∈ S. Moreover Ur = Vr = Wr = L(ρr P ). From now on we can talk about semigroups and forget about the curves and codes lying behind them. Definition 4.1 We call a subset S of the non-negative integers N0 a semigroup if for all x, y ∈ S also the sum x + y ∈ S, and the set of N0 \ S is finite. We call the elements of N0 \ S the gaps of S and the elements of S we call the non-gaps of S. We denote the number of gaps by g = g(S). In the context of the semigroup of non-gaps of a rational point on a curve this number equals the genus of the curve. We enumerate the gaps of S by increasing order l1 < · · · < lg . So lg (S) = lg is both the largest gap of S as the gth gap. Remark 4.2 Now, consider a pair of non-negative integers (s, t) with s + t = lg . At least one of these two numbers has to be a gap. But there are lg + 1 such pairs, giving 2g ≥ lg + 1. Thus, in case of equality, we have a symmetry property: given any pair of non-negative integers (s, t) with s + t = lg , then exactly one of these two numbers is a non-gap and the other is a gap. Conversely, if the symmetry property holds, then lg = 2g − 1. Definition 4.3 We call a semigroup symmetric, if lg = 2g − 1. Remark 4.4 Let X be a curve defined over Fq of genus g. Let P be a rational point of X . Then the following statements are equivalent: 1) 2) 3) 4)
the semigroup of non-gaps at P is symmetric, 2g − 1 is a gap at P , (2g − 2)P is a cannonical divisor, X \ {P } is an affine ideal-theoretic complete intersection.
The equivalence of the first three conditions is immediate from the Remark 3.2 and the Theorem of Riemann-Roch. The equivalence of the third and fourth condition is proved for curves in affine three space and over an algebraically closed field by Murthy and Towber [25] using a result of Serre [34]. See also Herzog and Kunz [17] and Sathaye [33]. The restriction to three space was removed by the proof of Serre’s conjecture by Quillen and Suslin that every projective module over k[X1 , . . . Xn ] is free, where k is a field, as was also noted in a footnote of [25]. The restriction that the field is algebraically closed is removed by the fact that a closed variety in affine space over a field k is an ideal theorectic complete intersection over k if and only if it is an ideal theoretic complete intersection over the algebraic closure of k.
14
5
Semigroups with two generators and the minimum distance for the corresponding array of codes
In this section we consider semigroups generated by two elements. In fact these are always symmetric. Later we will consider telescopic semigroups, a more general class of semigroups which are also symmetric and behave in many respects as semigroups generated by two elements. Definition 5.1 Let A = {a1 , . . . , ak } be a subset of the non-negative integers. Suppose GCD(a1 , . . . , ak ) = 1. We say that the semigroup S is generated by A, if for any element P s ∈ S there exist x1 , . . . , xk ∈ N0 such that s = ki=1 xi ai . We write S = hAi. We call a set of generators {a1 , . . . , ak } such that a1 < · · · < ak minimal if for all j = 2, . . . k there P do not exist x1 , . . . , xj−1 ∈ N0 such that aj = j−1 i=1 xi ai . Remark 5.2 Every semigroup has a finite set of generators, every set of generators contains a minimal set of generators and a minimal set of generators is unique. Proposition 5.3 Let a, b ∈ N such that GCD(a, b) = 1. The semigroup generated by a and b is symmetric, has largest gap ab−a−b and the number of gaps is equal to (a−1)(b−1)/2. Proof : Every integer m has a unique representation m = xa + yb, where x and y are integers such that 0 ≤ y < a, since GCD(a, b) = 1. So every gap m has a unique representation m = xa + yb such that 0 ≤ y < a and x < 0, and every non-gap m has a unique representation m = xa + yb such that 0 ≤ y < a and x ≥ 0. First we compute the largest gap of the semigroup S = ha, bi. The numbers yb ∈ S, y = 0, 1, . . . , a − 1 cover all residue class mod(a), and yb − a is the largest element in the residue class yb without representation with non-negative integer coefficients. Thus we have for the largest gap lg = (a − 1)b − a. To see that ha, bi is symmetric, assume that s and t are both gaps and s + t = lg . Since we may write s = x1 a + y1 b,
t = x2 a + y2 b,
0 ≤ y1 , y2 < a and x1 , x2 < 0,
we get lg = ba − a − b = (x1 + x2 )a + (y1 + y2 )b ⇒ (−x1 − x2 − 1)a = (y1 + y2 − a + 1)b, where 0 ≤ y1 + y2 ≤ 2a − 2 and x1 + x2 ≤ −2. The left hand side of the last equation is strictly positive and the right hand side strictly smaller than ab, giving a contradiction, since GCD(a, b) = 1. Thus S is symmetric and lg = 2g − 1, so the number of gaps g is equal to (a − 1)(b − 1)/2. 2 15
Lemma 5.4 Suppose a and b are two postive integers which are coprime and such that a < b. Let S be a semigroup generated by a and b. Let M ∈ S with M < (a − 1)b. If Γ is the number of pairs (M1 , M2 ) such that M = M1 + M2 , where M1 , M2 ∈ S, then there is at least one gap in the interval [M − Γ, M ]. Proof: Since M < lg is a non-gap, we can find uniquely determined non-negative integers x and y, where y < a, such that M = xa + yb, and write M = xa + yb = (x1 a + y1 b) + (x2 a + y2 b) = M1 + M2 . The system x1 + x2 = x, y1 + y2 = y has exactly Γ = (x + 1)(y + 1) pairs (M1 , M2 ) of solutions, consisting of non-negative integers. These solutions are pairwise distinct since 0 ≤ y1 , y2 ≤ y < a. Let M − z be an element of [M − Γ, M ]. We write M − z = sz a + rz b,
0 ≤ rz < a for z = 0, 1, . . . , Γ.
If we can show that one of the sz < 0, then there is at least one gap in the interval [M − Γ, M ]. We consider two cases: (i) Γ < a. Here the rz , z = 0, 1, . . . , Γ are Γ + 1 distinct non-negative integers. Thus there is at least one rz ≥ Γ = (x + 1)(y + 1). For the corresponding sz we have sz a = M − z − rz b ≤ xa + yb − z − (x + 1)(y + 1)b ≤ x(a − b) − z − b < 0, since a < b. (ii) Γ ≥ a. Here we find rz = a − 1 among the numbers rz , z = 0, 1, . . . , Γ, since M − z ≡ brz (mod a) and GCD(a, b) = 1. For the corresponding sz we have sz a = M − z − rz b ≤ M − (a − 1)b < 0, since we assumed M < (a − 1)b. In both cases we have shown that one of the sz is negative. 2 We return to our original question and start studying the equation of Theorem 3.8 nr = ρr+1 + 1 − 2g + #D(ρr+1 ) = r + 1 − g + #D(ρr+1 ), which holds for r ≥ g or equivalently for ρr+1 > lg . Remember that #D(ρr+1 ) = #{(x, y) | x + y = ρr+1 , x and y gaps of S}. For r ≥ 3g − 1 we already showed nr = ρr+1 + 1 − 2g = r + 1 − g. 16
Theorem 5.5 Let the semigroup of non-gaps at P be generated by two elements. Let (ρi ) be the non-gap sequence at P . For an array of codes as in Example 3.3 with F = G = 0 we have: δF R (r) = min{ρt | ρt ≥ r + 1 − g} if g ≤ r ≤ 3g − 2. Proof: Suppose g ≤ r ≤ 3g − 2 or equivalently lg < ρr+1 ≤ 2lg . Here we may write ρr+1 = lg + κ, 1 ≤ κ ≤ lg . We consider two cases: (i) κ = ρt is a non-gap. Here lg + κ = x + y can be written as (lg − x) + ρt = y. Assuming x being a gap and the semigroup being symmetric, lg − x is a non-gap, and the sum of two non-gaps is of course again a non-gap. So y cannot be a gap and #D(ρr+1 ) is again zero. Thus nr = r + 1 − g = ρt also for these values. (ii) κ is a gap. Now there are non-gaps ρt and ρt−1 such that ρt > κ > ρt−1 and for ρR+1 = lg + ρt we have by the latter argument nR = ρR+1 + 1 − 2g = R + 1 − g = ρt . Now δr = min{ns | r ≤ s} ≤ ρt , since nR = ρt occurs in the set, and we cannot hope to do better. We now want to show that δr = nR for all r such that ρr+1 ∈ [lg + ρt−1 + 1, lg + ρt ], that is to say we want to show that nr ≥ nR or equivalently ρt − κ ≤ #D(ρr+1 ). The function #D(ρr+1 ) is defined by a condition on gaps. But for symmetric semigroups such a condition can be translated into a condition on non-gaps: ρr+1 = x + y, x and y gaps of S ⇔ 2lg − ρr+1 = (lg − x) + (lg − y), x and y gaps of S ⇔ lg − κ = x0 + y 0 , x0 and y 0 non-gaps of S, where x0 = lg − x and y 0 = lg − y. Let M = lg −κ. Then the number of elements of D(ρr+1 ) is equal to the number of pairs (M1 , M2 ) such that M1 + M2 = M and M1 , M2 ∈ S, which we denote by Γ. Remember that the numbers κ, κ + 1, . . . , ρt − 2, ρt − 1 are all gaps. So lg − ρt + 1, lg − ρt + 2, . . . , lg − κ − 1, lg − κ are all non-gaps. Thus M − Γ < lg − ρt + 1, by Lemma 5.4. So ρt − κ ≤ Γ = #D(ρr+1 ) and hence nr = κ + #D(ρr+1 ) ≥ ρt . Implying δr = ρt . 2 Remark 5.6 Let X be a plane curve defined by the equation A(Y ) = B(X), where A(Y ) is a separable additive polynomial in Y of degree pk a power of the characteristic p and B(X) is a polynomial of degree m, coprime to p. Let P be the point at infinity. Then the the non-gap sequence of P is generated by pk and m. Johnsen, Manshadi and Monzavi 17
[19] proved that the sequence of codes Cr on the plane curve X have minimum distance δF R (r) = min{ρt | ρt ≥ r + 1 − g} if g ≤ r ≤ 3g − 2. It was this formulation which inspired us to generalize this result to a larger class of codes using only the properties of the semigroup of non-gaps of the point P and resulted in the above Theorem 5.5 and Theorem 6.10 below. Theorem 5.7 Let the semigroup of non-gaps at P be generated by a and b such that b > a and GCD(a, b) = 1. Let (ρi ) be the non-gap sequence at P . For an array of codes as in Example 3.3 with F = G = 0 we have: δF R (r) = j + 1,
if r < g and (j − 1)b < ρr+1 ≤ jb.
Proof: We can write ρr+1 = xa + yb for non-negative integers x and y such that y < a. In the proof of Lemma 5.4 we have already seen that if ρr+1 < lg , corresponding to r < g, then nr = (x + 1)(y + 1). If moreover ρr+1 = jb, then x = 0 and y = j, so nr = j + 1. Now assume (j − 1)b < ρr+1 = xa + yb < jb, with strict inequality on both sides, thus 0 ≤ y ≤ j − 1. Then !
nr = (x + 1)(y + 1) >
(j − 1 − y)b + 1 (y + 1) ≥ (j − 1 − y) + (y + 1) = j, a
Thus δF R (r) = min{ns |r ≤ s} = j + 1. 2 To explain the improvement on the designed minimum distance δΓ by Theorem 5.5 and Theorem 5.7, we consider the following example. Example 5.8 Consider the Hermitian curve X 5 − Y 4 − Y = 0 over F16 of genus 6, see also Example 7.4. It has 64 rational points in the affine plane and exactly one rational point P at infinity. The non-gap sequence at P is generated by 4 and 5, and the largest gap is 11. Below we give a table with the rows: r, the rth non-gap ρr , δΓ (r) = r + 1 − 6, nr = #{(i, j) | ρi + ρj = ρr+1 } and δF R (r)=min{ns | r ≤ s}. At those entries where δF R (r) is greater than δΓ (r) we used bolface. r 1 2 3 ρr 0 4 5 δΓ (r) - - nr 2 2 3 δF R (r) 2 2 3
6
4 5 6 7 8 9 10 11 12 13 14 15 16 8 9 10 12 13 14 15 16 17 18 19 20 21 - 0 1 2 3 4 5 6 7 8 9 10 11 4 3 4 6 6 4 5 8 9 8 9 10 12 3 3 4 4 4 4 5 8 8 8 9 10 12
17 22 12 12 12
Telescopic semigroups and the minimum distance for the corresponding array of codes
We now show results similar to Theorem 5.5 and Theorem 5.7 for telescopic semigroups to be defined below. 18
Definition 6.1 Let (a1 , . . . , ak ) be a sequence of positive integers such that the greatest common divisor is 1. Define di = GCD(a1 , . . . , ai ) and Ai = {a1 /di , . . . ai /di } for i = 1, . . . , k. Let d0 = 0. Let Si be the semigroup generated by Ai . If ai /di ∈ Si−1 for i = 2, . . . , k, we call the sequence (a1 , . . . , ak ) telescopic. We call a semigroup telescopic if it is generated by a telescopic sequence. Remark 6.2 If (a1 , . . . , ak ) is telescopic, then GCD(a1 /di , . . . , ai /di ) = 1 and the sequence (a1 /di , . . . , ai /di ) is telescopic for i = 2, . . . , k. If di = 1 for a telescopic sequence (a1 , . . . , ak ), then (a1 , . . . , ai ) is also telescopic and generates the same semigroup. Example 6.3 Semigroups generated by two elements are telescopic. The sequence (4, 6, 5) is telescopic, since d2 = 2 and 5 is an element of the semigroup generated by 4/2 and 6/2. The sequence (4, 5, 6) is not telescopic. Lemma 6.4 If (a1 , . . . , ak ) is telescopic and M ∈ Sk , then there exist uniquely determined non-negative integers 0 ≤ xi < di−1 /di for i = 2, . . . , k, such that M=
k X
x i ai .
i=1
We call this representation the normal representation of M by (a1 , . . . , ak ). Proof: The proof is by induction on the number k of entries in the sequence. For k = 1 there is nothing to prove. For k = 2 the lemma says: if GCD(a1 , a2 ) = 1, then every M ∈ S2 can be written uniquely as M = x2 a2 + x1 a1 , 0 ≤ x2 < a1 . In fact we already used this property earlier in the proof of Proposition 5.3. Now suppose the lemma is proven for all telescopic sequences with k − 1 entries and look at M ∈ Sk . There exist xk ∈ N0 and u ∈ Sk−1 such that M = xk ak +dk−1 u, since Sk = hak i+dk−1 Sk−1 . We write xk = wdk−1 +v, 0 ≤ v < dk−1 and get M = vak + dk−1 (u + wak ). Now ak ∈ Sk−1 and thus u + wak ∈ Sk−1 . Remember that also (a1 /dk−1 , . . . , ak−1 /dk−1 ) is telescopic by the Remark 6.2 above and thus u + wak has a normal representation by (a1 /dk−1 , . . . , ak−1 /dk−1 ). For the uniqueness assume M has two normal representations ki=1 xi ai = M = Pk xi , yi < di−1 /di for i = 2, . . . , k. Let l be the largest index for i=1 yi ai , where 0 ≤ P P P which xi 6= yi . Then li=1 xi ai = li=1 yi ai and (xl − yl )al = l−1 i=1 (yi − xi )ai . Thus the right hand side is a multiple of dl−1 and GCD(al /dl , dl−1 /dl ) = 1, so xl − yl is a non-zero multiple of dl−1 /dl which gives a contradiction. 2 P
Lemma 6.5 For the semigroup generated by the telescopic sequence (a1 , . . . , ak ) we have lg (Sk ) = dk−1 lg (Sk−1 ) + (dk−1 − 1)ak =
k X
(di−1 /di − 1)ai ,
i=1
g(Sk ) = dk−1 g(Sk−1 ) + (dk−1 − 1)(ak − 1)/2 = (lg (Sk ) + 1)/2. Thus telescopic semigroups are symmetric. Here we put d0 = 0. 19
Proof: Since GCD(ak , dk−1 ) = 1 every integer m ∈ N0 can be uniquely represented as m = vak + dk−1 w, 0 ≤ v < dk−1 . Here w may be negative. So by Lemma 6.4 the gaps of Sk are exactly the numbers m, where the corresponding w is either a gap of Sk−1 or w is negative. Thus the first equation, involving lg , follows immediately, and for the second we, proceed by induction. For every value of 0 ≤ v < dk−1 we get g(Sk−1 ) gaps of Sk from those of Sk−1 . In addition we get the gaps of the form m = vak + dk−1 w, where w < 0. But these are exactly the gaps of the semigroup < ak , dk−1 >, the number of which we know to be (dk−1 − 1)(ak − 1)/2, by Proposition 5.3. Thus the total number of gaps is equal to dk−1 g(Sk−1 ) + (dk−1 − 1)(ak − 1)/2. The remaining result on the symmetry follows now by induction. 2 Example 6.6 Consider for g ≥ 3 the semigroup S(g) generated by: g, g + 1, g + 2, . . . , 2g − 2. Then it is clear that 1, 2, . . . , g − 1 and 2g − 1 are the gaps of S(g). Thus S(g) has g gaps and the largest gap is 2g − 1, so S(g) is symmetric. S(3) is generated by 3 and 4 and therefore telescopic. S(4) is the semigroup generated by 4, 5 and 6, which is telescopic, as we have seen in Example 6.3. Now suppose g ≥ 5. Then g, g + 1, g + 2, . . . , 2g − 2 is a minimal set of generators of S(g). If S(g) is telescopic, then it can be generated by a telescopic sequence (a1 , . . . , ak ). We may assume that di > 1 for all 2 ≤ i < k, by Remark 6.2. Then {a1 , . . . , ak } contains a minimal set of generators for S(g), so it contains {g, g + 1, g + 2, . . . , 2g − 2}, by Remark 5.2. We assumed that g ≥ 5, so a1 , . . . ag−2 has at least two consecutive elements, and these are coprime, so dg−2 = 1, which is a contradiction. Thus we have shown that S(g) is not telescopic for all g ≥ 5. So symmetric sequences need not be telescopic. Remark 6.7 The above results in this section are not new and date back to Brauer and Shockley [1], Herzog [16], Nijenhuis and Wilf [26], Bertin and Carbonne [2, 3], and Rødseth [31]. Semigroups with the property mentioned in Lemma 6.4 are called free semigroups (semi-groupe libre) in [2, 3]. In these papers one can find the proof of the fact that a sequence is telescopic if and only it is free if and only if the fomula for the largest gap in Lemma 6.5 holds. Lemma 6.8 Let (a1 , a2 , . . . , ak ) be a telescopic sequence and M = ki=1 xi ai the normal representation of M ∈ Sk . Then the number of pairs (M1 , M2 ) such that P
M = M1 + M2 , is at least Γ =
Qk
i=1 (xi
M1 , M2 ∈ Sk .
+ 1).
Proof: Let the normal representation of M, M1 and M2 be M = ki=1 xi ai , M1 = Pk i=1 ξi ai and M2 = i=1 ηi ai , respectively. Suppose M = M1 + M2 . The equation P
Pk
20
ξi + ηi = xi has exactly xi + 1 non-negative integer solutions. Thus the system ξi + ηi = xi for i = 1, 2, . . . , k has Γ = Πki=1 (xi + 1) distinct solutions since all of them belong to normal representations, 0 ≤ ξi , ηi ≤ xi < di−1 /di . 2 Now one would expect a result like Theorem 5.5 for telescopic semigroups. In Theorem 5.5 the improvement is valid for g ≤ r ≤ 3g − 2 or equivalently lg < ρr+1 ≤ 2lg . Here, in the telescopic case, we can show the result only for 2lg − (dk−1 − 1)ak < ρr+1 ≤ 2lg , thus - in a sense - a weaker result, since lg = lg (Ak ) = dk−1 lg (Ak−1 ) + (dk−1 − 1)ak . Lemma 6.9 Let (a1 , a2 , . . . , ak ) be a telescopic sequence. Suppose ak = max(Ak ). If M ∈ Sk and M < (dk−1 − 1)ak , then there will be at least one gap in the interval [M − Γ, M ], P Q where Γ = ki=1 (xi + 1) and M = ki=1 xi ai is the normal representation of M ∈ Sk . Proof: Let a = dk−1 and b = ak . Let M = ki=1 xi ai be the normal representation of Q M ∈ Sk and Γ = ki=1 (xi +1). We proceed as in the proof of Lemma 5.4. The corresponding inequality for sz in case Γ < a is now P
sz a = M − z − rz ak =
k X i=1
x i ai − z −
k Y
(xi + 1)ak ≤
k X
xi (ai − ak ) − z − ak < 0.
i=1
i=1
since ai ≤ ak for all i. The second case Γ ≥ a is treated the same as in the proof of Lemma 5.4. 2 Again translating the lemma back to the language of non-gaps of a rational point on a curve we get the following theorem. Theorem 6.10 Let the semigroup of non-gaps at P be generated by the telescopic sequence (a1 , . . . , ak ). Suppose ak = max(Ak ) and dk−1 = GCD(a1 , . . . , ak−1 ) > 1. Let (ρi ) be the non-gap sequence at P . For an array of codes as in Example 3.3 with F = G = 0 we have: δF R (r) = min{ρt | ρt ≥ r + 1 − g} if 3g − 2 − (dk−1 − 1)ak < r ≤ 3g − 2 and g ≤ r. Theorem 6.11 Let the semigroup of non-gaps at P be generated by the telescopic sequence (a1 , . . . , ak ). Suppose ak = max(Ak ). If (j − 1)ak < ρr+1 ≤ jak ≤ (dk−1 − 1)ak , then δF R (r) = j + 1. Proof: Lemma 6.8 gives us a lower bound ki=1 (xi + 1) ≤ nr , when ρr+1 = ki=1 xi ai is the normal representation of the non-gap ρr+1 . If ρr+1 is of the form jak , j < dk−1 , we even have equality and we may mimic the proof of Theorem 5.7 by putting dk−1 = a and ak = b. 2 Q
P
Thus only the interval ρr+1 ∈ [(dk−1 − 1)ak + 1, 3g − 2 − (dk−1 − 1)ak ] having length 2dk−1 lg (Sk−1 ) is not covered by Theorem 6.10 and Theorem 6.11. 21
7
Examples
Example 7.1 Consider the semigroup S = h2a, 2a + 1, 2a + 2i. The sequence (2a, 2a + 2, 2a + 1) is telescopic, since d2 = 2, A2 = {a, a + 1}, and a3 = 2a + 1 = a + (a + 1) ∈ S2 . Thus S is telescopic but a3 6= max(A3 ). Nevertheless the first inequality in the proof of Lemma 6.9 holds since 3 X
xi (ai − a3 ) − z − a3 ≤ x2 − a3 < 0.
i=1
Otherwise we would get x2 ≥ a3 implying (d2 − 1)a3 = a3 > M ≥ a3 · a2 , a contradiction. Thus Theorem 6.10 applies nevertheless for M < (d2 − 1)a3 = a3 = 2a + 1. On the other hand this example shows that we cannot do better than Theorem 6.10 in general. The non-gap sequence of S is very easy to overlook. For 1 ≤ h < a we get the following disjoint ”blocks” of consecutive non-gaps: [2ha, 2ha + 1, 2ha + 2, . . . , 2ha + 2h]. The distance of the last element h(2a+2) in this block to the nearest lower gap is 2h+1, but the number of representations 2ha+2h = M1 +M2 , where M1 , M2 ∈ S is exactly Γ = h+1, corresponding to the h + 1 different ways of writing h(2a + 2) = i(2a + 2) + (h − i)(2a + 2). Any other solution would include 2a + 1 or 2a, giving rise to the following representation with non-negative coefficients h(2a + 2) = x(2a) + y(2a + 1) + z(2a + 2). This implies y + 2x ≡ 0 mod (2a + 2), thus y + 2x ≥ 2a + 2 and h(2a + 2) ≥ a(2a + 2), a contradiction to h < a. Thus already for M = 2a + 2, corresponding to h = 1, Theorem 6.10 fails. Now the difference #D(ρr+1 ) − (ρt − κ) equals (h + 1) − (2h + 1) = −h and can get as negative as we want. This illustrates the limitations of Theorem 6.10. Example 7.2 Hansen and Stichtenoth [15], in even characteristic, and Pedersen and Sørensen [27], for arbitrary q, consider the function field F = Fq (x1 , x2 ) over Fq defined by the equation h(x1 , x2 ) = xq2 − x2 − xq10 (xq1 − x1 ) = 0. √ Here q is a prime power and q02 is a divisor of q, 1 ≤ q0 < q. Let P∞ be the place at infinity and D = P1 + P2 + · · · + Pq2 the divisor consisting of the remaining q 2 places of degree one on the curve. Consider the geometric Goppa codes CL (D, mP∞ ). Pedersen and Sørensen showed that the corresponding semigroup S is generated by {a1 , a2 , a3 , a4 }, where (a1 , a2 , a3 , a4 ) = (q, q +
q q2 q , q + q0 , 2 − q + + 1). q0 q0 q0
It is easy to see that S is telescopic, see also Kirfel [20]. And since q/q02 ≥ 2 we have a4 =
q2 q − q + + 1 = max (A4 ), 2 q0 q0 22
thus Theorem 6.10 applies. Here the improvement on the Goppa designed minimum distance is valid for 3g − 2 − (q0 − 1)a4 < r ≤ 3g − 2. We have g = g(S4 ) = q(q − 1)/(2q0 ) and lg (S3 ) = q 2 /q03 + q − 2q/q0 − 1. For q 6= 2q02 and q0 > 2 we have q0 lg (S3 ) < (q0 − 1)a4 . Thus the major part of the interval [g, 3g − 2], having length lg = q0 lg (S3 ) + (q0 − 1)a4 , is covered by Theorem 6.10. The codes considered here are the duals of the codes studied in [27]. In order to translate our results to the codes from [27] we must use the formula Cr⊥ = Cq2 +2g−2−r . Example 7.3 Consider the points on the projective curve in the projective space Pl over Fq defined by the set of equations xq+1 − x2i xq−1 = xqi+1 x0 − xi+1 xq0 0 i
for i = 1, 2, . . . l − 1.
Here q is as usual a prime power. The minimal generator set of the corresponding semigroup is equal to {a1 , . . . al }, see [30], where (a1 , . . . , al ) = ((q + 1)l−1 , (q + 1)l−2 q, . . . , (q + 1)q l−2 , q l−1 ). This sequence is telescopic and al = (q +1)l−1 = max(Al ), hence Theorem 6.10 applies here too, and the improvement on the minimum distance is valid for 3g − 2 − (dl−1 − 1)al < r ≤ 3g − 2. This interval contains (q − 1)(q + 1)l−1 numbers, whilst lg = (q − 1)(q + 1)l − q l+1 . Thus about 1/(l − 1) of the interval [g, 3g − 2] is covered by Theorem 6.10. Example 7.4 Hermitian codes have been studied extensively and the true minimum distance was determined by Kumar and Yang in [21]. These results were proved for a larger class of codes on curves by Johnsen, Manshadi and Monzavi [19] and Miura and Kamiya [23, 24]. Let F = Fq2 (x, y) be the function field defined by the equation y q + y = xq+1 over Fq2 . There are q 3 + 1 places of degree one on F . Let Q be the common pole of x and y and consider the codes Cm = CL (D, mQ), where D = P1 + P2 + · · · + Pq3 is the divisor consisting of the remaining q 3 places of degree one. The corresponding semigroup is generated by A2 = {q, q + 1}, thus g = (q 2 − q)/2. For ρr = aq + b, 0 ≤ b ≤ a ≤ q − 2, corresponding to r < g, we have ρr+1 = aq + b + 1 if a 6= b and ρr+1 = (a + 1)q if a = b. This gives (a − 1)(q + 1) < ρr+1 < a(q + 1) in the first, and a(q + 1) < ρr+1 < (a + 1)(q + 1) in the second case. By Theorem 5.7 this implies d(Cr ) ≥ a + 1 and d(Cr ) ≥ a + 2, respectively. For g ≤ r ≤ 3g − 2 we put ρr = 2lg − (a − 1)q − b = m⊥ . Now following Theorem 5.5 we look for min{ρt | ρt ≥ r + 1 − g}, which is equal to min{ρt | ρt ≥ (q − a − 1)q + (q − b)}. If a < b, then this minimum is (q − a)q − b, and this is a lower bound for d(Cr ). If a ≥ b, 23
then this minimum is (q − a)q, and d(Cr ) ≥ (q − a)q. These lower bounds correspond exactly to the results on the minimum distance for the Hermitian codes given in [19, 21, 23, 24] for ρr+1 ∈ [0, 2lg ] and show that the FR bound is sharp. The bound for the generalized weights given by Theorem 2.8 are tight for Hermitian codes. This can be seen by comparing this bound with the results of Yang, Kumar and Stichtenoth [38]. Remark 7.5 From the above example one might get the wrong impression that the FR bound is always equal to the true minimum distance. This is not the case. This bound is defined in terms of the rational point P only and holds for every choice of the points P1 , . . . , Pn . In many cases one can choose these n points in a particular way such that the true minimum distance is striclty larger than the FR bound. Take for instance a hyperelliptic curve with equation Y 2 = F (X), where F (X) has odd degree f and has no square divisors. The genus of this curve is equal to (f − 1)/2, the largest gap of the point P at infinity is f − 2 and the non-gap sequence at P is: 0, 2, . . . , f − 3, f − 1, f, f + 1, f + 2, . . . If r = (f + 1)/2, then ρr+1 = f and the only two ways to write f as the sum of two non-gaps are: f = f + 0 and f = 0 + f , since f is odd and all smaller non-gaps are even, so nr+1 = 2. Thus the FR bound gives δF R (r) = 2 for all r ≤ (f + 1)/2, and this is the true minimum distance if xi = xj for some i < j. But if the n points Pi = (xi , yi ), 1 ≤ i ≤ n are distinct, and also the xi are mutually distinct, then the dual of Cr is a Reed-Solomon code of dimension r, so Cr has parameters [n, n − r, r + 1].
References [1] A. Brauer and J.E. Shockley, ”On a problem of Frobenius,” Journ. reine angew. Math., vol. 211, pp. 215-220, 1962. [2] J. Bertin and P. Carbonne, ”Sur la structure des semi-groupes d’entiers et application aux branches,” C.R. Acad. Sc. Paris, S´erie A, vol. 280, pp. 1745-1748, 1975. [3] J. Bertin and P. Carbonne, ”Semi-groupes d’entiers et application aux branches,” Journ. Algebra, vol. 49, pp. 81-95, 1977. [4] I.M. Duursma, ”Majority coset decoding,” IEEE Trans. Inform. Theory, vol. IT-39, 1067-1071, May 1993. [5] I.M. Duursma, ”Decoding codes from curves and cyclic codes,” Ph.D. thesis, Eindhoven Univ. Technology, Sept. 1993. 24
[6] G.-L. Feng and T.R.N. Rao, ”Decoding of algebraic geometric codes up to the designed minimum distance,” IEEE Trans. Inform. Theory, vol. IT-39, pp. 37-46, Jan. 1993. [7] G.-L. Feng and T.R.N. Rao, ”A simple approach for construction of algebraicgeometric codes from affine plane curves,” IEEE Trans. Inform. Theory, vol. IT-40, pp. 1003-1012, July. 1994. [8] G.-L. Feng and K.K. Tzeng, ”A new procedure for decoding cyclic and BCH codes up to actual minimum distance,” IEEE Trans. Inform. Theory, vol. IT-40, pp. 1364-1374, Sept. 1994. [9] G.-L. Feng, V.K. Wei, T.R.N. Rao and K.K. Tzeng, Simplified understanding and efficient decoding of a class of algebraic-geometric codes, IEEE Trans. Inform. Theory, vol. IT-40, pp. 981-1002, July. 1994. [10] A. Garcia and R. Lax, ”Goppa codes and Weierstrass gaps,” in Coding Theory and Algebraic Geometry, Proceedings, Luminy 1991, edited by H. Stichtenoth and M.A. Tsfasman, Springer Lect. Notes Math., vol. 1518, pp. 33-42, 1992. [11] A. Garcia, S.J. Kim and R.F. Lax, ”Consecutive Weierstrass gaps and minimum distance of Goppa codes,” Journ. Pure and Applied Algebra, vol. 84, pp. 199-207, 1993. [12] V.D. Goppa, ”Codes associated with divisors,” Probl. Peredachi Inform., vol. 13 (1), pp. 33-39, 1977. Translation: Probl. Inform. Transmission vol. 13, pp. 22-26, 1977. [13] V.D. Goppa, ”Algebraico-geometric codes,” Izv. Akad. Nauk SSSR, vol. 46, 1982. Translation: Math. USSR Izvestija, vol. 21, pp. 75-91, 1983. [14] V.D. Goppa, Geometry and codes, Mathematics and its Applications, vol. 24, Kluwer Acad. Publ., Dordrecht, 1989. [15] J.P. Hansen and H. Stichtenoth, ”Groupcodes on certain algebraic curves with many rational points,” AAECC, vol. 1, pp. 67-77, 1990. [16] J. Herzog, ”Generators and relations of abelian semigroups and semigroup rings,” Manuscripta Math., vol. 3, pp. 175-193, 1970. [17] J. Herzog and E. Kunz, ”Die Wertehalbegruppe eines lokalen Rings der Dimension 1,” Sitzber. Heidelberger Akad. Wissenschaften, vol. 2, pp. 27-67, 1971. [18] M. Homma, ”Funny plane curves in characteristic p > 0,” Communications in Alg., vol. 15, pp. 1469-1501, 1987. [19] T. Johnsen, S. Manshadi and N. Monzavi, ”A determination of the parameters of a large class of Goppa codes,” IEEE Trans. Inform. Theory, vol. IT-40, pp. 1678-1681, Sept. 1994. 25
[20] C. Kirfel, ”On the Clifford defect for special curves,” to appear in Arithmetic, Geometry and Coding Theory 4, Proceedings, Luminy 1993, edited by R. Pellikaan, M. Perret and S.G. Vl˘adut¸, Walter de Gruyter & Co., Berlin 1995. [21] P.V. Kumar and K. Yang, ”On the true minimum distance of Hermitian codes,” in Coding Theory and Algebraic Geometry, Proceedings, Luminy 1991, edited by H. Stichtenoth and M.A. Tsfasman, Springer Lect. Notes Math., vol. 1518, pp. 99-107, 1992. [22] N. Lausten, ”Design og Afkodning af Algebraiske Geometrikoder,” Master’s Thesis, Technical Univ. of Denmark, Kopenhagen, March 1993. [23] S. Miura and N. Kamiya, ”On the minimum distance of codes from some maximal curves,” (in Japanese) Technical Reports on IEICE, vol. IT92-147, March 1993. [24] S. Miura and N. Kamiya, ”Geometric-Goppa codes on some maximal curves and their minimum distance,” Proceedings 1993 IEEE Information Theory Workshop, pp. 85-86. [25] M.P. Murthy and J. Towber, ”Algebraic vector bundles over A3 are trivial,” Invent. Math., vol. 24, pp. 173-189, 1974. [26] A. Nijenhuis and H.S. Wilf, ”Representations of integers by linear forms in nonnegative integers,” Journ. Number Theory, vol. 4, pp. 98-106, 1972. [27] J.P. Pedersen and A.B. Sørensen, ”Codes fom certain algebraic function fields with many rational places,” Mat-Report No. 1990-11, Danmarks Tekniske Højskole, ISSN 0904-7611. [28] R. Pellikaan, ”On the decoding by error location and the number of dependent error positions,” Discrete Math., vol. 106/107, pp. 369-381, 1992. [29] R. Pellikaan, ”On the efficient decoding of algebraic-geometric codes,” Eurocode 92, edited by P.Camion, P. Charpin and S. Harari, Udine, CISM Courses and Lectures, vol. 339, pp. 231-253, Springer-Verlag, Wien-New York 1993. [30] R. Pellikaan, B.-Z. Shen and G.J.M. van Wee, ”Which linear codes are algebraic geometric ?,” IEEE Trans. Inform. Theory, vol. IT-37, pp. 583-602, May 1991. [31] Ø.J. Rødseth, ”On a linear diophantine problem of Frobenius,” Journ. reine angew. Math., vol. 301, pp. 171-178, 1978. [32] S. Sakata, J. Justesen, Y. Madelung, H. Elbrønd Jensen and T. Høholdt, ”A fast decoding method of AG codes from Miura-Kamiya curves Cab up to half the FengRao bound,” Finite Fields and their Applications, vol. 11, pp. 83-101, 1995. [33] A. Sathaye, ”On planar curves,” Amer. Journ. of Math., vol. 99, pp. 1105-1135, 1977.
26
[34] J.-P. Serre, ”Sur les modules projectifs,” S´eminaire Dubreil-Pisot 1960/61, No 2. [35] H. Stichtenoth, Algebraic function fields and codes, Universitext, Springer-Verlag, Berlin 1993. [36] M.A. Tsfasman and S.G. Vl˘adut¸, Algebraic-geometric codes, Mathematics and its Applications, vol. 58, Kluwer Acad. Publ., Dordrecht 1991. [37] V.K. Wei, ”Generalized Hamming weights for linear codes,” IEEE Trans. Inform. Theory, vol. IT-37, pp. 1412-1418, Sept. 1991. [38] K. Yang, P.V. Kumar and H. Stichtenoth, ”On the weight hierarchy of geometric Goppa codes,” IEEE Trans. Inform. Theory, vol. IT-40, pp. 913-920, May 1994.
27