1.
Introduction
Let Fn2 be the n-dimensional row vector space over the binary field F2. An binary [n,k] linear code is a k-dimensional subspace of Fn2. The weight w(X) of a vector X∈Fn2 is the number of its nonzero coordinates. If the minimum weight of nonzero vectors in an [n,k] code is d, then d is called the minimum distance of C and the code C is denoted as [n,k,d]. C is optimal if d can meet the largest value for n,k, which is denoted as [n,k,da(n,k)] or [n,k,da]. Two binary codes C and C′ are equivalent if one can be obtained from the other by permuting the coordinates [1]. They are denoted as C ≅ C′. A matrix whose rows form a basis of C is called a generator matrix of this code.
The dual code C⊥ of C is defined as C⊥ = {X∈Fn2∣X⋅Y=0 for all Y∈C}. A code C is self-orthogonal (SO) if C⊆C⊥. The hull of a linear code C was defined as Hu(C)=C⊥∩C in [2], and was called a radical code of C in the nomenclature of classical groups in [3]. Define h(C)=dimHu(C) as the hull dimension of C, and h([n,k,d])=min{h(C)∣C is a binary [n,k,d] code}.
If Hu(C)={0} (or h(C)=0), then C is an LCD code [4]. LCD cyclic codes were introduced by Massey [4] and gave an optimal linear coding solution for the two-user binary adder channel. Carlet et al. showed that LCD codes can be used to fight against side-channel attacks [5]. In recent years, much work has been done on the properties and construction of LCD codes [5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]. It has been shown in [6] that any code over Fq is equivalent to some LCD code for q≥4, which motivates people to study binary and ternary LCD codes. In this paper, we focus on the hull dimensions of binary optimal linear codes and LCD codes.
It is an important problem to determine the largest minimum weight dl(n,k) among all LCD codes for n,k. Recently, constructions of optimal LCD codes with short lengths or low dimensions have been discussed, and low and upper bounds for dl(n,k) have been established [5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]. If n≤24 and 1≤k≤n, dl(n,k) were determined, and for k≤n≤40, most of dl(n,k) were given in [6,7,8,9,10,11,12,13,14,15]. For n≤50 and k<13, Ref. [17] obtained dl(n,k) by exhaustive search. If k≤4, all dl(n,k) were determined in [8,9,10,11,12]. As for k=5, dl(n,5) was partially determined in [11,12,13] except for n=31s+t≥40 when t∈{2,8,10,12,14,16,18}. In [15], Li et al. introduced the reduced code of a linear code and developed some new approaches to determine upper bounds on optimal linear codes.
Let C be an [n,k,d] linear code with generator matrix G and parity-check matrix H, C is LCD if and only if the matrix GGT or HHT is invertible [4]. Thus, to prove C is not LCD, one only needs to verify h(C)=k−(rank(GGT))≥1 or h(C)=n−k−(rank(HHT))≥1. If all [n,k,d] linear codes have hull dimensions greater than 1, that is to say that h([n,k,d])≥1, then there is no LCD code with minimum distance d for given n,k.
In [19], Li et al. introduced two concepts called the defining vector and the weight vector of an [n,5,d] linear code with a given generator matrix, and further established relations among parameters of this code, its defining vector, and weight vector. They changed the classification problem of binary optimal self-orthogonal codes into solving the system of linear equations. Further research on defining vectors and weight vectors of optimal linear codes and their applications was made in [20]. The classifications of all optimal [n,k] codes with k≤4 and some optimal [n,k] codes with k≥5 were determined [20].
Inspired by Refs. [15,19,20], we will show all optimal [n,5] codes are not LCD for n=31s+t≥14 and t∈{2,8,10,12,14,16,18}. Set k=5 and N=31. Denote L=(l1,l2,⋯,l31) as the defining vector of an [n,5,da] code with generator matrix G (for details see Section 2), and let lmax=max1≤i≤N{li}, lmin=min1≤i≤N{li}. The main techniques used in this manuscript can be briefly described as follows:
(1) From the parameters of all [n,5,da] codes, estimate lmax and lmin according to Ref. [20].
(2) According to lmax and lmin, one can first analyze the following two items:
i) Whether C has a reduced code D with a hull dimension greater than 2.
ii) Whether C is equivalent to a code that is not LCD.
(3) If lmax and lmin do not meet any of (2), determine all such L's and all [n,5,da] codes with defining vectors L's, classify [n,5,da] codes, and calculate their hull dimensions and weight enumerators.
For details, see Definition 1, Lemmas 2 and 5. One can clearly understand the above three steps according to the proof of Lemma 5. If h(D)≥2, then h(C)≥1, it follows that C is not LCD. For all [n,5,da] codes, if all of their hull dimensions are greater than 1, then one can know any [n,5,da] code is not LCD.
Our main conclusion is given by Theorem 1.
Theorem 1. If s is an integer, t∈{2,8,10,12,14,16,18} and n=31s+t≥14, then an optimal [n,5,da(n,5)] linear code is not LCD, and we further have
Combining it with the results of Refs. [7,8,9,10,11,12,13,14,17,19] on optimal LCD codes, one can completely determine dl(n,5) for all n≥5, which is shown in Table 1 and Theorem 2.
Theorem 2. If n=31s+t≥5, then there are optimal LCD codes as follows:
(1) ([7,8,17]) If 5≤n≤13 and n≠6,10, then there is an optimal LCD [n,5,da(n,5)] code, while n=6,10, an optimal [n,5,da(n,5)−1] LCD code exists.
(2) ([9,10,11,12,13,17]) If t=3,4,5,7,11,19,20,22,26, n=31s+t≥14, then there is an optimal [n,5,da(n,5)] LCD code.
(3) If t≠0,3,4,5,7,11,16,19,20,22,26 and n=31s+t≥14, then there is an optimal [n,5,da(n,5)−1] LCD code according to Refs. [9,10,11,12,13,17] and Theorem 1 above.
(4) If t=0,16 and n=31s+t≥14, there is an optimal [n,5,da(n,5)−2] LCD code according to Ref. [19] and Theorem 1.1 above.
Remark 1. From Ref. [18], it is easy to know all optimal [n, 5] codes can achieve the Griesmer bound for 14≤n≤256. For n>256, the length n can be denoted as n=31s+t, where s≥7 and 31≤t≤61 are integers. By the juxtaposition of s simplex codes [31,5,16] and an optimal [t,5,da(t,5)] code, one can easily obtain all optimal [n,5,da(n,5)] linear codes with da(n,5) achieving the Griesmer bound for n>256. That is to say, any da(n,5) can be obtained by the Griesmer bound for all lengths n≥14. It naturally follows that dl(n,5) can be denoted by da(n,5) for some code lengths in Theorems 1 and 2.
The rest of this paper is organized as follows: In Section 2, some definitions, notations, and basic results about optimal LCD codes are given. The proof of the main result, Theorem 1, is provided in Section 3. Section 4 gives conclusions and discussions.
2.
Preliminaries
In this section, some concepts and notations will be given for later use [19,20]. The all-one vector and zero vector of length n are defined as 1n = (1,1,⋯,1)1×n and 0n = (0,0,...,0)1×n, respectively. Let iG=(G,G,⋯,G) be the juxtaposition of i copies of G for given matrix G, then the juxtaposition of i copies of C can be denoted as iC with generator matrix iG. In this article, we consider linear codes without zero coordinates and matrices without zero columns.
Let N=2k−1, consider
The matrix Sk generates the k-dimensional simplex code Sk=[2k−1,k,2k−1]. Let αi be the i-th column of Sk for 1≤i≤N. The last 2k−2m columns of Sk form a matrix Mk,m for 1≤m≤k−1, Mk,m generates the k-dimensional MDk,m=[2k−2m,k,2k−1−2m−1] MacDonald code [21]. Simplex codes Sk and MacDonald codes MDk,m for k≥4 will be used to discuss the hull dimensions of some optimal codes.
Let G=Gk×n be a generator matrix of C. If there are li copies of αi in G for 1≤i≤N, we then denote G as G=(l1α1,⋯,lNαN) for short, and call L=(l1,⋯,lN) the defining vector of C with generator matrix G. Let ljl (1≤l≤t) be different coordinates of L=(l1,l2,⋯,lN) with lj1<lj2<⋯<ljt in ascending order by the number of equal ljl. If there are ml entries equal to ljl, we say L is of type ]](lj1)m1∣⋯∣(ljt)mt]]. For example, a code with defining vector L1=(3,1,1,3,1,3,1) is an SO code, this can be derived from the type ]](1)4∣(3)3]] of L1, and L2=(s+1,s−1,s,s,s+1,s−1,s+1) is of type ]](s−1)2∣(s)2∣(s+1)3]].
Some properties of an [n,k,d] code can be characterized by its defining vectors. Relations among these objects are connected by some matrices Pk and Qk derived from the simplex code Sk [19]. On the other hand, if an [n,k,da] code is optimal, we can determine all defining vectors whose corresponding codes have such parameters by solving linear equations [19].
Let Jk be the (2k−1)×(2k−1) all-one matrix, and P2 be a (22−1)×(22−1) matrix whose rows are the non-zero codewords of S2. Using the recursive method, one can construct
where Qk=Jk−Pk for k≥2. Then, the seven rows of P3 are just the seven nonzero vectors of the simplex code S3 =[7,3,4]. For k≥3, then the matrix formed by nonzero codewords of (k+1)-dimensional simplex code can be obtained from Pk. Each row of Pk has (2k−1)'s ones and (2k−1−1)'s zeros. Hence, each row of Qk has (2k−1−1)'s ones and (2k−1)'s zeros. According to Ref. [20], Pk and Qk are symmetric matrices, and the matrix Pk is invertible over the rational field and
If C has a generator matrix G=(l1α1,⋯,lNαN), the minimum distance d of C and its codeword weights can be determined by its defining vector L=(l1,⋯,lN). Let WT=PkLT, then W=(w1,w2,⋯,wN) is a vector formed by weights of 2k−1 nonzero codewords of C, and d=min1≤i≤2k−1{wi} is the distance of C. W is called the weight vector of C [19, 20].
Suppose W=d12k−1+Λ, where Λ=(λ1,λ2,⋯,λN) with λi=wi−d≥0 and at least one λi=0. Denote σ=λ1+λ2+⋯+λN, then σ=2k−1n−d(2k−1) from WT = PkLT.
For an [n,k,d] code, to determine all defining vectors, one can solve the system of linear equations
and then obtain this equation
By determining all nonnegative integer solutions L of Eq (⋆) for given σ, one can obtain all [n,k,d] codes and their weight distributions using MATLAB [22]. The process of solving the linear equations was simplified in [19,20], and the uniqueness of some optimal codes was derived from the following known conclusions:
Proposition 3. ([19] Theorem 1) Suppose k≥3, s≥1, 1≤t≤2k−2 and n=(2k−1)s+t. Then every binary [n,k,d] code with d≥(2k−1)s and without zero coordinates is equivalent to a code with generator matrix G=((s−c(k,s,t))Sk∣B), where c(k,s,t)≤min{s,t} is a function of k,s, and t, and B has (2k−1)c(k,s,t)+t columns.
Notation 1. For s≥0, n=31s+t≥14 with t∈{2,8,10,12,14,16,18}, one can check that an optimal [n,5,da(n,5)] linear code without zero coordinates is equivalent to a code with generator matrix G=((s−c(k,s,t))Sk∣B), where c(k,s,t)≤2 and B has (2k−1)c(k,s,t)+t columns. To determine all nonnegative integer solutions L of the system of linear equations for given σ=2k−1n−d(2k−1), one only needs to determine all nonnegative integer solutions for fixed lengths n′=(2k−1)c(k,s,t)+t (see Section 3 for details).
Lemma 1. Let s≥1, k≥4, 1≤m≤k−1, N=2k−1. Then the following holds:
1) ([19] Corollary 2.2) Every [sN,k,s2k−1] code is equivalent to the SO code with generator matrix sSk.
2) ([20] Theorem 2) Each [n,k,da]=[sN+2k−2m,k,s2k−1+2k−1−2m−1] code is equivalent to the code MDs(k,m), the juxtaposition of sSk and a MD(k,m) code.
Hence, if m=1,2, and ≥3, then h([n,k,da])=k−1,k−2, k, respectively.
Notice that h([n,k,da]) can be estimated from extended codes or codes of low dimensions in [15]. We will introduce some results referring to h([n,k,da]). Since Ref. [15] is a conference report that has not been published, the detailed proofs of two lemmas will be given for readability.
Definition 1. Let C be an [n,k,d] code with generator matrix G and C1 be an [n−m,k−1,≥d] code with generator matrix G1. Suppose U1,n−m is a matrix of 1 row and n−m columns. Define 0k−1,m as the zero matrix with k−1 rows and m columns. If
then C1 is called a reduced code of C.
Lemma 2. If C1 is a reduced code of C and h(C1)=r≥2, then h(C)≥r−1≥1 and C is not LCD.
Proof. If C is an [n,k,d] code and G=(1mU1,n−m0k−1,mG1).
Let G1 and G be the generator matrices of C1 and C, respectively. One can calculate that
Since h(C1)=r≥2, we have R(G1G⊥1)=k−h(C1)=k−r≤k−2 and then R(GGT)≤R(G1GT1)+1=k−1. It naturally follows that h(C)=k−R(GGT)≥1 and C is not an LCD code, the lemma holds.□
Lemma 3. Let C be an [n,k,d] code with d odd. If Ce is an extended code of C and h(Ce)=r≥2, then Ce is an [n+1,k,d+1] code, h(C)≥r−1≥1, and C is not LCD.
Proof. If Ce is an extended code of C and He=(1n1Hn−k−1,n0Tn−k−1).
Let He and H be the parity-check matrices of Ce and C, respectively. We have
When d is odd, one can know Ce is an [n+1,k,d+1] code from Ref. [1]. Since h(Ce)=r≥2, we have R(He(He)T)=n+1−k−h(Ce)=n+1−k−r≤n−k−1, and then R(HHT)≤R(He(He)T)=n−k−1. Then one can infer that h(C)=n−k−R(HHT)≥1 and C is not LCD. The lemma holds.□
3.
The proof of Theorem 1
In this section, Theorem 1 will be proved by showing h([31s+t,5,da−1])≥1 for t=16 and h([31s+t,5,da])≥1 for t∈{2,8,10,12,14,16,18}. In the rest of this section, let C be an [n,k,d] code. Fix k=5 and N=31, and let L=(l1,l2,⋯,lN) be the defining vector of C with generator matrix G. Set lmax=max1≤i≤N{li} and lmin=min1≤i≤N{li}. We will use some results from Section 2 to calculate h(C). Our discussions are presented in four subsections. The first subsection verifies h([31s+t,5,da])≥1 for t∈{2,8,12,16}, while the other subsections prove h([31s+t,5,da])≥1 for t=10,14, and 18, respectively.
3.1. h([32s+2,5,da])≥1 and h([32s+t,5,da])≥2 for t=8,12,16
Lemma 4. If s≥1, a [31s+2,5,16s] code has hull dimension h≥1 and a [31s+9,5,16s+4] code has hull dimension h≥3.
Proof. A [31s+2,5,16s] code has a reduced code [30s+1,4,16s], which can give a reduced code [28s,3,16s]=[7×4s,3,4×4s]. Notice its self-orthogonality, one can infer h([31s+2,5,16s])≥1.
A [31s+9,5,16s+4] code has a reduced code [30s+8,4,16s+4]=[15×2s+8,4,8×2s+4]. It follows that a [30s+8,4,16s+4] code is SO, and then h([31s+9,5,16s+4])≥3.□
For clarity, the following example is given to show the process of finding L and calculating h([n,5,da]).
Example 1. Let s≥1 and C be an optimal [31s+13,5,16s+6] code. One can check σ=24+6 and s−1≤li≤s+1 for L=(l1,l2,⋯,lN). According to Ref. [16], there is no [13,5,6] code, thus lmax=s+1 and lmin=s−1. Hence, L=(s−1)1N+L′, where L′ is the defining vector of a [44,5,22] code with given generator matrix. We can assume the type of L′ is ]](0)a∣(1)b∣(2)c]], where a≥1, a+b+c=31, and b+2c=44. From Eq (⋆), one can obtain
By solving Eq (⋆′), we get all possible L′ and L. There are a total of 4805 solutions; these (L′)'s can be divided into two groups, one group has 3720 solutions, and the other has 1085 solutions. Using Magma [23], one can check that all (L′)'s in the same group give equivalent codes. Hence, there are altogether two inequivalent [31s+13,5,16s+6] codes. More details of h([31s+13,5,16s+6]) and weight enumerators of inequivalent [31s+13,5,16s+6] codes are given in the following lemma.
Lemma 5. If s≥1, then a [31s+13,5,16s+6] code and a [31s+17,5,16s+8] code both have hull dimension h≥3.
Proof. Case 1. Let n=31s+13 and d=16s+6. Then one can check σ=24+6 and s−1≤li≤s+1 for 1≤i≤N. Since there is no [13,5,6] code, L may have lmax=s+1 and lmin=s−1, which implies L=(s−1)1N+L′, where L′ is the defining vector of a [44,5,22] code with a given generator matrix. In this case, C is the juxtaposition of (s−1)S5 and a [44,5,22] code. Suppose L is of type ]](s−1)a∣(s)b∣(s+1)c]] with a≥1. By solving Eq (⋆), one can obtain that L′ is one of the following two types ]](0)a∣(1)b∣(2)c]]:
L′1: ]](0)1∣(1)16∣(2)14]]; L′2: ]](0)3∣(1)12∣(2)16]].
There are 3720 solutions (L′)'s that are of type L′1, all these 3720 defining vectors give equivalent [44,5,22] codes. They are equivalent to a code with defining vector L′1,1, where L′1,1 =(1111101111111112222222222212122). One can check that the corresponding code C has h=h(C)=3 and weight enumerator 1+23y16s+6+7y16s+8+y16s+14.
There are 1085 solutions (L′)'s that are of type L′2, all these 1085 defining vectors give equivalent [44,5,22] codes. They are equivalent to a code with defining vector L′2,1, where L′2,1 =(1111101111010112222222222222222). Similarly, one can further calculate that the corresponding code C has hull dimension h=3 and weight enumerator 1+24y16s+6+6y16s+8+y16s+16.
Summarizing previous discussions, we have h([31s+13,5,16s+6])=3.
Case 2. Let n=31s+17 and d=16s+8. It is easy to check σ=24+8 and s−1≤li≤s+2 for 1≤i≤N. Thus, L may be one of the following types:
(1) lmax=s+2; (2) lmax=s+1 and lmin=s; (3) lmax=s+1 and lmin=s−1.
If lmax=s+2, then C has a reduced code [30s+15,4,16s+8] =[15m,4,8m] where m=2s+1. It is easy to know a [30s+15,4,16s+8] code is SO, and one can further deduce that h(C)≥3.
If lmax=s+1 and lmin=s, then L=s1N+L0, where L0 is the defining vector of a projective [17,5,8] code with the given generator matrix. In this case, C is the juxtaposition of sS5 and a projective [17,5,8] code. According to Ref. [24], a [17,5,8] code is unique, and its hull dimension h=4.
If lmax=s+1 and lmin=s−1, then L=(s−1)1N+L′, where L′ is the defining vector of a [48,5,24] code with given generator matrix. In this case C is the juxtaposition of (s−1)S5 and a [48,5,24] code. Suppose L is of type ]](s−1)a∣(s)b∣(s+1)c]] with a≥1. By solving Eq (⋆), we obtain the following types ]](0)a∣(1)b∣(2)c]] of L′:
L′1: ]](0)1∣(1)12∣(2)18]]; L′2: ]](0)3∣(1)8∣(2)20]]; L′3: ]](0)7∣(1)0∣(2)24]].
There are altogether two classes of inequivalent [48,5,24] codes with defining vectors of type ]](0)1∣(1)12∣(2)18]]. Denote their defining vectors as L′1,i (i=1,2), respectively. Then the corresponding codes D have h and weight enumerators as follows:
L′1,1=(2201111211212212222222221122112), h=5, 1+24y16s+8+6y16s+12;
L′1,2=(2202112211212212222211221121221), h=3, 1+24y16s+8+8y16s+10+y16s+16.
There are a class of [48,5,24] codes with defining vectors of type ]](0)3∣(1)8∣(2)20]] and a class of [48,5,24] codes with defining vectors of type ]](0)7∣(1)0∣(2)24]], respectively. Denote their defining vectors as L′j (j=3,4). Then the corresponding codes D have hull dimensions h and weight enumerators as follows:
L′3=(2202002211212212222222221121221), h=5, 1+26y16s+8+4y16s+12+y16s+16;
L′4=(2202002200202202222222222222222), h=5, 1+28y16s+8+3y16s+16.
Summarizing previous discussions, we have h([31s+17,5,16s+8])≥3. □
From the previous lemmas, one can derive the following conclusion:
Lemma 6. The codes [31s+8,5,16s+3], [31s+12,5,16s+5] and [31s+16,5,16s+7] all have hull dimension h≥2, hence they are not LCD codes.
Combining with known results on [n,5] LCD codes of lengths n=8,9,12, 13,16,33, we can obtain that [31s+t,5,16s+dt] are optimal LCD codes, where dt=−1,2,3,4,5,6 for t=2,8,9,12,13,16, respectively.
Thus, Theorem 1 holds for the cases of t=2,8,12,16.
3.2. h([31s+10,5,16s+4])≥1
In this subsection, set n=31s+10 and d=16s+4. It is easy to check σ=2×24+4 and s−2≤li≤s+2 for 1≤i≤N. Thus, L may be one of the following types:
(1) lmax=s+2; (2) lmax=s+1 and lmin=s;
(3) lmax=s+1 and lmin=s−1; (4) lmax=s+1 and lmin=s−2.
If lmax=s+2, then C has a reduced [30s+8,4,16s+4] SO code. Hence, in this case, one can deduce that h(C)≥3 and C is not LCD.
If lmax=s+1 and lmin=s, then L=s1N+L0, where L0 is the defining vector of a projective [10,5,4] code with the given generator matrix. In this case, C is the juxtaposition of sS5 and a [10,5,4] code. According to Ref. [10], a [10,5,4] code is not an LCD code. Hence C is also not LCD.
For verifying Cases (3) and (4), two additional lemmas to determine h(C) are provided as follows:
Lemma 7. If L satisfies lmax=s+1 and lmin=s−1, then h(C)≥1 and C is not an LCD code.
Proof. If lmax=s+1 and lmin=s−1, then s≥1 and L=(s−1)1N+L′, where L′ is the defining vector of a [41,5,20] code with the given generator matrix. In this case, C is the juxtaposition of (s−1)S5 and a [41,5,20] code. Suppose L is of type ]](s−1)a∣(s)b∣(s+1)c]] with a≥1. By solving Eq (⋆), we obtain the following types of L′:
L′1: ]](0)1∣(1)19∣(2)11]]; L′2: ]](0)2∣(1)17∣(2)12]]; L′3: ]](0)3∣(1)15∣(2)13]];
L′4: ]](0)4∣(1)13∣(2)14]]; L′5: ]](0)5∣(1)11∣(2)15]]; L′6: ]](0)6∣(1)9∣(2)16]];
L′7: ]](0)7∣(1)7∣(2)17]].
There are nineteen classes of inequivalent [41,5,20] codes with defining vectors of the above seven types; all these codes have hull dimension h≥1, hence h([31s+10,5,16s+4])≥1 when L satisfying lmax=s+1 and lmin=s−1. For the defining vectors L′i,j of these inequivalent [41,5,20] codes, h(C), and weight enumerators of their corresponding [31s+10,5,16s+4] codes, one can refer to Table 2. □
Lemma 8. If L meets lmax=s+1 and lmin=s−2, then h(C)≥3 and C is not an LCD code.
Proof. If lmax=s+1 and lmin=s−2, then s≥2 and L=(s−2)1N+L″, where L″ is a defining vector of a [72,5,36] code with the given generator matrix. In this case, C is the juxtaposition of (s−2)S5 and a [72,5,36] code. Suppose L is of type ]](s−2)a∣(s−1)b∣(s)c∣(s+1)d]] with a≥1. By solving Eq (⋆), we obtain the following six types of L″:
L″1,0: ]](0)1∣(1)0∣(2)18∣(3)12]]; L″1,2: ]](0)1∣(1)2∣(2)14∣(3)14]];
L″1,4: ]](0)1∣(1)4∣(2)10∣(3)16]]; L″1,6: ]](0)1∣(1)6∣(2)6∣(3)18]];
L″3,4: ]](0)3∣(1)4∣(2)4∣(3)20]]; L″7,0: ]](0)7∣(1)0∣(2)0∣(3)24]].
There are thirteen classes of inequivalent [72,5,36] codes with defining vectors of the above types, seven classes have hull dimension h=5, and six classes have hull dimension h=3, thus all these codes have hull dimensions greater than 3 and h([31s+10,5,16s+4])≥3 when L satisfies lmax=s+1 and lmin=s−2. For details of the defining vectors L″i,j of these inequivalent [72,5,36] codes, h(C), and weight enumerators of their corresponding [31s+10,5,16s+4] codes, see Table 3.
Summarizing the above, we have shown h([31s+10,5,16s+4])≥1 for all s≥1. □
3.3. h([31s+14,5,16s+6])≥1
In this subsection, let n=31s+14 and d=16s+6. It is easy to check for this code, σ=2×24+6 and s−2≤li≤s+2 for 1≤i≤N. Thus, L may have the following types:
(1) lmax=s+2;
(2) lmax=s+1 and lmin=s;
(3) lmax=s+1 and lmin=s−1;
(4) lmax=s+1 and lmin=s−2.
If lmax=s+2, then C has a reduced code [30s+12,4,16s+6] with hull dimension h=2. Thus, in this case, one can deduce that h(C)≥1, and C is not an LCD code.
If lmax=s+1 and lmin=s, then L=s1N+L0, where L0 is the defining vector of a projective [14,5,6] code with the given generator matrix. In this case, C is the juxtaposition of sS5 and a [14,5,6] code. According to Refs. [10,11], one can know a [14,5,6] code is not LCD, and then neither is C.
Lemma 9. If L satisfies lmax=s+1 and lmin=s−1, then h(C)≥1 and C is not an LCD code.
Proof. If lmax=s+1 and lmin=s−1, then L=(s−1)1N+L′, where L′ is the defining vector of a [45,5,22] code with the given generator matrix. In this case, C is the juxtaposition of (s−1)S5 and a [45,5,22] code. Suppose L is of type ]](s−1)a∣(s)b∣(s+1)c]] with a≥1. By solving Eq (⋆), we obtain the following seven types ]](0)a∣(1)b∣(2)c]] of L′:
L′1: ]](0)1∣(1)15∣(2)15]]; L′2: ]](0)2∣(1)13∣(2)16]]; L′3: ]](0)3∣(1)11∣(2)17]]; L′4: ]](0)4∣(1)9∣(2)18]];
L′5: ]](0)5∣(1)7∣(2)19]]; L′6: ]](0)6∣(1)5∣(2)20]]; L′7: ]](0)7∣(1)3∣(2)21]].
There are twenty-one classes of inequivalent [45,5,22] codes with defining vectors of the above seven types. And all these codes have hull dimension h≥1, hence h([31s+14,5,16s+6])≥1 when L satisfies lmax=s+1 and lmin=s−1. For details of the defining vectors L′i,j of these inequivalent [45,5,22] codes, h(C), and weight enumerators of their corresponding [31s+14,5,16s+6] codes, one can refer to Table 4.
□
Lemma 10. If L has lmax=s+1 and lmin=s−2, then h(C)≥3, and C is not an LCD code.
Proof. If lmax=s+1 and lmin=s−2, then s≥2 and L=(s−2)1N+L″, where L″ is the defining vector of a [76,5,38] code with given generator matrix. In this case, C is the juxtaposition of (s−2)S5 and a [76,5,38] code. Suppose L is of type ]](s−2)a∣(s−1)b∣(s)c∣(s+1)d]] with a≥1. By solving Eq (⋆), we obtain the following types ]](0)a∣(1)b∣(2)c∣(3)d]] of L″:
L″1,0: ]](0)1∣(1)0∣(2)14∣(3)16]]; L″1,2: ]](0)1∣(2)2∣(2)10∣(3)18]];
L″1,4: ]](0)1∣(1)4∣(2)6∣(3)20]]; L″1,6: ]](0)1∣(1)6∣(2)2∣(3)22]];
L″3,0: ]](0)3∣(1)0∣(2)8∣(3)20]]; L″3,4: ]](0)3∣(1)4∣(2)0∣(3)24]].
There are ten classes of inequivalent [76,5,38] codes with the defining vectors of the above six types. And all these codes have hull dimension h≥3, hence h([31s+14,5,16s+6])≥3 when L satisfies lmax=s+1 and lmin=s−2. For the defining vectors L″i,j of these inequivalent [76,5,38] codes, h(C), and their weight enumerators of [31s+14,5,16s+6] codes, see Table 5.
Summarizing the above, we have shown h([31s+14,5,16s+6])≥1 for all s≥1. □
3.4. h([31s+18,5,16s+8])≥1
In this subsection, fix n=31s+18 and d=16s+8. It is easy to check σ=2×24+8 and s−2≤li≤s+3 for 1≤i≤N. Thus, L may have the following types:
(1) lmax=s+3; (2) lmax=s+2; (3) lmax=s+1 and lmin=s;
(4) lmax=s+1 and lmin=s−1; (5) lmax=s+1 and lmin=s−2.
If lmax=s+3, then C has a reduced [30s+15,4,16s+8] SO code. It naturally follows that h(C)≥3 and C is not LCD.
If lmax=s+2, then C has a reduced code [30s+16,4,16s+8]=[15m+1,4,8m] for m=2s+1, which is a code with hull dimension h≥2, and one can deduce that h(C)≥1 and C is not LCD.
If lmax=s+1 and lmin=s, then L=s1N+L0, where L0 is the defining vector of a projective [18,5,8] code. In this case, C is the juxtaposition of sS5 and an [18,5,8] code. According to [10,11], an [18,5,8] code is not LCD and h([18,5,8])≥1, hence h(C)≥1 and C is not LCD.
For L satisfying Cases (4) or (5), we use the following two lemmas to verify h(C)≥1.
Lemma 11. If L meets lmax=s+1 and lmin=s−2, then h(C)≥1 and C is not an LCD code.
Proof. If lmax=s+1 and lmin=s−2, then L=(s−1)1N+L′, where L′ is the defining vector of a [49,5,24] code with the given generator matrix. In this case, C is the juxtaposition of (s−1)S5 and a [49,5,24] code. By solving Eq (⋆), we obtain the following types of L′:
L′1: ]](0)1∣(1)11∣(2)19]]; L′2: ]](0)2∣(1)9∣(2)20]]; L′3: ]](0)3∣(1)7∣(2)21]];
L′4: ]](0)4∣(1)5∣(2)22]]; L′5: ]](0)6∣(1)1∣(2)24]].
There are fifteen classes of inequivalent [49,5,24] codes with defining vectors of the above five types, all these codes have h≥1, hence h([31s+18,5,16s+8])≥1 when L satisfies lmax=s+1 and lmin=s−2. For details of the defining vectors L′i,j of these inequivalent [49,5,24] codes, h(C), and their weight enumerators of [31s+18,5,16s+8] codes, see Table 6.
□
Lemma 12. If L has lmax=s+1 and lmin=s−2, then h(C)≥3, and C is not an LCD code.
Proof. If lmax=s+1 and lmin=s−2, then s≥2 and L=(s−2)1N+L″, where L″ is the defining vector of an [80,5,40] code with the given generator matrix. In this case, C is the juxtaposition of (s−2)S5 and an [80,5,40] code. Suppose L is of type ]](s−2)a∣(s−1)b∣(s)c∣(s+1)d]] with a≥1. By solving Eq (⋆), we obtain the following types of L″:
L″1,0: ]](0)1∣(1)0∣(2)10∣(3)20]]; L″1,2: ]](0)1∣(2)2∣(2)6∣(3)22]];
L″1,4: ]](0)1∣(1)4∣(2)2∣(3)24]]; L″3,0: ]](0)3∣(1)0∣(2)4∣(3)24]].
There are seven classes of inequivalent [80,5,40] codes with defining vectors of the above four types; all these codes have h≥3, hence h([31s+18,5,16s+8])≥3 when L satisfying lmax=s+1 and lmin=s−2. For details of the defining vectors L″i,j of these inequivalent [80,5,40] codes, and h(C) and weight enumerators of their corresponding [31s+18,5,16s+8] codes, see Table 7.
Summarizing the above, we have shown h([31s+18,5,16s+8])≥1 for all s≥1. □
4.
Conclusions
Combining with known results on optimal LCD codes, the minimum distances of all binary optimal LCD codes of dimension 5 have been wiped out in this manuscript. More precisely, we have determined the minimum distances of optimal [n,5] LCD codes with n=31s+t≥14 and t∈{2,8,10,12,14,16,18}, which have not been systematically investigated in the literature. By the methods of reduced codes, classifying optimal linear codes and calculating the hull dimension of C, one may further study the classification of optimal linear codes, and determine the minimum distances of optimal LCD codes with higher dimensions.
Author contributions
Yang Liu, Ruihu Li, Qiang Fu and Hao Song: Writing − review & editing. All authors have read and approved the final version of the manuscript for publication.
Use of AI tools declaration
The authors declare they have not used Artificial Intelligence (AI) tools in the creation of this article.
Acknowledgements
We are sincerely indebted to the reviewers and editors for their comments and suggestions that have greatly improved the presentation and quality of this paper. This work is supported by Natural Science Foundation of Shaanxi Province under Grant Nos. 2024JC-YBMS-055, 2023-JC-YB-003, 2023-JC-QN-0033, National Natural Science Foundation of China under Grant No. U21A20428.
Conflict of interest
We declare that we have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.