 # Tables, bounds and graphics of short linear codes with covering radius 3 and codimension 4 and 5

The length function ℓ_q(r,R) is the smallest length of a q -ary linear code of covering radius R and codimension r. In this work, by computer search in wide regions of q, we obtained short [n,n-4,5]_q3 quasiperfect MDS codes and [n,n-5,5]_q3 quasiperfect Almost MDS codes with covering radius R=3. The new codes imply the following upper bounds: &ℓ_q(4,3)<2.8√(q q) for 8< q<3323 and q=3511,3761,4001; &ℓ_q(5,3)<3√(q^2 q) for 5< q<563. For r≠ 3t and q≠ (q^')^3, the new bounds have the form ℓ_q(r,3)< c√( q)· q^(r-3)/3, c is a universal constant, r=4,5. As far as it is known to the authors, such bounds have not been previously described in the literature. In computer search, we use the leximatrix algorithm to obtain parity check matrices of codes. The algorithm is a version of the recursive g-parity check algorithm for greedy codes.

## Authors

##### This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

## 1 Introduction

### 1.1 Covering codes. The length function. Saturating sets in projective spaces

Let be the Galois field with elements. Let be the

-dimensional vector space over

Denote by a -ary linear code of length and codimension (redundancy) , that is, a subspace of of dimension The sphere of radius with center in is the set where is the Hamming distance between the vectors and .

###### Definition 1.1.
(i)

The covering radius of a linear code is the least integer such that the space is covered by spheres of radius centered at the codewords.

(ii)

A linear code has covering radius if every column of is equal to a linear combination of at most columns of a parity check matrix of the code, and is the smallest value with such property.

Definitions 1.1(i) and 1.1(ii) are equivalent. Let an code be an code of covering radius . Let an code be an code of minimum distance . For an introduction to coverings of vector Hamming spaces over finite fields, see [7, 8].

The covering density of an -code is defined as the ratio of the total volume of all spheres of radius centered at the codewords to the volume of the space . By Definition 1.1(i), we have . In the other words,

 μ=(qn−rR∑i=0(q−1)i(ni))1qn=1qrR∑i=0(q−1)i(ni)≥1. (1.1)

The covering quality of a code is better if its covering density is smaller. For fixed , and , the covering density of an code decreases with decreasing .

Codes investigated from the point view of the covering quality are usually called covering codes ; see an online bibliography , works [7, 9, 10, 11, 13, 14, 15, 16, 21, 22], and the references therein.

This work is devoted to non-binary covering codes with radius . Note that for relatively small many results are given in [11, 13, 14] and the references therein.

###### Definition 1.2.

[7, 8] The length function is the smallest length of a -ary linear code of codimension  and covering radius .

From (1.1), see also Definition 1.1(ii), one can get an approximate lower bound on . In particular, if is considerable larger than (this is the natural situation in covering codes investigations) and if is large enough, we have

 μ≈1qr(q−1)R(nR)≈qR−rnRR!≳1, n≳R√R!⋅q(r−R)/R,

and, in a more general form,

 ℓq(r,R)≳cq(r−R)/R, (1.2)

where is independent of but it is possible that is dependent of and . In , see also the references therein including [9, 13], the bound (1.2) is given in another (asymptotic) form and infinite families of covering codes, achieving the bound, are obtained for the following situations:

 r=tR,  arbitrary q; r≠tR,  q=(q′)R; R=sR′,  r=Rt+s,  q=(q′)R′.

Here are integers, is a prime power.

In the general case, for arbitrary , the problem to achieve the bound (1.2) is open.

In the last decades, upper bounds on have been intensively investigated, see [8, 7, 9, 10, 11, 13, 14, 15, 16, 21, 22, 23] and the references therein.

The goal of this work is to obtain new upper bounds on the length functions and with and arbitrary , in particular with where is a prime power. It is an open problems.

Let be the -dimensional projective space over the field ; see [17, 18, 19] for an introduction to the projective spaces over finite fields, see also [15, 18, 21, 22] for connections between coding theory and Galois geometries.

Effective methods to obtain upper bounds on are connected with saturating sets in .

###### Definition 1.3.

A point set is -saturating if for any point of there exist points in generating a subspace of containing , and is the smallest value with such property.

By Definition 1.3, every point from can be written as a linear combination of at most points of a -saturating set, cf. Definition 1.1(ii).

Saturating sets are considered, for instance, in [2, 3, 4, 7, 9, 10, 11, 12, 13, 15, 20, 16, 21, 22, 26]. In the literature, saturating sets are also called “saturated sets”, “spanning sets”, “dense sets”.

Let be the smallest size of a -saturating set in .

If -ary positions of a column of an parity check matrix of an code are treated as the homogeneous coordinates of a point in then this parity check matrix defines an -saturating set of size in [9, 10, 16, 11, 15, 20, 21, 22]. So, there is a one-to-one correspondence between codes and -saturating sets in . Therefore,

 ℓq(r,R)=sq(r−1,R−1),

in particular, , .

Complete arcs in are an important class of saturating sets. An -arc in with is a set of points such that no

points belong to the same hyperplane of

. An -arc of is complete if it is not contained in an -arc of . A complete arc in is an -saturating set. Points (in the homogeneous coordinates) of a complete -arc in , treated as columns, form a parity check matrix of an maximum distance separable (MDS) code. If these codes are quasi-perfect.

Let be the smallest size of a complete arc in . By above,

 ℓq(N+1,N)=sq(N,N−1)≤sarcq(N,N−1).

### 1.2 Covering codes with radius 3

For arbitrary , covering codes of length close to the lower bound (1.2) are known only for [11, 13]. In particular, the following bounds are obtained by algebraic constructions [11, Sect. 5, eq. (5.2)], [13, Th. 12]:

 ℓq(r,3)≤3q(r−3)/3+q(r−6)/3, r=3t≥6,r≠9, q≥5, and r=9, q=16,q≥23. ℓq(r,3)≤3q(r−3)/3+2q(r−6)/3+1, r=9, q=7,8,11,13,17,19. ℓq(r,3)≤3q(r−3)/3+2q(r−6)/3+2, r=9, q=5,9.

If or , covering codes of length close to the lower bound (1.2) are known only when , where is a prime power [9, 10, 11, 16]. In particular, the following bounds are obtained by algebraic constructions, see [9, 10], [11, Sect. 5, eqs. (5.3),(5.4)]:

 ℓq(r,3)≤(4+43√q)q(r−3)/3, r=3t+1≥4, q=(q′)3≥64. ℓq(r,3)≤(9−83√q+43√q2)q(r−3)/3, r=3t+2≥5, q=(q′)3≥27.

For arbitrary , in the literature, computer results are given for codes with [14, Tab. 1] and codes with [10, Tab. 1], [14, Tab. 2].

In this work, by computer search, we obtain new results for quasi-perfect MDS codes with , and quasi-perfect Almost MDS codes with . This gives upper bounds on and for a set of values essentially greater than the one in [10, 14].

The following theorem summarizes the new results of this paper, see Sections 3 and 4.

###### Theorem 1.4.

Let and . For the length function and for the smallest size of a -saturating set in the projective space the following upper bounds hold:

 \emph(i)ℓq(4,3)=sq(3,2)≤s\emph% arcq(3,2)
###### Remark 1.5.

The assertion (1.3) is provided by quasi-perfect MDS codes, see Proposition 3.3(ii). These codes correspond to complete -arcs in . Therefore, the assertion (1.3) gives upper bounds on sa well as on .

On the other hand, the assertion (1.4) is provided by an code, see Proposition 3.3(i). Also, the assertion (1.5) is provided by codes for and codes for , see Proposition 4.1. The mentioned codes do not correspond to arcs; therefore the assertions (1.4) and (1.5) give upper bounds only on and .

We emphasize that, for and , the new bounds of Theorem 1.4 have the form

 ℓq(r,3)

As far as it is known to the authors, such bounds have not been previously described in the literature.

Our results, in particular figures and observations in Sections 3 and 4, allow us to conjecture the following.

###### Conjecture 1.6.

Let and . For the length function and for the smallest size of a -saturating set in the projective space the following upper bounds hold:

 \emph(i)ℓq(4,3)=sq(3,2)≤s\emph% arcq(3,2)

The paper is organized as follows. In Section 2, we describe a leximatrix algorithm to obtain parity check matrices of covering codes. In Sections 3 and 4, upper bounds on the length functions and are considered. In Conclusion, the results of this work are briefly analyzed; some tasks for investigation of the leximatrix algorithm are formulated. In Appendix, tables with sizes of codes obtained in this work are given.

## 2 Leximatrix algorithm to obtain parity check matrices of covering codes

The following is a version of the recursive g-parity check algorithm for greedy codes, see e.g. [6, p. 25], , [25, Section 7].

Let be the Galois field with elements.

If is prime, the elements of are treated as integers modulo .

If with prime and , the elements of are represented by integers as follows: where is a root of a primitive polynomial of .

For a -ary code of codimension , covering radius , and minimum distance , we construct a parity check matrix from nonzero columns of the form

 hi=(x(i)1,x(i)2,…,x(i)r)T, x(i)u∈Fq,

where the first (leftmost) non-zero element is 1. The number of distinct columns is . For we put . We order the columns in the list as . The columns of the list are candidates to be included in the parity check matrix.

By the above arguments connected with the formula for and the order of columns, a column is treated as its number in our list written in the -ary scale of notation. The considered order of columns is lexicographical.

The first column of the list should be included into the matrix. Then step-by-step, one takes the next column from the list which cannot be represented as a linear combination of at most columns already chosen. The process ends when no new column may be included into the matrix. The obtained matrix is a parity check matrix of an code.

We call a leximatrix the obtained parity check matrix. We call a leximatrix code the corresponding code.

It is important to note that for prime , length of a leximatrix code and the form of the leximatrix depend on and only. No other factors affect code length and structure. Actually, assume that after some step a current matrix is obtained. At the next step we should remove from our current list all columns that are linear combination of or less columns of the current matrix. For prime and the given , the result of removing is unequivocal; hence, the next column is taken uniquely.

For non-prime , the length of a leximatrix code depends on and on the form of the primitive polynomial of the field. In this work, we use primitive polynomials that are created by the program system MAGMA  by default, see Table A. In any case, the choice of the polynomial changes the leximatrix code length unessentially.

By the leximatrix algorithm, if , we obtain the -ary Hamming code. If , we obtain a quasi-perfect code; for such code is an MDS code and corresponds to a complete arc in . If , we obtain a quasi-perfect code; for such code is an MDS code and corresponds to a complete arc in ; for it is an Almost MDS code.

Let be length of the -ary leximatrix code of codimension and covering radius . It is assumed that for a non-prime field , one uses the primitive polynomial created by the program system MAGMA  by default; in particular, for non-prime , the polynomial from Table A should be taken.

Future, we represent length of an leximatrix code in the form

 nLq(r,R)=cLq(r,R)R√lnq⋅q(r−R)/r, (2.1)

where is a coefficient entirely given by (if is prime) or by , and the primitive polynomial of (if is non-prime).

###### Remark 2.1.

In the literature on the projective geometry, the columns are considered as points in the homogenous coordinates; the algorithm, described above, is called an “algorithm with fixed order of points” (FOP) [3, 4].

## 3 Upper bounds on the length functions ℓq(4,3)

The following properties of the leximatrix algorithm are useful for implementation.

###### Proposition 3.1.

Let be a prime. Then the -th column of the leximatrix of an code is the same for all where is large enough.

###### Proof.

Let be the matrix obtained in the -th step of the leximatrix algorithm. Here is a column of the matrix. A column from the list, not included in , is covered by if it can be represented as a linear combination of at most 3 columns of . Suppose that , where is the -th column in the lexicographical list of candidates. A column is the next chosen column, if and only if all the columns with are covered by . This means that, for any , at least one of the determinants , with , is equal to zero modulo . This can happen only in two cases:

, we say that is “absolutely” covered by ;

, but .

For large enough, does not divide any of the possible values of and then, at least for relatively small, the columns covered are just the absolutely covered columns. Therefore, when is large enough the leximatrices share a certain number of columns. ∎

The values of can be found with the help of calculations based on the proof of Proposition 3.1. Also, we can directly consider leximatrices for a convenient region of .

###### Example 3.2.

Values of , , together with columns , are given in Table B. So, for all prime (resp. ) the first 14 (resp. 20) columns of a parity check matrix of an MDS leximatrix code are as in Table B.

###### Proposition 3.3.
(i)

There exists a code, length of which satisfies .

(ii)

There exist quasi-perfect MDS leximatrix codes of length  for and .

###### Proof.
(i)

The existence of the code is noted in [14, Tab. 1], see also the references therein.

(ii)

The needed codes are obtained by computer search, using the leximatrix algorithm, Proposition 3.1, and Example 3.2.

Proposition 3.3 implies assertions of Theorem 1.4(i).

Lengths of leximatrix quasi-perfect MDS codes are collected in Table 1 (see Appendix) and presented in Figure 1 by the bottom solid black curve. The bound is shown in Figure 1 by the top dashed red curve. Figure 1: Lengths nLq(4,3) of [nLq(4,3),nLq(4,3)−4,5]q3 leximatrix codes (quasi-perfect MDS codes) (bottom solid black curve) vs bound 2.83√qlnq (top dashed red curve);  11≤q≤6229. Vertical magenta line marks region q≤6229

We denote by the difference between the bound and length of the leximatrix code. Let be the corresponding percent difference. Thus,

 δq(4,3)=2.83√qlnq−nLq(4,3); δ%q(4,3)=2.83√qlnq−nLq(4,3)2.83√qlnq100%.

The difference and the percent difference are presented in Figures 2 and 3, respectively. Figure 2: Difference δq(4,3) between bound 2.83√qlnq and length nLq(4,3) of [nLq(4,3),nLq(4,3)−4,5]q3 leximatrix codes; 11≤q≤6229 Figure 3: Percent difference δ%q(4,3)=2.83√qlnq−nLq(4,3)2.8√qlnq100% between bound 2.83√qlnq and length nLq(4,3) of [nLq(4,3),nLq(4,3)−4,5]q3 leximatrix code; 11≤q≤6229

By (2.1), we represent length of an leximatrix code in the form

 nLq(4,3)=cLq(4,3)3√qlnq, (3.1)

where is a coefficient entirely given by (if is prime) or by and the primitive polynomial of the field (if is non-prime). The coefficients are shown in Figure 4. Figure 4: Coefficients cLq(4,3)=nLq(4,3)/3√qlnq for [nLq(4,3),nLq(4,3)−4,5]q3 leximatrix codes (quasi-perfect MDS codes); 11≤q≤6229
###### Observation 3.4.
(i)

The difference tends to increase when grows, see Figures 1 and 2.

(ii)

The percent difference oscillates around the horizontal line . For growing , the oscillation amplitude decreases, see Figure 3.

(iii)

Coefficients oscillate around the horizontal line with a small amplitude. For growing , the oscillation amplitude decreases, see Figure 4.

Observation 3.4 gives rise to Conjecture 1.6(i) for codes.

Note that Observations 3.4(ii) and 3.4(iii) are connected with each other. Actually,

 δ%q(4,3)=2.83√qlnq−nLq(4,3)2.8√qlnq100%=⎛⎝1−cLq(4,3)2.8⎞⎠100%.
###### Remark 3.5.

It is interesting that the oscillation of the coefficients around a horizontal line, in principle, is similar to the oscillation of the values around a horizontal line in [3, Fig. 12, Observation 3.7], [4, Fig. 5, Observation 3.7].

In the papers [3, 4], small complete -arcs in the projective plane are constructed by computer search using algorithm with fixed order of points (FOP). These arcs correspond to quasi-perfect MDS codes while the algorithm FOP is analogous to the leximatrix algorithm of Section 2. Moreover, the value is defined in [3, 4] as . So, see (3.1), the coefficients and the values have the similar nature. It is possible that the oscillations mentioned have similar reasons too. However, in the present time the enigma of the oscillations is incomprehensible,

## 4 Upper bounds on the length functions ℓq(5,3)

###### Proposition 4.1.
(i)

There exist codes with  for .

(ii)

There exist Almost MDS leximatrix codes with for .

###### Proof.
(i)

The existence of the codes is noted in [10, Tab. 1], [14, Tab. 2], see also the references therein.

(ii)

The needed codes are obtained by computer search, using the leximatrix algorithm.

Proposition 4.1 implies assertions of Theorem 1.4(ii).

Lengths of leximatrix Almost MDS codes are collected in Table 2 (see Appendix) and presented in Figure 5 by the bottom solid black curve. The bound is shown in Figure 5 by the top dashed red curve. Figure 5: Lengths nLq(5,3) of [nLq(5,3),nLq(5,3)−5,5]q3 leximatrix codes (quasi-perfect Almost MDS codes) (bottom solid black curve) vs bound 33√q2lnq (top dashed red curve); 37≤q≤761. Vertical magenta line marks region q≤761

We denote by the difference between the bound and length of the leximatrix code. Let be the corresponding percent difference. Thus,

 δq(5,3)=33√q2lnq−nLq(5,3); δ%q(5,3)=33√q2lnq−nLq(5,3)33√q2lnq100%.

The difference and the percent difference are presented in Figures 6 and 7, respectively. Figure 6: Difference δq(5,3) between bound 33√q2lnq and length nLq(5,3) of [nLq(5,3),nLq(5,3)−5,5]q3 leximatrix code; 37≤q≤761 Figure 7: Percent difference δ%q(5,3)=33√q2lnq−nLq(5,3)3√q2lnq100% between bound 33√q2lnq and length nLq(5,3) of [nLq(5,3),nLq(5,3)−5,5]q3 leximatrix code; 37≤q≤761

By (2.1), we represent length of an leximatrix code in the form

 nLq(5,3)=cLq(5,3)3√q2lnq, (4.1)

where is a coefficient entirely given by (if is prime) or by and the primitive polynomial of the field (if is non-prime). The coefficients are shown in Figure