Multi-point Codes from the GGS Curves

This paper is concerned with the construction of algebraic geometric codes defined from GGS curves. It is of significant use to describe bases for the Riemann-Roch spaces associated with totally ramified places, which enables us to study multi-point AG codes. Along this line, we characterize explicitly the Weierstrass semigroups and pure gaps. Additionally, we determine the floor of a certain type of divisor and investigate the properties of AG codes from GGS curves. Finally, we apply these results to find multi-point codes with excellent parameters. As one of the examples, a presented code with parameters $ [216,190,\geqslant 18] $ over $ \mathbb{F}_{64} $ yields a new record.


Introduction
In the early 1980s, Goppa [12] constructed algebraic geometric codes (AG codes for short) from algebraic curves.Since then, the study of AG codes becomes an important instrument in the theory of error-correcting codes.Roughly speaking, the parameters of an AG code are good when the underlying curve has many rational points with respect to its genus.For this reason maximal curves, that is curves attaining the Hasse-Weil upper bound, have been widely investigated in the literature: for example the Hermitian curve and its quotients, the Suzuki curve, the Klein quartic and the GK curve.In this work we will study multi-point AG codes on the GGS curves.
In order to construct good AG codes we need to study Weierstrass semigroups and pure gaps.Their use dates back to the theory of one-point codes.For example, the authors in [26,14,28,29] examined one-point codes from Hermitian curves and develop efficient methods to decode them.Korchmáros and Nagy [19] computed the Weierstrass semigroup of a degree-three closed point of the Hermitian curve.Matthews [24] determined the Weierstrass semigroup of any r-tuple rational points on the quotient of the Hermitian curve.As is known, Weierstrass pure gap is also a useful tool in coding theory.Garcia, Kim and Lax improved the Goppa bound using arithmetical structure of the Weierstrass gaps at one place in [9,10].The concept of pure gaps of a pair of points on a curve was initiated by Homma and Kim [15], and it had been pushed forward by Carvalho and Torres [4] to several points.Maharaj and Matthews [21] extended this construction by introducing the notion of the floor of a divisor and obtained improved bounds on the parameters of AG codes.
We mention that Maharaj [20] showed that Riemann-Roch spaces of divisors from fiber products of Kummer covers of the projective line, can be decomposed as a direct sum of Riemann-Roch spaces of divisors of the projective line.Maharaj, Matthewsa and Pirsic [22] determined explicit bases for large classes of Riemann-Roch spaces of the Hermitian function field.Along this research line, Hu and Yang [16] gave other explicit bases for Riemann-Roch spaces of divisors over Kummer extensions, which makes it convenient to determine the pure gaps.
In this work, we focus our attention on the GGS curves, which are maximal curves constructed by Garcia, Güneri and Stichtenoth [8] over F q 2n defined by the equations where q is a prime power and m = (q n + 1)/(q + 1) with n > 1 to be an odd integer.Obviously the GGS curve is a generalization of the GK curve initiated by Giulietti and Korchmáros [11] where we take n = 3. Recall that Fanali and Giulietti [7] have investigated one-point AG codes over the GK curves and obtained linear codes with better parameters with respect to those known previously.Two-point and multi-point AG codes on the GK maximal curves have been studied in [6] and [3], respectively.Bartoli, Montanucci and Zini [2] examined one-point AG codes from the GGS curves.Inspired by the above work and [16,5], here we will examine multi-point AG codes arising from GGS curves.To be precise, an explicit basis for the corresponding Riemann-Roch space is determined by constructing a related set of lattice points.The properties of AG codes from GGS curves are also considered.Then the basis is utilized to characterize the Weierstrass semigroups and pure gaps with respect to several totally ramified places.In addition, we give an effective algorithm to compute the floor of divisors.Finally, our results will lead us to find new codes with better parameters in comparison with the existing codes in MinT's Tables [25].A new record-giving [216,190,18]-code over F 64 is presented as one of the examples.
The remainder of the paper is organized as follows.Section 2 focuses on the construction of bases for the Riemann-Roch space from GGS curves.Section 3 studies the properties of the related AG codes.In Section 4 we determine the Weierstrass semigroups and the pure gaps.Section 5 devotes to the floor of divisors from GGS curves.Finally, in Section 6 we employ the results in the previous sections to construct multi-point codes with excellent parameters.
2 Bases for Riemann-Roch spaces from GGS curves Throughout this paper, we always let q be a prime power and n > 1 be an odd integer.The GGS curve GGS(q, n) over F q 2n is defined by the equations where m = (q n +1)/(q +1).The genus of GGS(q, n) is (q −1)(q n+1 +q n −q 2 )/2 and there are q 2n+2 − q n+3 + q n+2 + 1 rational places, see [8] for more details.
Especially when n = 3, the equation ( 1) gives the well-known maximal curve introduced by Giulietti and Korchmáros [11], the so-called GK curve, which is not a subcover of the corresponding Hermitian curve.Denote by P α,β,γ the rational place of this curve except for the one centered at infinity P ∞ .Take Q β := α q +α=β q+1 P α,β,0 where β ∈ F q 2 .Then deg(Q β ) = q.For later use, we write P 0 := P 0,0,0 and Q 0 : The following proposition describes some principle divisors from GGS curves.
Proposition 1 Let the curve GGS(q, n) be given in (1) and assume that α µ with 0 µ < q are the solutions of x q + x = 0. Then we obtain For convenience, we use For a function field F , the Riemann-Roch vector space with respect to a divisor G is defined by Let ℓ(G) be the dimension of L(G).From the famous Riemann-Roch Theorem, we know that where W is a canonical divisor and g is the genus of the associated curve.In this section, we consider a divisor G := q−1 µ=0 r µ P µ + q 2 −1 ν=1 s ν Q ν + tP ∞ from the GGS curve GGS(q, n).Actually, we can show that the Riemann-Roch space L(G) is generated by some elements, say E i,j,k for some i, j, k, and the number of such elements equals ℓ(G).To see this, we proceed as follows.
Let j = (j 1 , j 2 , • • • , j q−1 ) and k = (k 1 , k 2 , • • • , k q 2 −1 ).For (i, j, k) ∈ Z q 2 +q−1 , we define (2) Here and thereafter, we denote |v| to be the sum of all the coordinates of a given vector v.By Proposition 1, one can compute the divisor of E i,j,k : For later use, we denote by ⌊x⌋ the largest integer not greater than x and by ⌈x⌉ the smallest integer not less than x.It is easy to show that j = α β if and only if 0 βj − α < β, where β ∈ N and α ∈ Z.Put r = (r 0 , r 1 , • • • , r q−1 ) and s = (s 1 , s 2 , • • • , s q 2 −1 ).Let us define a set of lattice points for (r, s, t) ∈ Z q 2 +q , Ω r,s,t := (i, j, k) i + r 0 0, The following lemma is crucial for the proof of our key result.However, the proof of this lemma is technical, and will be completed later.

Lemma 1
The number of lattice points in Ω r,s,t can be expressed as: #Ω r,s,t = 1 − g + t + |r| + q|s|, for t 2g − 1 − q 3 w, where w = min 0 µ q−1 Now we can easily prove the main result of this section.
The elements E i,j,k with (i, j, k) ∈ Ω r,s,t constitute a basis for the Riemann-Roch space L(G).In particular ℓ(G) = #Ω r,s,t .
Proof Let (i, j, k) ∈ Ω r,s,t .It follows from the definition that E i,j,k ∈ L(G), where G = q−1 µ=0 r µ P µ + 3), we have v P0 (E i,j,k ) = i, which indicates that the valuation of E i,j,k at the rational place P 0 uniquely depends on i.Since lattice points in Ω r,s,t provide distinct values of i, the elements E i,j,k are linearly independent of each other, with (i, j, k) ∈ Ω r,s,t .In order to indicate that they constitute a basis for L(G), the only thing is to prove that For the case of r 0 sufficiently large, it follows from the Riemann-Roch Theorem and Lemma 1 that This implies that L(G) is spanned by elements E i,j,k with (i, j, k) in the set Ω r,s,t .
For the general case, we choose r ′ 0 > r 0 large enough and set . From above argument, we know that the elements E i,j,k with (i, j, k) ∈ Ω r ′ ,s,t span the whole space of L(G ′ ).Remember that L(G) is a linear subspace of L(G ′ ), which can be written as −r 0 gives that, if a i = 0, then i −r 0 .Equivalently, if i < −r 0 , then a i = 0. From the definition of Ω r,s,t and Ω r ′ ,s,t , we get that Then the theorem follows.
⊓ ⊔ We now turn to prove Lemma 1 which requires a series of results listed as follows.
Definition 1 Let (a 1 , • • • , a k ) be a sequence of positive integers such that the greatest common divisor is 1.Define Lemma 2 (Lemma 6.4, [18]) We call this representation the normal representation of M .Lemma 3 (Lemma 6.5, [18]) For the semigroup generated by the telescopic sequence (a 1 , • • • , a k ) we have where l g (S k ) and g(S k ) denote the largest gap and the number of gaps of S k , respectively.

⊓ ⊔
From Lemma 4, we get the number of lattice points in Ω 0,0,t .
Here and thereafter, the notation A ∼ = B means that two lattice point sets A, B are bijective.Thus the assertion #Ω 0,0,t = 1 − g + t is derived from Lemma 4.
A straightforward computation shows So the last inequality in ∆ always holds for all t 2g − 1, which means that the cardinality of ∆ is determined by the first inequality, that is #∆ = r 0 .

⊓ ⊔
With the above preparations, we are now in a position to give the proof of Lemma 1.
Proof It suffices to prove that the set In fact, for fixed (u, λ, γ) ∈ Z q 2 +q−1 , we obtain Λ u,λ,γ equals E i,j,k with i = −(m(q + 1) − q n−3 )u − m(q + 1)|λ| − m|γ|, On the contrary, if we set then E i,j,k is exactly the element Λ u,λ,γ .Therefore, if we restrict (i, j, k) in Ω r,s,t , then we must have (u, λ, γ) is in Θ r,s,t and vice versa.This completes the proof of the claim and hence of this corollary.⊓ ⊔ In the following, we will demonstrate an interesting property of #Ω r,s,t for GK curves with a specific vector s.
Corollary 2 Let n = 3 and the vectors r, s be given by ).
Then the lattice point set Ω r,s,t is symmetric with respect to r 0 , r 1 , • • • , r q−1 , t.In other words, we have #Ω r,s,t = #Ω r ′ ,s,t ′ , where the sequence r i q i=0 is equal to r ′ i q i=0 up to permutation by putting r q := t and r ′ q := t ′ .
The first identity follows directly from Corollary 1. Applying Corollary 1 again gives the set Θ (r0, ṙ),s,t as (u, λ, γ) u + t 0, From our assumption, it is obvious that |γ| is divisible by q + 1.So if we take The last set is exactly Ω (t, ṙ),s,r0 by definition.Hence the second identity is just shown, completing the whole proof.

The AG codes from GGS curves
This section settles the properties of AG codes from GGS curves.Generally speaking, there are two classical ways of constructing AG codes associated with divisors D and G, where G is a divisor of arbitrary function field F and pairwise distinct rational places, each not belonging to the support of G.One construction is based on the Riemann-Roch space L(G), The other one depends on the space of differentials Ω(G − D), It is well-known the codes C L (D, G) and C Ω (D, G) are dual to each other.
We refer the reader to [26] for more information.
In this section, we will study the linear code C L (D, G) with D := α,β,γ γ =0 P α,β,γ and G := It is well known that the dimension of Set R := N + 2g − 2. Since deg(G) > R, we deduce from the Riemann-Roch Theorem and ( 8) which implies that C L (D, G) is trivial.So we only consider the case 0 deg(G) R. Now, we use the following lemmas to calculate the dual of C L (D, G).
Lemma 9 (Proposition 2.2.10, [27]) Let τ be an element of the function field of the curve X such that v Pi (τ ) = 1 for all rational places P i contained in the divisor D. Then the dual of Lemma 10 (Proposition 2.2.14, [27]) Suppose that G 1 and G 2 are divisors with Then the codes C L (D, G 1 ) and C L (D, G 2 ) are equivalent and Theorem 2 Let A := (q n +1)(q−1)−1, B := mq 2 (q n −q 3 )+(q n +1)(q 2 −1)−1 . Then the dual code of C L (D, G) is given as follows.

Weierstrass semigroups and pure gaps
In this section, we will characterize the Weierstrass semigroups and pure gaps over GGS curves, which will enables us to obtain improved bounds on the parameters of AG codes.
We first briefly introduce some corresponding definitions and notations [23].For an arbitrary function field and the Weierstrass gap set , where N 0 := N ∪ {0} denotes the set of nonnegative integers.
Homma and Kim [15] introduced the concept of pure gap set with respect to a pair of rational places.This was generalized by Carvalho and Torres [4] to several rational places, denoted by In addition, they showed that (s A useful way to calculate the Weierstrass semigroups is given as follows, which can be regarded as an easy generalization of a result due to Kim [17] Lemma 11 For rational places In the rest of this section, we will restrict our study to the divisor G := q−1 µ=0 r µ P µ +tP ∞ and denote r = (r 0 , r 1 , • • • , r q−1 ).Our main task is to determine the Weierstrass semigroups and the pure gaps at totally ramified places P 0 , P 1 , • • • , P q−1 , P ∞ .Before we proceed, some auxiliary results are presented in the following.Denote Ω r,0,t by Ω (r0,r1,••• ,rq−1),t for the clarity of description.

⊓ ⊔
We are now ready for the main results of this section dealing with Weierstrass semigroups and pure gap sets, which play an interesting role in finding codes with good parameters.For simplicity, we define q n−3 t − r i m(q + 1) + (q − 1 − l) q n−3 t m(q + 1) + q(q − 1) q n−3 t m − t − r 0 − q n−3 t m(q + 1) , where r l = (r 0 , r 1 , • • • , r l ).
Theorem 4 Let P 0 , P 1 , • • • , P l be rational places as defined previously.For 0 l < q, the following assertions hold.

⊓ ⊔
The following corollary states the characterizations of Weierstrass semigroup and gaps at only one point.
Corollary 3 With notation as before, we have the following statements.
(2) Let α, β, γ ∈ Z. Then α + m(β + (q + 1)γ) ∈ N is a gap at P 0 if and only if exactly one of the following two conditions is satisfied: Proof The first statement is an immediate consequence of Theorem 4 (1).We now focus on the second statement.It follows from Theorem 4 (3) that the Weierstrass gap set at P 0 is G(P 0 ) = k ∈ N (q − 1) k m(q + 1) + q(q − 1) k m > q 3 k m(q + 1) .
The proof is finished.⊓ ⊔

The floor of divisors
In this section, we investigate the floor of divisors from GGS curves.The significance of this concept is that it provides a useful tool for evaluating parameters of AG codes.We begin with general function fields.

Definition 2 ([22]
) Given a divisor G of a function field F/F q with ℓ(G) > 0, the floor of G is the unique divisor G ′ of F of minimum degree such that L(G) = L(G ′ ).The floor of G will be denoted by ⌊G⌋.
The floor of a divisor can be used to characterize Weierstrass semigroups and pure gap sets.Let G = s 1 Q 1 + • • • + s l Q l .It is not hard to see that ( Maharaj, Matthews and Pirsic in [22] defined the floor of a divisor and characterized it by the basis of the Riemann-Roch space.Theorem 5 ( [22]) Let G be a divisor of a function field F/F q and let b 1 , • • • , b t ∈ L(G) be a spanning set for L(G).Then The next theorem extends Theorem 3.4 of [4] by determining the lower bound of minimum distance in a more general situation.Theorem 4 that (57, j, 3) 1 j 3 ⊆ G 0 (P 0 , P 1 , P ∞ ).
Let D be a divisor consisting of N = 3960 rational places except P 0 , P 1 , Q 1 , Q 2 , Q 3 and P ∞ .Applying Theorem 3.4 of [4] (see also Theorem 1, [16]), if we take G = 113P 0 + 3P 1 + 5P ∞ , then the three-point code C Ω (D, G) has length N = 3960, dimension N + g − 1 − deg(G) = 3884 and minimum distance at least 36.Thus we produce an AG code with parameters [3960,3884,36].Unfortunately, this F 2 10 -code cannot be compared with the one on MinT's Tables because the alphabet size given is at most 256.