Linear nonbinary covering codes and saturating sets in projective spaces

Let A_{R,q} denote a family of covering codes, in which the covering radius R and the size q of the underlying Galois field are fixed, while the code length tends to infinity. In this paper, infinite sets of families A_{R,q}, where R is fixed but q ranges over an infinite set of prime powers are considered, and the dependence on q of the asymptotic covering densities of A_{R,q} is investigated. It turns out that for the upper limit of the covering density of A_{R,q}, the best possibility is O(q). The main achievement of the present paper is the construction of asymptotic optimal infinite sets of families A_{R,q} for any covering radius R>= 2. We first showed that for a given R, to obtain optimal infinite sets of families it is enough to construct R infinite families A_{R,q}^{(0)},A_{R,q}^{(1)},...,A_{R,q}^{(R-1)} such that, for all u>= u_{0}, the family A_{R,q}^{(v)} contains codes of codimension r_{u}=Ru+v and length f_{q}^{v}(r_{u}) where f_{q}^{v}(r)=O(q^{(r-R)/R) and u_{0} is a constant. Then, we were able to construct the needed families A_{R,q}^{(v)} for any covering radius R>= 2, with q ranging over the (infinite) set of R-th powers. For each of these families A_{R,q}^{(v)}, the lower limit of the covering density is bounded from above by a constant independent of q.

such that, for all u ≥ u0, the family A  R,q for any covering radius R ≥ 2, with q ranging over the (infinite) set of R-th powers. A result of independent interest is that in each of these families A (γ) R,q , the lower limit of the covering density is bounded from above by a constant independent of q.
The key tool in our investigation is the design of new small saturating sets in projective spaces over finite fields, which are used as the starting point for the q m -concatenating constructions of covering codes. A new concept of N -fold strong blocking set is introduced. As a result of our investigation, many new asymptotic and finite upper bounds on the length function of covering codes and on the smallest sizes of saturating sets, are also obtained. Updated tables for these upper bounds are provided. An analysis and a survey of the known results are presented.

I. INTRODUCTION
Let F q be the Galois field with q elements. Let F n q be the ndimensional vector space over F q . Denote by [n, n−r] q a q-ary Communicated by xxxxxxxxxxxxxxxxxxx. Digital Object Identifier 00.0000/xxx.0000.000000 linear code of length n and codimension (redundancy) r, that is, a subspace of F n q of dimension n − r. For an introduction to coding theory, see [1], [2].
The Hamming distance d(v, c) of vectors v and c in F n q is the number of positions in which v and c differ. The smallest Hamming distance between distinct code vectors is called the minimum distance of the code. An [n, n − r] q code with minimum distance d is denoted as an [n, n − r, d] q code. The sphere of radius R with center c in F n q is the set {v : v ∈ F n q , d(v, c) ≤ R}. Definition 1.1: i) The covering radius of an [n, n−r] q code is the least integer R such that the space F n q is covered by spheres of radius R centered on codewords.
ii) A linear [n, n − r] q code has covering radius R if every column of F r q is equal to a linear combination of R columns of a parity check matrix of the code, and R is the smallest value with such property. Definition 1.1i makes sense for both linear and nonlinear codes. For linear codes Definitions 1.1i and 1.1ii are equivalent. An [n, n − r] q R code ([n, n − r, d] q R code, resp.) is an [n, n − r] q code ([n, n − r, d] code, resp.) with covering radius R. For an introduction to coverings of vector Hamming spaces over finite fields, see [3]- [6].
The covering problem for codes is that of finding codes with small covering radius with respect to their lengths and dimensions. Codes investigated from the point of view of the covering problem are usually called covering codes (in contrast to error-correcting codes) [6].
Problems connected with covering codes are considered in numerous works, see e.g. [7] - [41] and the references therein, the references in [3]- [6], and the online bibliography of [42]. In this work, we mainly give references to researches on nonbinary codes; some papers on binary codes are also mentioned as they contain useful general ideas. It should be noted that the monographs [3], [4] mostly deal with binary covering codes, and that no surveys of nonbinary covering codes have been recently published. In this work we try to make up for this deficiency for linear codes; in particular, for infinite linear code families. We obtain a number of new asymptotic optimal results, essentially improving the known estimates for both finite and infinitely growing code lengths. The description of new results is provided, along with a survey of the known ones and their updates.
Studying covering codes is a classical combinatorial task. Covering codes are connected with many areas of information theory and combinatorics, see, e.g., [3,Sec. 1.2] where problems of data compression, decoding errors and erasures, foot-0000-0000/00$00.00 c 0000 IEEE ball pools, write-once memories, Berlekamp-Gale game, and Caley graphs are mentioned. Covering codes can also be used in steganography, see [43], [44] and the references therein. Codes of covering radius 2 and codimension 3 are relevant, for example, for defining sets of block designs [45] and the degree/diameter problem in graph theory [46]. Covering codes can be used in databases [47]. There are connections between covering codes and a popular game puzzle, called "Hats-ona-line" [48]. Covering codes can be also used to construct identifying codes [49].
It should be particularly emphasized that linear covering codes are deeply connected with saturating sets in projective spaces over finite fields. Let P G(v, q) be the v-dimensional projective space over F q . For an introduction to such spaces and the geometrical objects therein, see [50]- [55].
As usual, by an n-set of P G(v, q) we mean a point set of size n. Homogenous coordinates of points of an (R − 1)saturating n-set K in the projective space P G(r − 1, q) can be treated as columns of a parity-check matrix of an [n, n − r] q R related covering code C K [9], [18], [29], [35], [58], [60].
Let V q (n, R) be the cardinality of the sphere of radius R in the vector space F n q .
The covering quality of an [n, n − r(C)] q R code C of codimension r(C) can be measured by its covering density We will write µ q (n, R) for µ q (n, R, C) when the code C is clear from the context. Note that µ q (n, R, C) ≥ 1 and equality holds when C is a perfect code. From the point of view of covering problem, the best codes are those with small covering density. For fixed parameters r, R, and q, the smaller is the length n of an [n, n−r] q R code, the smaller is its covering density. The length function ℓ q (r, R) is the smallest length of a q-ary linear code with codimension r and covering radius R [8], [4]. The smallest known length of such code is denoted by ℓ q (r, R). Clearly, ℓ q (r, R) ≤ ℓ q (r, R) holds, and the existence of an [n, n−r] q R code or an (R−1)-saturating n-set in P G(r−1, q) implies the upper bound ℓ q (r, R) ≤ n. Fact 1.2: If there is an [n, n − r] q R code then there is an [n + 1, n + 1 − r] q R code.
One can obtain an [n + 1, n + 1 − r] q R code by attaching an arbitrary column to a parity check matrix of an [n, n − r] q R code C, or, equivalently, by adding an information symbol. Clearly, by repeating the process it is possible to obtain an [n + δ, n + δ − r] q R code from C for any integer δ ≥ 1. We will call such a code a δ-extension of C.
For a given R ≥ 1 and for a fixed prime power q, let A R,q denote an infinite sequence of q-ary linear [n, n− r n ] q R codes C n , n ≥ R, with fixed covering radius R. An infinite sequence A R,q of covering codes is called an infinite family of covering codes or an infinite code family, or simply infinite family.
For infinite families A R,q we consider asymptotic covering densities For an infinite family A R,q the sequence of codimensions r n will be assumed to be non-decreasing. In fact, if r n+1 < r n for some n, then any 1-extension C * of C n has a better covering density than C n+1 , and therefore it is convenient to replace C n+1 with C * .
A code C n will be called a supporting code of A R,q if r n > r n−1 , a filling code otherwise. It is immediately seen that a filling code must have the same parameters of a δ-extension of some supporting code, and this motivates our notation. The subsequence of supporting codes will be denoted as C ni .
Throughout the paper, constructing an infinite family, we will only describe supporting codes, whereas the filling codes will be assumed to be obtained via δ-extension. The words "to construct a family" will mean "to construct the supporting codes of a family".
In this work we will mainly deal with infinite families A R,q for which the lengths and the codimension of the supporting codes C ni are linked by some function, namely n i = f q (r i ) where f q is an increasing function for a fixed q. In most cases, an explicit expression for the function f q will be given.
By (1.2), the covering density of an [n + 1, n + 1 − r] q R is greater than that of an [n, n − r] q R one. Therefore, Note that by (1.5),(1.6), the lower limit of the asymptotic covering density depends only on the supporting codes, while the upper limit depends on filling codes.
The size q of the base field F q is fixed for a given family A R,q . But, it is natural to consider an infinite set of families A R,q with fixed R and infinitely growing q. In most constructions, f q (r) is an increasing function of q for a fixed r. Therefore, a central problem for linear covering codes is the following: For a fixed covering radius R, find a set of families A R,q of q-ary codes with q running over an infinite set of prime power, such that the covering densities (1.5) and (1.6) are asymptotically as small as possible with respect to the size of the base field q.
This problem has distinct perspectives and solutions for lower and upper limits.
As to the lower limit (1.5), it can happen that the asymptotic covering density of a family A R,q are bounded from above by a constant independent of q. In this case µ q (R, A R,q ) = O(1) and the family A R,q is said to be "good". Accordingly, an [n, n − r] q R covering code is called " short" if n = O(q r−R R ). By (1.2) and (1.3), a family A R,q consisting of short codes is good. In this case, f q (r) = O(q r−R R ). A saturating set K will be said to be "small " if the related covering code C K is short.
A classical example is the direct sum [3] of R copies of the When the upper limit is considered, it is not possible to obtain an upper bound independent on q. This depends on the fact that Since r i+1 > r i , this implies that the optimal case is µ * q (R, A R,q ) = O(q). Then the following natural issue arises. Open Problem 1. For any covering radius R ≥ 2, construct an infinite code family A R,q with µ * q (R, A R,q ) = O(q). To solve Open Problem 1 it is convenient to proceed as follows. For any given integer γ with 0 ≤ γ ≤ R − 1, construct an infinite family A (γ) R,q such that its supporting codes are [n u , n u − r u ] q R codes with codimension r u = Ru + γ and length n u = f R,q is a standard method of investigation of linear covering codes, see [3], [17], [18], [24], [27]- [29], [35]  R,q , γ = 0, 1, . . . , R − 1. Let us consider the infinite family A R,q , whose supporting codes are the union of those of all the families A (γ) R,q . The family A R,q contains an infinite sequence of [n j , n j − j] q R codes C j with length n j = f (γj ) q (j), γ j ≡ j (mod R), where j ≥ j 0 and j 0 is a constant depending of constants u 0 of the starting families. Note that it may occur that n v+1 ≤ n v for some v. In this case we replace the code C v by an [n v+1 − 1, n v+1 − 1 − v] q R code that always can be obtained from C v+1 by removing a redundancy symbol and a suitable parity check. Arguing as before, Since all families A (γ) R,q are good, we have V q (n j+1 , R)/q j+1 = O(1). Hence, So, to solve Open Problem 1 it is sufficient to find a solution to Open Problem 2.
In this paper, Open Problem 2 (and Open Problem 1) is solved for an arbitrary covering radius R ≥ 2 and q = (q ′ ) R where q ′ is a power of prime.
Our main tools are the q m -concatenating constructions of covering codes, and the connection between covering codes and saturating sets in projective spaces.
The q m -concatenating constructions are proposed in [10] and are developed in [15], [16,Supplement], [17]- [20], [24], [27]- [30], [37], see also [3,Sec. 5.4] and [4]. These constructions are the fundamental instrument for obtaining infinite families of covering codes with a fixed radius. Using a starting code as a "seed", the q m -concatenating constructions yield an infinite family of new codes with the same covering radius and with almost the same covering density. If the starting code is short then the new infinite family is good.
The achievements of the present paper are mainly a consequence of new constructions of small saturating sets, some of which rely on the concept of a multifold strong blocking set that is introduced in this work. We have also thoroughly analyzed and collected the known results on the upper bounds on the length function, in particular for the cases R = 2, 3. We have updated tables about the upper bounds and formulas for infinite code families. As a result of our previously mentioned constructions, many new upper bounds on the length function are obtained.
The paper is organizes as follows. In Section II the q mconcatenating constructions, used in this work, are recalled. In Section III new constructions of small ̺ -saturating sets, including those relying on the new concept of strong blocking sets, are described. Section IV contains updated tables about the upper bounds on ℓ q (r, R) for R = 2, 3, r = 3, 4, 5. In Sections V,VI, and VII we consider codes with covering radii R = 2, R = 3, and R ≥ 4. Section VIII provides results for nonprime covering radius.
Some of the results from this work were briefly presented without proofs in [64], [65].
Using a starting [n 0 , n 0 − r 0 ] q R code of length n 0 , the q mconcatenating constructions yield an infinite family of [n, n − (r 0 + Rm)] q R codes with the same covering radius R and length n = q m n 0 + N m , where m ranges over an infinite set of integers. Here N m ≤ Rθ m,q , where It should be noted that all q m -concatenating constructions have the contribution q m n 0 into n; two of them may differ by the value of N m . Throughout this paper, all matrices and columns are q-ary. An element of F q m written in a q-ary matrix denotes an mdimensional column containing its coordinates with respect to a fixed basis of F q m over F q ; viceversa, an m-dimensional vector can be viewed as an element of F q m . i) A partition of the column set of the matrix H into nonempty subsets is called an (R, ℓ)-partition if every column of F r q (including the zero column) is equal to a linear combination with nonzero coefficients of at least ℓ and at most R columns of H belonging to distinct subsets. For an (R, 0) -partition we can formally treat the zero column as the linear combination of 0 columns.
An R-partition is an (R, ℓ)-partition for some ℓ ≥ 0. ii) If H admits an (R, ℓ)-partition, the code V is called an (R, ℓ)-object and is denoted as an [n, n − r] q R, ℓ code or an [n, n − r, d] q R, ℓ code, where d is the minimum distance of V .
Clearly, the trivial partition of a parity-check matrix of an [n, n − r] q R, ℓ code into n one-element subsets is an (R, ℓ) -partition.

Basic Construction QM. Let
q , be a parity check matrix of an [n 0 , n 0 −r 0 ] q R, ℓ 0 starting code V 0 . Assume that H 0 has a starting (R, ℓ 0 )-partition P 0 into p 0 subsets. Let m ≥ 1 be an integer parameter depending on p 0 and n 0 . To each column h j we associate an element β j ∈ F q m ∪ { * } so that β i = β j if columns h i and h j belong to distinct subsets of P 0 . If h i and h j belong to the same subset we are free to assign either Finally, define V as the [n, n − (r 0 + Rm)] q R V code with n = q m n 0 + N m and the parity-check matrix of the form If m, C and B are carefully chosen, then the covering radius R V of the new code V is equal to the covering radius R of the starting code V 0 . Examples are shown in Constructions QM 1 -QM 8 below.
We use the following notations: ; 0 k is the zero matrix with k rows (the number of columns will be clear by context);

C. q m -Concatenating Constructions with a Complete Set of Indicators (CSI)
In these versions of the basic Construction QM we must use all elements of F q m or F q m ∪ { * } as indicators β j . To this end, perhaps, we should assign distinct indicators to columns from the same subset of an R-partition. As a result the size of the submatrix C is reduced.
Proof: In Constructions QM 1 and QM 4 we put n 0 = ℓ q (r 0 , R) and then use the trivial R-partition. In the code . Note that Constructions QM 1 -QM 4 provide an infinite family of the new [n, n − (r 0 + Rm)] q R codes V with growing codimension r = r 0 + Rm. In Constructions QM 5 -QM 8 instead, the value of m cannot assume arbitrarily large values. However, these construction can be used in an iterative process where the new codes are the starting ones for the following steps [18], [24]. As result we obtain an infinite code family, see, e.g., [24,Rem. 5]. For this iterative process, it is important that in the new codes obtained by the q mconcatenating constructions the value of ℓ is increasing and eventually reaches R, see [18,Sec. IV] and Examples in Section VI.
3), in Construction QM 1 the covering density of the starting code V 0 and the lower limit of the asymptotic covering density of the infinite family of the new codes V are, respectively, µ q (n 0 , R) ≈ This shows that for the q m -concatenating constructions the lower limit of the asymptotic covering density of the new family is somewhat greater than covering density of the starting code. However, it should be noted that the difference is not significant when the value of R/qn 0 is small.
, then the all new [n, n − (r 0 + Rm)] q R codes V, obtained by the q m -concatenating constructions, are "short" too, i.e. n = O(q ). This means that the infinite family of the codes V is "good" with µ q (R) = O(1).

A. Multifold Strong Blocking Sets
In a projective space a t-fold blocking set with respect to subspaces of some fixed dimension is a set of points that meets every such subspace in at least t points. To describe new constructions of relatively small ρ -saturating sets in spaces P G(v, q) with q = (q ′ ) ρ+1 we introduce a new concept of t-fold strong blocking set. Let Theorem 3.2: Let ρ be any positive integer. Let q = (q ′ ) ρ+1 . Let v ≥ ρ + 1. Any (ρ + 1)-fold strong blocking set in a subgeometry P G(v, q ′ ) ⊂ P G(v, q) is a ρ-saturating set in the space P G(v, q).
Proof: Let B be a (ρ + 1)-fold strong blocking set in P G(v, q ′ ). Let P be a point in P G(v, q) \ B. By definition of (ρ + 1) -fold strong blocking set we only need to show that there exists a ρ -dimensional subspace of P G(v, q ′ ) passing through P . Consider the subspace Σ(P ) of P G(v, q) generated by the point set O(P ) := {P, P q ′ , P (q ′ ) 2 , . . . , P (q ′ ) ρ }. As are independent, then this subspace coincides with Σ(P )). As P ∈ Σ(P ), the assertion is proved.

B. Small ρ-Saturating Sets in Spaces
is a 1-saturating set in the plane P G(2, q).
Proof: As a line is spanned by any two its points, a 2fold blocking set in a projective plane is always a 2-fold strong blocking set. Then we use Theorem 3.2.
Note that Corollary 3.3 is also given in [46].
The union of two disjoint Baer subplanes in P G(2, √ q) is a 2-fold blocking set [66]. Then we use Corollary 3.3.
In P G(2, q), q not a square, 2-fold blocking sets of size b ≤ 3q − 2 are not known in the literature [66], [67]. We give here some results for q = p 3 , p prime.
In fact, c belongs to some coset dH, d / ∈ H, and therefore c = da p−1 for some The existence of such element c has been tested by computer for every prime p ≤ 73.
Note that the smallest previously known 1-saturating sets in P G(2, q), q = (q ′ ) 2 , have size 3 √ q − 1 [18, Th. 5.2], cf. Theorem 3.4 and Corollary 3.6. Now we construct a 3-fold strong blocking set in P G(3, q). Let l 1 , l 2 , l 3 be the lines with the following equations: These lines are pairwise skew, and are all contained in the hyperbolic quadric Q : x 0 x 1 = x 2 x 3 . Let g be any line disjoint from Q, and let (3.1) A possible choice for g is the following: g : .

Theorem 3.7:
The set B of (3.1) has size 4q + 4 and it is a 3-fold strong blocking set in P G (3, q).
Proof: We need to show that any plane π of P G(3, q) meets B in three non collinear points. If one of lines of B lies on π, then the assertion is trivial. Let P i = π ∩ l i . Assume that P 1 , P 2 , P 3 are collinear. Then the line l through P 1 , P 2 and P 3 is contained in Q, by the"three then all" principle for quadrics in projective spaces. As R = π ∩ g / ∈ Q, we have that R is not collinear with P 1 and P 2 .
Remark 3.8: Any 3-fold strong blocking set B in P G(3, q) has at least 3q +3 points. Let l be any line such that l∩B = ∅. Then each of the q + 1 planes in the pencil through l must contain three points of B. Corollary 3.9: Let q = (q ′ ) 3 . In P G(3, q) there is a 2saturating set of size 4q ′ + 4 consisting of four pairwise skew lines of P G(3, q ′ ) ⊂ P G(3, q).
Proof: We use Theorems 3.2 and 3.7. We now give an inductive construction of v-fold strong blocking sets in P G(v, q).

Construction A.
Let H ∼ = P G(v, q) be a hyperplane in P G(v + 1, q) , and let B ⊂ H be a v-fold strong blocking set in H. Let P 1 , P 2 , . . . , P v+1 be v + 1 independent points in H, and let l 1 , . . . , l v+1 be concurrent lines in P G(v, q) such that l i ∩ H = P i for each i. Let

2)
Theorem 3.10: Let B be a v-fold strong blocking set in P G(v, q) of size k. Then the set B ⋆ of Construction A is a (v + 1)-fold strong blocking set in P G(v + 1, q) of size k + 1 + (v + 1)(q − 1).
Proof: Let H be the hyperplane in P G(v + 1, q) as in Construction A. Let H 1 be any hyperplane in P G(v + 1, q). We need to show that H 1 is generated by v + 1 points in B ⋆ . When H = H 1 , this follows from the fact that B must contain v + 1 independent points. Assume then that H = H 1 , and let Σ = H ∩ H 1 . As Σ is a hyperplane in H, there exist v points Q 1 , . . . , Q v in B which generate Σ. Note that Σ does not pass through a point P i0 for some i 0 ∈ {1, . . . , v + 1}, as otherwise Σ would coincide with H. Let Q = H 1 ∩ l i0 . As Q / ∈ Σ, and as Σ is a hyperplane of H 1 , we have that H 1 =< Σ, Q >=< Q 1 , . . . , Q v , Q > ., with {Q 1 , . . . , Q v , Q} ⊂ B * . This proves that B ⋆ is a (v + 1)−fold blocking set. The size of B ⋆ can be easily calculated from (3.2).
Remark 3.13: The codes associated to the saturating sets of Corollaries 3.9 and 3.12 will be used as starting codes for q m -concatenating constructions, see Sections VI and VII. Therefore, we need to treat such codes as (R, ℓ)-objects with ℓ > 0 and to obtain the corresponding (R, ℓ)-partitions, see Definition 2.1. To this end, it is useful to represent some point P i of a line l in P G(v, q) as a linear combination with nonzero coefficients of u other points of l. We compute some of the admissible values of u. Let l = {P 0 , P 1 , . . . , P q }. Without loss of generality we identify l with the projective line P G(1, q), and assume that P 0 = (0, 1), Clearly, for each i = 0, 1, . . . , ⌊(q − 2)/2⌋ , the point P i can be written as P i = c 2i+1 P 2i+1 + c 2i+2 P 2i+2 , for some c 2i+1 , c 2i+2 ∈ F * q . So, P 0 = c 1 P 1 + c 2 P 2 = c 1 c 3 P 3 + c 1 c 4 P 4 + c 2 P 2 = c 1 c 3 P 3 + c 1 c 4 P 4 + c 2 c 5 P 5 + c 2 c 6 P 6 , and so on. Therefore, each u ∈ {2, 3, . . . , ⌊(q + 2)/2⌋} is admissible.
Proof: Let W be any k-dimensional subspace of P G(v, q). Let w 1 , . . . , w k+1 be k + 1 independent points of W . Consider the matrix whose rows are homogenous coordinates of points w 1 , . . . , w k+1 . As the rank of A W is equal to k + 1, there exists a non singular (k + 1) Note that the rows of M A W are the coordinates of (k + 1) points of W ; more precisely the i th -row of M A W is m i1 w 1 + m i2 w 2 + . . . + m i(k+1) w k+1 . Clearly these points are independent, and they are contained in B k as I k+1 is a submatrix of M A W . Note that in the previous lemma see (1.1). Therefore the order of magnitude of the size of B k is v+1 k q v−k . Theorem 3.15: Let ρ be a positive integer. Let q = (q ′ ) ρ+1 and v > ρ + 1. Then in P G(v, q) there exists a ρ -saturating set of size Proof: By Theorem 3.2, the set B ρ ⊂ P G(v, q ′ ), where B ρ is defined as in Lemma 3.14, is the desired ρ-saturating set.
For some values of v and ρ, the coefficient v+1 ρ can be improved. We show that this is possible for v = 4, ρ = 2.

IV. TABLES OF UPPER BOUNDS ON THE LENGTH
FUNCTION ℓ q (r, R) FOR SMALL r AND R We give tables of the values of ℓ q (r, R), i.e., the smallest known lengths of a q-ary linear code with codimension r and covering radius R. Obviously, ℓ q (r, R) ≤ ℓ q (r, R) holds. The dot " " appears in a table when ℓ q (r, R) = ℓ q (r, R) holds. Subscripts indicate the minimum distance d of the [ ℓ q (r, R), ℓ q (r, R) − r, d] q R codes. Multiple subscripts mean that the value of ℓ q (r, R) is provided by codes with distinct distances. (4.1) In Table II we give a number of concrete sizes of 1saturating sets and complete caps in P G(2, q), q = p 2t+1 , taken from [ Table III where values of ℓ q (4, 3) are listed. The distances d = 4 and d = 5 occur, respectively, when the code arises from an incomplete cap and a complete arc in P G(3, q) [35], [37].
From Table III we obtain the following theorem.
From Table IV we obtain the following theorem. Theorem 4.3: For the length function ℓ q (5, 3), V. CODES WITH COVERING RADIUS R = 2

A. Direct sum and doubling constructions
The direct sum construction (DS) forms an [n 1 + n 2 , n 1 + n 2 − (r 1 + r 2 )] q R code V with R = R 1 + R 2 from two codes: an [n 1 , n 1 − r 1 ] q R 1 code V 1 and an [n 2 , n 2 − r 2 ] q R 2 code V 2 [6], [3], [4]. The parity-check matrix H of the new code V has the form H = where H 1 and H 2 are parity-check matrices of the starting codes V 1 and V 2 , respectively. Construction DS is denoted by

DS construction yields that
In [19] Construction CP1 ("codimension plus one") is proposed. The construction is similar to the construction in [13]. From an [n, n − r] q 2 code V 1 Construction CP1 forms an [f q (n), f q (n) − (r + 1)] q 2 code V where f 3 (n) = 2n, f 4 (n) = 3n − 1, f 5 (n) = 3n. For q = 3 Construction CP1 is a doubling construction. In this case the parity-check matrix H of the new code V has the form where 0 and 1 is the row of all zeroes and units, respectively, and H 1 is a parity-check matrix of the starting code V 1 . By (5.2), see also [23],
No examples of [n, n − 4] q 2 codes with n < 2q + 1, seem to be known.

C. More on 1-Saturating Sets in Projective Planes P G(2, q)
We recall here some of the known results on small 1saturating sets in P G(2, q). (For the new 1-saturating sets obtained in this paper we refer to Section III and Tables I,II  of Section IV).
For large q the existence of 1-saturating sets in P G(2, q) of size at most 5 √ q log q was shown by means of probabilistic methods in [45], [61].
In [56], [54], [62], [45] 1-saturating sets in P G(2, q) of size approximately cq In [63] constructions of 1-saturating n-sets in P G(2, q) of size n about 3q 2 3 are proposed. In particular the following upper bounds on n are obtained for p prime: Several triples (t, p, v) such that n < 5 √ q log q are obtained in [63].

D. Infinite Code Families of Odd Codimension r = 2t + 1
Let q = 3. By [21, Th. 1], [27,Ths 4 and 9], there exists an infinite family of [n, n − r] 3 2 codes with the following parameters: Let q = 4. In [28] an infinite family of [n, n − r] 4 2 codes is obtained with parameters , Now we construct infinite code families by using the q mconcatenating constructions in [24]. Terminology and notation of [24] will be used; in particular, we are going to consider 2 E -partitions, 2 + -partitions, and their cardinalities h E (H) and h + (H), see [24, Def. 1,Rem. 1]. The starting codes will be the codes associated to the 1-saturating sets described in the part C of this section.
Proof: In a parity-check matrix H of V 0 there are three linear dependent columns. Let two of these columns form one subset of a partition P 0 of H, while the other subsets of P 0 contain precisely one column. By Definition 2.1, P 0 is a 2partition.
For each of the infinite families (5.8)-(5.15) the covering density is bounded from above by a constant. If in (5.13) we take as V 0 a code with length n q ∼ f (q) √ q, where f (q) is some increasing function of q, such as in (5.7), then the asymptotic covering density increases like f 2 (q). However for concrete q new code families can be supportable, see e.g. Table II.
We end this section with Tables V and VI,  VI. CODES WITH COVERING RADIUS R = 3
We denote by p (ℓ) (V ) the upper bound of the minimal possible cardinality of an (R, ℓ)-partition for a parity-check matrix of an [n, n − r] q R, ℓ code V .

A. Infinite Code Families of Codimension r = Rt and Arbitrary q
In this Section we obtain a code V of covering radius R ≥ 4 and codimension Rt from DS of g 2 codes V 2 with radius two and g 3 codes V 3 with radius three. More precisely, let where V is an [n, n−Rt] q R code, V 2 is an [n 2 , n 2 −2t] q 2 code, V 3 is an [n 2 , n 2 −3t] q 3 code, n = g 2 n 2 +g 3 n 3 , 2g 2 +3g 3 = R, and Theorem 7.1: Let R ≥ 4 and let q ≥ 4. Then there exists an [n = Rq + ⌈R/3⌉ , n − 2R, 3] q R, ℓ code with ℓ ≥ 1.
It should be noted that the main term of the asymptotic covering density µ q (R, A (0) R,q ) for the family of (7.3) is R R R! ; it does not depend on q.

B. Infinite Code Families of Codimension
Then there exists an infinite family of [n, n − r] q R codes with Proof: As the starting code V 0 for Constructions QM 2 , QM 3 we take an [n (1) R,q , n (1) R,q − (R + 1), 3] q R code C K related to the (R − 1)-saturating set K ⊂ P G(R, q ′ ) ⊂ P G(R, q) described in Corollary 3.12, see also (3.2), Construction A and Corollary 3.11 . Note that K contains four pairwise skew lines of P G(R, q ′ ), whereas for other R(R+1) 2 −6 ≥ 2R−4 all but one point belong to K. These latter lines are partitioned into R − 3 sets of concurrent lines. By Definition 2.1 and Remark 3.13, the code C K is an (R, ℓ 0 )-object with ℓ 0 = R if q ≥ 4 and ℓ 0 ≥ R − 1 if q = 3. The trivial partition of its parity-check matrix is an (R, ℓ 0 )-partition into n (1) R,q ≤ q t0−1 subsets. Finally, we use (2.4) and (2.5) to get the assertion.
It should be noted that the main term of the asymptotic covering density µ q (R, A R,q ) for the family of (7.5) is (R 2 +R) R 2 R R! ; it does not depend on q.
It should be noted that the main term of the asymptotic covering density µ q (R, A (γ) R,q ) for the family of (7.6) is VIII. CODES WITH NONPRIME COVERING RADIUS R = sR ′ We consider the case when covering radius R is nonprime, i.e. R = sR ′ with integer s and R ′ .
Moreover, if the starting code C 0 is short the new code C is short too.
Proof: We apply Construction DS to s copies of C 0 . If the code C 0 is short then Then the assertion is proved.
It should be noted that for the infinite families (8.1)-(8.7), the main term of the lower limit of covering density µ q (R, A (γ) . All these terms do not depend on q. Remark 8.6: It should be emphasized that codes of Corollaries 8.2-8.5 are "short" for R = sR ′ though as a rule in these codes q = (q ′ ) R . Usually we have this property when q = (q ′ ) R .

IX. CONCLUSION
We considered infinite sequences A R,q of linear nonbinary covering codes C n of type [n, n − r n ] q R. Without loss of generality, we assumed that the sequence of codimension r n is not decreasing. For a given family A R,q , the covering radius R and the size q of the underlying Galois field are fixed. We considered also infinite sets of the families A R,q , where R is fixed but q ranges over an infinite set of prime powers.
Each infinite family A R,q consists of supporting and filling codes. The supporting codes are the codes C n such that r n > r n+1 . Non-supporting codes are called filling codes. This terminology is motivated by the fact that the parameters of the codes in a family are completely determined by those of its supporting codes. However, considering filling codes is necessary to investigate not only the lower limit (lim inf) of the covering densities of a family, but also its upper limit (lim sup).
Such lower and upper limits (denoted by µ q (R, A R,q ) and µ * q (R, A R,q ) respectively) are the most considerable asymptotic features of families A R,q . It is also relevant how these limits depend on q in infinite sets of families A R,q with fixed R. We showed that for the upper limit the best possibility is µ * q (R, A R,q ) = O(q). The problem of constructing infinite sets of families A R,q with µ * q (R, A R,q ) = O(q) is open in the general case. We call it Open Problem 1. In the literature, a solution to Open Problem 1 was known only for R = 2, q square.
We first showed in Introduction that Open Problem 1 for covering radius R is solved provided that a solution to the following Open Problem 2 is achieved: construct R infinite code families A R,q is an infinite family such that its supporting codes are a sequence of [n u , n u − r u ] q R codes with codimension r u = Ru + γ and length n u = f (γ) is an increasing function for a fixed q. The main achievement of the paper is a solution to Open Problem 2 (and, thereby, to Open Problem 1) for an arbitrary covering radius R ≥ 2. This solution consists of infinite sets of families A R,q where q = (q ′ ) R , q ′ is power of prime. The main tool was using codes related to saturating sets in projective spaces as starting points for q m -concatenating constructions of covering codes. Combining q m -concatenating constructions and the saturating sets turned out to be very effective.
In addition, the methods used for solving Open Problems 1 and 2 allowed us to obtain a number of results on covering codes of independent interest. In particular, we obtained many new upper bounds on the asymptotic covering density µ q (R, A (γ) R,q ) for distinct R and γ. We obtained also several new asymptotic and finite upper bounds on the length function.
It was natural to analyze and survey the previously known results, as well as presenting the new ones. In particular, this was done for covering radius R = 2, 3. A survey of the most used q m -concatenating constructions is also given. It should be noted that no surveys of nonbinary linear covering codes have been recently published.
We also point out that new upper bounds on the length function are also new upper bounds on the smallest possible sizes of saturating sets. More generally, the new results and methods concerning small saturating sets in projective spaces over finite fields that have been given in this paper, such as the new concept of multifold strong blocking sets, seem to be of independent interest.