The problem of obtaining the weight distribution of a given code is important because it plays a significant role in determining the capabilities of error detection and correction of such a code. For cyclic codes this problem is even more important because this kind of codes possess a rich algebraic structure (they are ideals in the principal ideal ring , where is the length of the cyclic codes). In addition, it is known that cyclic codes with few weights have a great practical importance in cryptography and coding theory since they are useful in the design of secret sharing schemes and association schemes (see [1, 4]). Not long ago, a characterization of a class of optimal three-weight cyclic codes of dimension 3, over any finite field , was presented in , and shortly thereafter, several classes of cyclic codes with either optimal three weights or a few weights were given in , showing that one of these classes can be constructed as a generalization of the sufficient numerical conditions of the characterization given in . On the other hand, a class of optimal five-weight -ary cyclic codes of dimension was recently presented in .
In this paper we take the direct sum (as vector spaces) of a one-weight cyclic code of dimension, and two different one-weight cyclic codes of dimension in order to construct an enlarged class of optimal five-weight cyclic codes of length and dimension , over any finite field , with , that generalizes the class of optimal five-weight -ary cyclic codes presented in . The codes in this class are optimal in the sense that their lengths reach the Griesmer lower bound for linear codes. In fact, we explicitly determine the weight distribution for the cyclic codes in this class. As an application of this enlarged class of optimal five-weight cyclic codes, we present the complete weight enumerator of a subclass of the optimal three-weight cyclic codes that were studied in . The complete weight enumerator of a code enumerates the codewords by the number of symbols of each kind contained in each codeword. In fact, if , the complete weight enumerator contains much more information than the ordinary weight enumerator. For this reason, the determination of the complete weight enumerators of cyclic codes or linear codes over finite fields has received a great deal of attention in recent years (see for example , , , , , , , , and ). In this respect, it should be pointed out that, for a prime field , several classes of three-weight linear codes and their complete weight enumerators were recently presented in , , , , and . In that context, we want to emphasize that the three-weight codes that we are going to present here are not only linear, but also cyclic, optimal and defined over any finite field .
In addition, we study the dual codes in our enlarged class of optimal five-weight cyclic codes, and show that, except for the binary case, they are cyclic codes of length , dimension , and minimum Hamming distance . In fact, through several examples, we see that those parameters are the best known parameters for linear codes.
This work is organized as follows: In Section II we fix some notations and recall some definitions, along with some known results to be used in subsequent sections. Section III is devoted to presenting some preliminary and general results. Particularly, we study a kind of exponential sums that will be important in order to determine the weights, and their corresponding frequencies, for the class of cyclic codes that we are interested in. This kind of exponential sums are then used in Section IV to present an enlarged class of optimal five-weight cyclic codes of dimension over any finite field, showing at the same time that, except for the binary case, the dual codes in this enlarged class have minimum Hamming distance . Examples of optimal five-weight cyclic codes belonging to this enlarged class, along with their corresponding dual codes, are presented at the end of this section. In Section V we use our enlarged class of optimal five-weight cyclic codes over any finite field in order to obtain the complete weight enumerator of a subclass of the optimal three-weight cyclic codes that were studied in . Finally, Section VI is devoted to conclusions.
In this section, we recall some definitions and notations along with some known results to be used in subsequent sections.
Ii-a Basic definitions and notation
First of all we set for this section and for the rest of this work, the following:
Notation. Let be a prime, a power of , and the finite field of order . By using we will denote a fixed primitive element of . We are going to fix , and consequently note that is a fixed primitive element of . For any integer , the polynomial will denote the minimal polynomial of (see for example [17, p. 99]). For integers , such that if , will denote the cyclic code of length over , whose parity check polynomial is . In addition, for any integer , we will denote by “Tr”, the absolute trace mapping from to the prime field , and by “” the trace mapping from to .
Ii-B Gauss Sums
The canonical additive character of is defined as follows:
On the other hand, if , then any multiplicative character of is defined by
Commonly is referenced as the trivial multiplicative character. If
is odd, an important multiplicative character is the so-calledquadratic character which is denoted by and defined by: if is the square of an element of and otherwise. For the canonical additive character , and for any multiplicative character , of , the following two properties will be useful for us
Now, for any multiplicative character of and for the canonical additive character of , the Gaussian sum is defined by
Two useful properties of are (see for example [15, Theorems 5.12 and 5.15]):
Another important property of Gaussian sums is the so-called expansion of the restriction of to in terms of the multiplicative characters of , with Gaussian sums as Fourier coefficients (see for example [15, p. 195]):
Ii-C Griesmer lower bound
When constructing a code, from an economical point of view, it is desirable to obtain an code over whose length is minimal for given values of , and . A lower bound for the length in terms of these values is as follows. Let be the minimum length for which an linear code, over , exists. If the values of , and are given, then a well-known lower bound (see  and ) for is:
(Griesmer lower bound) With the previous notation,
where denotes the smallest integer greater than or equal to .
As a consequence of the previous theorem we have:
Suppose that is a linear code over . Then is an optimal linear code in the sense that its length reaches the lower bound in the previous theorem.
By means of a direct application of the Griesmer lower bound, we have
Ii-D The weight enumerator and the complete weight enumerator of a code
We recall that the weight enumerator of a code of length over a finite field is defined as the polynomial , where denote the number of codewords with Hamming weight in the code . The sequence is called the weight distribution of the code. An -weight code is a code such that the cardinality of the set of nonzero weights is . That is, .
In a similar way let be a code of length over . Denote the elements of by , in some fixed order. For each codeword in let be the monomial in the variables given by
where the power () is the number of components () of that are equal to . Denote by the set of all integer vectors such that and . Then the complete weight enumerator of (see for example  and [17, p. 141]) is the polynomial
The sequence is called the complete weight distribution of . Obviously it coincides with the weight distribution if and contains much more information if . In fact, the complete weight enumerator has a wide range of applications in many research fields as the information it contains is of vital use in practical applications. For example, as pointed out in  the complete weight enumerator of Reed-Solomon codes could be helpful in soft decision decoding. As other example, the complete weight enumerator is useful in the computation of the Walsh transform of monomial functions over finite fields .
Iii A class of exponential sums
It is well known that the weight distribution of some cyclic codes can be obtained by means of the evaluation of some exponential sums. The following two lemmas goes along these lines.
Let and be respectively the canonical additive characters of and . For any integers , and , and for all and , consider the sums
If and , then
Recalling that we have
and, since , we have
Let and be respectively the multiplicative character groups of and . Now, if N is the norm mapping from to and is the subgroup of order of , then note that (that is, is nothing but the “lift” of to ). Therefore, owing to [15, Theorem 5.30, p. 217], we have
where the last equality arises due to the Davenport-Hasse Theorem (see [15, Theorem 5.14, p. 197]). In consequence, since and , we have
On the other hand, by using the Fourier expansion of the restriction of to in terms of the multiplicative characters of , we have that for all :
and by multiplying both sides of the preceding equation by and by summing we obtain
Finally, by substituting the previous equation in (4) we obtain the desired result.
With the same notation, consider the character sum of the form:
If , , and , then
Without loss of generality we assume that . Thus, from the previous lemma, and since , we have
Now, suppose that is even. Then by [15, Theorem 5.34, p. 218] we know that, for all ,
Note that iff , with . But, since , the last equality holds iff , with . Therefore
where if and otherwise. By making the variable substitution , with (that is , with ), we get
Thus, owing to (6), the case even follows from the fact that
Now suppose that is odd. Then by [15, Theorem 5.33, p. 218] we know that, for all with ,
where is the quadratic character of . Therefore, from (5), we have that is equal to
where the last equality arises because . But , thus after applying the variable substitution (that is ), we have that
After the application of (7) again, we get that is equal to
Applying the variable substitution (that is ), we have
Finally, the result follows from the fact that (see (II-B))
Assume the same notation as in the previous lemma. If , and , then the character sum takes six different values according to the following seven cases:
Case 2: Without loss of generality we assume that and . Then
Applying the variable substitution (that is ), we have
But , then