 # An efficient method to construct self-dual cyclic codes of length p^s over F_p^m+uF_p^m

Let p be an odd prime number, F_p^m be a finite field of cardinality p^m and s a positive integer. Using some combinatorial identities, we obtain certain properties for Kronecker product of matrices over F_p with a specific type. On that basis, we give an explicit representation and enumeration for all distinct self-dual cyclic codes of length p^s over the finite chain ring F_p^m+uF_p^m (u^2=0). Moreover, We provide an efficient method to construct every self-dual cyclic code of length p^s over F_p^m+uF_p^m precisely.

## 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

The class of self-dual codes is an interesting topic in coding theory due to their connections to other fields of mathematics such as Lattices, Cryptography, Invariant Theory, Block designs, etc. An effective way for the construction of self-dual codes is the use of some specific algebraic structures.

Let be a finite field of elements, where is a prime number, and denote Then is a finite chain ring and every invertible element in is of the form: , and . Let be a fixed positive integer and Then is an -free module with the usual componentwise addition and scalar multiplication by elements of . Let be an -submodule of and be an invertible element in . Then is called a linear code over of length . Moreover, is called a -constacyclic code if

 (λaN−1,a0,a1,…,aN−2)∈C, ∀(a0,…,aN−2,aN−1)∈C.

In particular, a -constacyclic code is called a negacyclic code when , and is called a cyclic code when .

Let in which the arithmetic is done modulo . In this paper, -constacyclic codes over of length are identified with ideals of the ring , under the identification map defined by for all and .

The Euclidean inner product on is defined by for all . Then the (Euclidean) dual code of a linear code over of length is defined by

 C⊥={β∈RN∣[α,β]=0, ∀α∈C},

which is also a linear code over of length . In particular, is said to be (Euclidean) self-dual if .

There were a lot of literature on linear codes, cyclic codes and constacyclic codes of length over rings () for various prime , positive integer and some positive integer (see s1 , s2 , s3 , s4 and s6 s18 , for examples).

Specifically, all constacyclic codes of length over the Galois extension rings of

were classified and their detailed structures was also established in

s9 . Dinh s10 classified all constacyclic codes of length over . Then negacyclic codes of length , constacyclic codes of length and constacyclic codes of length ( (mod )) over were investigated by Dinh et al. s11 , Chen et al. s8 and Dinh et al. s12 , respectively. We note that the representation and enumeration for self-dual cyclic codes and self-dual negacyclic codes were not studied in these papers.

Dinh et al. s13 determined the algebraic structures of all cyclic and negacyclic codes of length over , established the duals of all such codes and gave some special subclass of self-dual negacyclic codes of length over by Theorems 4.2, 4.4 and 4.9 of s13 . But the representation and enumeration for all self-dual negacyclic codes and all self-dual cyclic codes were not given.

Choosuwan et al. s5 done the following:

In pages and , they proved that every (Euclidean) self-dual cyclic code over of length is given by

 C=⟨(x−1)i0+ui1−1∑j=0hj(x−1)j,(x−1)i1⟩,

where and satisfying

 M(ps,i1)h=0

in which is an matrix over defined by

Using Theorem 3.3 of s19 for the nullity of , they obtained a formula to count the number of self-dual cyclic codes over of length (cf. Corollary 22 of s5 ), where is an arbitrary prime number.

Also Dinh et al. determined the number of self-dual cyclic codes of length over () by Section 4 of DM2018 .

But they didn’t give a method how to solve the equation and didn’t obtain an representation for solutions of this equation in s5 and the equation (2.1) in DM2018 . So they didn’t provide an explicit representation for all distinct self-dual cyclic codes over of length .

In s6 , we provided a new way different from the methods used in s8 s14 to determine the algebraic structures, generators and enumeration of -constacyclic codes over of length , where is an arbitrary positive integer satisfying and . Then we gave an explicit representation for the dual code of every cyclic code and every negacyclic code. Moreover, we provided a discriminant condition for the self-duality of each cyclic code and negacyclic code over of length . On the basis of s6 , we can consider to give an explicit representation for self-dual cyclic codes and self-dual negacyclic codes over .

Recently, by a new way different from that of s5 , we s7 gave an efficient method for the construction of all distinct self-dual cyclic codes with length over . In particular, we provide an exact formula to count the number of all these self-dual cyclic codes and corrected a mistake in Corollary 22(ii) of s5 . However, the methods and results of s7 depend heavily on that the characteristic of the field is . They can’t be used directly to the case for self-dual cyclic codes with length over where is odd. Hence we need to develop a new approach to the latter situation.

The present paper is organized as follows. In Section 2, we review the known results for self-dual cyclic codes of length over and prove that these self-dual cyclic codes are determined by a special kind of subsets in the residue class ring for certain integers , . In Section 3, we give an explicit representation of the set by studying properties for Kronecker product of matrices over with a specific type. In Section 4, we provide an efficient method to construct and represent all distinct self-dual cyclic codes of length over precisely. As an application, we list all distinct self-dual cyclic codes over of length for in Section 5. Section 6 concludes the paper.

## 2 Preliminaries

In this section, we list some known results for cyclic codes of length over the ring () needed in the following sections.

By Corollary 7.1 in s6 , every cyclic code over of length and its dual code are given by the following five cases.

Case I. codes:

with and , where .

Case II. codes:

with and

 C⊥=⟨(x−1)⋅x−1b(x−1)+u,(x−1)ps−k⟩,

where and .

Case III. codes:

with and , where .

Case IV. codes:

with
and ,
where and .

Case V. codes:

with
and ,
where , and .

As , every self-dual cyclic code over of length must contain codewords. From this, we deduce that there is no self-dual codes in Cases II, III and IV.

Let be a code in Case I. Then if and only if satisfying , i.e.,

 x−1b(x−1)−b(x)≡0 (mod (x−1)ps−1).

Let be a code in Case V. Then if and only if and satisfying . The latter is equivalent to

 x−1b(x−1)−b(x)≡0 (mod (x−1)t−1).

The former is equivalent to that

 t=ps−2k, ⌈t2⌉=ps−2k2=ps−12−k+1 and 1≤k≤ps−12.

In the light of the above discussion, we have the following conclusion.

Proposition 1 For any integer , , we denote

 Ωl={b(x)∈Fpm[x]⟨(x−1)l⟩∣x−1b(x−1)−b(x)≡0 (mod (x−1)l)}. (1)

Then all distinct self-dual cyclic codes over of length are given by the following two cases:

(i) , where .

(ii) ,
where and
.

In order to present all self-dual cyclic codes over of length explicitly, by Proposition 1 we need to determine the following subsets of :

 Ωl, where l=ps−1−2k and 0≤k≤ps−12.

Let and be matrices over of sizes and respectively. The Kronecker product of and is defined by which is a a matrix over of size . For any positive integer , we define a lower triangular matrix over as follows

where

 g(pλ)i,j=(−1)j−1(pλ−ji−j), if 1≤j≤i≤pλ. (2)

In fact, we have (cf. s5 ). Precisely, we have

(mod ), where . Moreover, we have the following property for the matrix .

Proposition 2 Let be any positive integer and set . Then

 Gpλ = Gp⊗Gpλ−1 = ⎛⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜⎝g(p)1,1Gpλ−100…0g(p)2,1Gpλ−1g(p)2,2Gpλ−10…0g(p)3,1Gpλ−1g(p)3,2Gpλ−1g(p)3,3Gpλ−1…0……………g(p)p,1Gpλ−1g(p)p,2Gpλ−1g(p)p,3Gpλ−1…g(p)p,pGpλ−1⎞⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟⎠,

where

Proof. Let and , where . As is odd, we have . Then by Lucas’s Theorem for a combinatorial identity in number theory (see Benjamin , for examples), we have

 ((p−j)pλ−1+(pλ−1−l)(i−j)pλ−1+(k−l))≡(p−ji−j)(pλ−1−lk−l) (mod p).

From these, by Equation (2),

 pλ−((j−1)pλ−1+l)=(p−j)pλ−1+(pλ−1−l)

and , we deduce

 g(pλ)(i−1)pλ−1+k,(j−1)pλ−1+l = (−1)(j−1)pλ−1+l−1(pλ−((j−1)pλ−1+l)((i−1)pλ−1+k)−((j−1)pλ−1+l)) = (−1)j−1(p−ji−j)⋅(−1)l−1(pλ−1−lk−l) = g(p)i,jg(pλ−1)k,l.

This implies that .

For examples, we have where , and

 G9=⎛⎜⎝G300−G3−G30G3−G3G3⎞⎟⎠=⎛⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜⎝100000000−1−100000001−11000000−100−100000110110000−11−1−11−1000100−100100−1−10110−1−101−11−11−11−11⎞⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟⎠.

## 3 Calculation and representation of the set Ωl

In this section, we consider how to calculate and represent the subset of defined by Equation (1), where .

For any matrix over and positive integer , let be the transpose of and

be the identity matrix of order

. In the rest of this paper, we adopt the following notation

 Sl={Bl=⎛⎜ ⎜ ⎜⎝b0b1…bl−1⎞⎟ ⎟ ⎟⎠∣l−1∑i=0bi(x−1)i∈Ωl, bi∈Fpm, i=0,1,…,l−1}. (3)

Then we have

 Ωl={(1,(x−1),…,(x−1)l−1)Bl∣Bl∈Sl} and |Ωl|=|Sl|.

In order to present the subset of polynomials in , it is equivalent to determine the set .

Theorem 1 Let and assume be the least positive integer such that Let be the submatrix in the upper left corner of defined by

 (Gl0∗∗)=Gpλ, (4)

where is a lower triangular matrix over of size . Then we have the following conclusions.

(i) .

(ii) , and .

(iii) Denote (mod ). For any , we denote . Then

 x−1b(x−1)≡(1,(x−1),…,(x−1)l−1)(GlBl) (mod (x−1)l).

(iv) Let

be the column vectors of

, i.e., for all and . Then is an -basis of . Precisely, we have and

 Sl=⎧⎪ ⎪⎨⎪ ⎪⎩⌈l2⌉∑t=1a2t−2Υ2t−1∣a2t−2∈Fpm, 1≤t≤⌈l2⌉⎫⎪ ⎪⎬⎪ ⎪⎭. (5)

Proof. (i) First, we prove that over . Since is a lower triangular matrix of order , is a lower triangular matrix and its -entry is

 (g(p)i,i)2=((−1)i−1(p−i0))2=1, i=1,2,…,p,

by Equation (2) in Section 2. Now, let and where . By the definition of and the following combinatorial identities

and , the -entry of is equal to

 i∑z=jg(p)i,zg(p)z,j = k∑h=0g(p)j+k,j+hg(p)j+h,j = = = (p−jk)k∑h=0(−1)h(kh) = 0.

As stated above, we conclude that . Now, let and assume that (mod ). Then by Propostion 2, it follows that

 G2pλ=(Gp⊗Gpλ−1)2=G2p⊗G2pλ−1=Ip⊗Ipλ−1=Ipλ.

(ii) By (i) and Equation (4) for the definition of , it follows that

This implies , and hence . From this and by linear algebra theory, we deduce that

 rank(Gl−Il)+rank(Gl+Il)≤l.

Since is a lower triangular matrix of order with diagonal entries:

 g(pλ)i,i=(−1)i−1, i=1,2,…,pλ,

by Equation (4) we see that is a lower triangular matrix with nonzero diagonal entries:

 g(pλ)2t,2t−1=(−1)2t−1−1=−2, t=1,…,⌊l2⌋,

and is a lower triangular matrix with nonzero diagonal entries:

 g(pλ)2t−1,2t−1+1=(−1)2t−2+1=2, t=1,…,⌈l2⌉.

These imply and . From these and by , we deduce that and .

(iii) In the following, we denote

 Xl=(1,(x−1),(x−1)2,…,(x−1)l−1),

for any integer : . Then . By (mod ) in , it follows that

 x−j≡xpλ−j (mod (x−1)pλ), j=0,1,2,…,pλ.

From this and by Equation (2), we deduce that

 x−j(1−x)j−1 ≡ (1+(x−1))pλ−j⋅(−1)j−1(x−1)j−1 ≡ ≡ pλ∑i=j(−1)j−1(pλ−ji−j)(x−1)i−1 (set i=k+j) ≡

for all . These imply

 (x−1,x−2(1−x),…,x−pλ(1−x)pλ−1)≡XpλGpλ (mod (x−1)pλ) (6)

by the definition of the matrix in Section 2.

As , by Equations (6) and (4) it follows that

 x−1b(x−1) = x−1(1,(x−1−1),(x−1−1)2,…,(x−1−1)l−1)Bl = x−1(1,(x−1−1),(x−1−1)2,…,(x−1−1)pλ−1)(Bl0) = (x−1,x−2(1−x),x−3(1−x)2,x−pλ(1−x)pλ−1)(Bl0) = Xpλ⋅Gpλ(Bl