# Matrix-Product Codes over Commutative Rings and Constructions Arising fromσ,δ-Codes

Authors: Mhammed Boulagouaz; Abdulaziz Deajim
Journal: Journal of Mathematics
 (2021)

---

## Abstract

A well-known lower bound (over finite fields and some special finite commutative rings) on the Hamming distance of a matrix-product code (MPC) is shown to remain valid over any commutative ringR. A sufficient condition is given, as well, for such a bound to be sharp. It is also shown that an MPC is free when its input codes are all free, in which case a generator matrix is given. If R is finite, a sufficient condition is provided for the dual of an MPC to be an MPC, a generator matrix for such a dual is given, and characterizations of LCD, self-dual, and self-orthogonal MPCs are presented. Finally, the results of this paper are used along with previous results of the authors to construct novel MPCs arising from σ,δ-codes. Some properties of such constructions are also studied.


---

## Body

## 1. Introduction

Over the past two decades, studying codes over commutative rings (especially finite ones) and their properties has been attracting a great deal of attention. As far as engineering applications are concerned, it is understood that codes over special types of commutative rings are more relevant; namely, finite Frobenius rings. For a very nice survey of such development, and for relevant references, one can check [1–3]. From a purely mathematical point of view, however, the authors believe that when certain results can be verified over more general commutative rings, then it would be reasonable to pursue such approach for the sake of mathematical interest (an example of such approach is seen in [3]).


### 1.1. Linear Codes

In this work, if not otherwise specified,R denotes a commutative ring with identity and UR the multiplicative group of all invertible elements of R. A nonempty subset C of the free R-module Rn is called a code over R of length n, and an element of C is called a codeword. If C is an R-submodule of Rn, then C is called a linear code over R. The R-submodule of Rn generated by a code in Rn is obviously a linear code over R, so all codes considered in this paper are linear. If C is a free R-submodule of Rn of rank k (i.e., C has an R-basis whose cardinality is k), then C is called a free linear code over R of rank k, and we express this by saying that C is an n,k-linear code over R. If C is an n,k-linear code over R, we say that a matrix G∈Mk,nR is a generator matrix of C if the rows of G form an R-basis of C. We, thus, write C=xG|x∈Rk.On the freeR-module Rn, consider the (Euclidean) bilinear form ⋅,⋅:Rn×Rn⟶R defined by <x1,…,xn,y1,…,yn>=∑i=1nxiyi. With respect to this bilinear form, define the dual C⊥ of any code C over R by C⊥=x∈Rn|x,y=0 for all y∈C. It is easy to check that C⊥ is a linear code over R if C is so. When C⊆C⊥ (resp. C=C⊥), we say that C is self-orthogonal (resp., self-dual). A code C is called linear complementary dual (LCD for short) if C∩C⊥=0 (see [4]).


### 1.2. Matrix-Product Codes

Constructing codes (with certain properties) from smaller ones has lately been an important problem in pursuit by coding theorists. In particular, studying the effect of the properties of the smaller codes on the properties of the constructed codes is crucial. An interesting such construction is the construction of matrix-product codes over finite fields first introduced by Blackmore and Norton in [5]. Ever since the introduction, researchers have been trying to pave new tracks in this area. Particularly relevant to us here are constructions of matrix-product codes over various commutative rings (see, for instance, [6–11]).LetCi be an n,ki-linear code over R, for i=1,…,s. Writing codewords of the codes Ci in column form, let c1,…,cs be the n×s matrix whose columns are c1∈C1,…,cs∈Cs. Consider the following subset of the set Mn×sR of n×s matrices with entries in R:(1)C1,…,Cs=c1,…,cs|ci∈Ci,i=1,…,s.Fors≤l and a matrix A∈Ms×lR, define the matrix-product code associated with C1,…,Cs and A to be(2)C1,…,CsA≔c1,…,csA|ci∈Ci,i=1,…,s⊆Mn×lR.As the threeR-modules Mn×lR, Rnl, and Rnl are isomorphic, C1,…,CsA can be thought of as a code of length nl over R in an obvious way, and we can look at codewords of C1,…,CsA as elements of either of these three modules. More specifically, if A=aij and ci=x1i,…,xnit∈Ci for i=1,…,s, then the codeword c1,…,csA of C1,…,CsA is the matrix:(3)∑i=1sx1iai1⋯∑i=1sx1iail∑i=1sx2iai1⋯∑i=1sx2iail⋮⋯⋮∑i=1sxniai1⋯∑i=1sxniail∈Mn×lR.This matrix can be identified with the its corresponding element ofRnl, so the codeword c1,…,csA can be looked at as the following element:(4)∑i=1sx1iai1,…,∑i=1sx1iail,…,∑i=1sxniai1,…,∑i=1sxniail∈Rnl.On the contrary, as thekth column of the above matrix is ∑i=1saikci∈Rn, the codeword c1,…,csA can be looked at as the following l-tuple with coordinates from Rn:(5)∑i=1sai1ci,…,∑i=1sailci∈Rnl.It should be noted thatC1…,CsA is linear if all Ci are linear.Some of the well-known code constructions turned out to be matrix-product codes. For instance, the Plotkinsu|u+v−construction and the ternary u+v+w|2u+v|u−construction are only examples of matrix-product codes with matrices 1101 and 121110100, respectively (see [5]). Moreover, recent new constructions of linear codes arising from matrix-product codes have been evolving (see [7, 12–16]).


### 1.3. Points of Investigation and Contributions

In general, some of the serious differences between linear codes over fields versus linear codes over commutative rings are apparent from the following:(1)
A linear codeC⊆Rn may not be free. Due to this, it is not possible to talk about a generator matrix of a nonfree code in the sense of the definition of such a matrix we have given. In this regard, we give in Proposition 2 sufficient conditions for a matrix-product code over a commutative ring to be free, and we also give its generator matrix in Corollary 1.(2)
When a codeC is free over R, its dual C⊥ may not be free. Even if C and C⊥ are both free codes over R of length n, the equality rankC+rankC⊥=n may not hold. With respect to these issues, it follows from [10, Proposition 2.9] that if R is a finite commutative ring and C is an n,k-linear code over R, then C⊥ is an n,n−k-linear code over R. So, in our relevant results, we work over finite commutative rings. Nonetheless, as was stated earlier, whenever a result can be proved valid over more general rings, then we state it and prove in such generality.(3)
In an effort to extend results on the minimum Hamming distance of matrix-product codes over finite fields to those over general commutative rings, we prove in Theorem1 that a well-known lower bound for the minimum distance of a matrix-product code over a finite field or a finite chain ring remains valid over a commutative ring and we, further, give a sufficient condition for such a lower bound to be sharp.(4)
When we impose finiteness onR, more results are proved. Over such a ring, we generalize in Proposition 3 a well-know fact that tells when the dual of a matrix-product code is also a matrix-product code. This is used in Corollary 2 to give a generator matrix of the dual for a matrix-product code, and it is also used in Corollary 3 to give characterizations of self-dual, self-orthogonal, and LCD matrix-product codes.(5)
As an interesting application, we study in Section4 matrix-product codes arising from σ,δ-codes over finite commutative rings. In this section, we bring together results from the authors’ work [17] and results proved in this paper to construct matrix-product codes out of σ,δ-codes, give generator matrices for such codes and their dual codes (Propositions 4 and 5), and give a criterion in Proposition 6 which tests when such a code is self-dual. Appropriate highlighting examples are also given throughout.


## 1.1. Linear Codes

In this work, if not otherwise specified,R denotes a commutative ring with identity and UR the multiplicative group of all invertible elements of R. A nonempty subset C of the free R-module Rn is called a code over R of length n, and an element of C is called a codeword. If C is an R-submodule of Rn, then C is called a linear code over R. The R-submodule of Rn generated by a code in Rn is obviously a linear code over R, so all codes considered in this paper are linear. If C is a free R-submodule of Rn of rank k (i.e., C has an R-basis whose cardinality is k), then C is called a free linear code over R of rank k, and we express this by saying that C is an n,k-linear code over R. If C is an n,k-linear code over R, we say that a matrix G∈Mk,nR is a generator matrix of C if the rows of G form an R-basis of C. We, thus, write C=xG|x∈Rk.On the freeR-module Rn, consider the (Euclidean) bilinear form ⋅,⋅:Rn×Rn⟶R defined by <x1,…,xn,y1,…,yn>=∑i=1nxiyi. With respect to this bilinear form, define the dual C⊥ of any code C over R by C⊥=x∈Rn|x,y=0 for all y∈C. It is easy to check that C⊥ is a linear code over R if C is so. When C⊆C⊥ (resp. C=C⊥), we say that C is self-orthogonal (resp., self-dual). A code C is called linear complementary dual (LCD for short) if C∩C⊥=0 (see [4]).


## 1.2. Matrix-Product Codes

Constructing codes (with certain properties) from smaller ones has lately been an important problem in pursuit by coding theorists. In particular, studying the effect of the properties of the smaller codes on the properties of the constructed codes is crucial. An interesting such construction is the construction of matrix-product codes over finite fields first introduced by Blackmore and Norton in [5]. Ever since the introduction, researchers have been trying to pave new tracks in this area. Particularly relevant to us here are constructions of matrix-product codes over various commutative rings (see, for instance, [6–11]).LetCi be an n,ki-linear code over R, for i=1,…,s. Writing codewords of the codes Ci in column form, let c1,…,cs be the n×s matrix whose columns are c1∈C1,…,cs∈Cs. Consider the following subset of the set Mn×sR of n×s matrices with entries in R:(1)C1,…,Cs=c1,…,cs|ci∈Ci,i=1,…,s.Fors≤l and a matrix A∈Ms×lR, define the matrix-product code associated with C1,…,Cs and A to be(2)C1,…,CsA≔c1,…,csA|ci∈Ci,i=1,…,s⊆Mn×lR.As the threeR-modules Mn×lR, Rnl, and Rnl are isomorphic, C1,…,CsA can be thought of as a code of length nl over R in an obvious way, and we can look at codewords of C1,…,CsA as elements of either of these three modules. More specifically, if A=aij and ci=x1i,…,xnit∈Ci for i=1,…,s, then the codeword c1,…,csA of C1,…,CsA is the matrix:(3)∑i=1sx1iai1⋯∑i=1sx1iail∑i=1sx2iai1⋯∑i=1sx2iail⋮⋯⋮∑i=1sxniai1⋯∑i=1sxniail∈Mn×lR.This matrix can be identified with the its corresponding element ofRnl, so the codeword c1,…,csA can be looked at as the following element:(4)∑i=1sx1iai1,…,∑i=1sx1iail,…,∑i=1sxniai1,…,∑i=1sxniail∈Rnl.On the contrary, as thekth column of the above matrix is ∑i=1saikci∈Rn, the codeword c1,…,csA can be looked at as the following l-tuple with coordinates from Rn:(5)∑i=1sai1ci,…,∑i=1sailci∈Rnl.It should be noted thatC1…,CsA is linear if all Ci are linear.Some of the well-known code constructions turned out to be matrix-product codes. For instance, the Plotkinsu|u+v−construction and the ternary u+v+w|2u+v|u−construction are only examples of matrix-product codes with matrices 1101 and 121110100, respectively (see [5]). Moreover, recent new constructions of linear codes arising from matrix-product codes have been evolving (see [7, 12–16]).


## 1.3. Points of Investigation and Contributions

In general, some of the serious differences between linear codes over fields versus linear codes over commutative rings are apparent from the following:(1)
A linear codeC⊆Rn may not be free. Due to this, it is not possible to talk about a generator matrix of a nonfree code in the sense of the definition of such a matrix we have given. In this regard, we give in Proposition 2 sufficient conditions for a matrix-product code over a commutative ring to be free, and we also give its generator matrix in Corollary 1.(2)
When a codeC is free over R, its dual C⊥ may not be free. Even if C and C⊥ are both free codes over R of length n, the equality rankC+rankC⊥=n may not hold. With respect to these issues, it follows from [10, Proposition 2.9] that if R is a finite commutative ring and C is an n,k-linear code over R, then C⊥ is an n,n−k-linear code over R. So, in our relevant results, we work over finite commutative rings. Nonetheless, as was stated earlier, whenever a result can be proved valid over more general rings, then we state it and prove in such generality.(3)
In an effort to extend results on the minimum Hamming distance of matrix-product codes over finite fields to those over general commutative rings, we prove in Theorem1 that a well-known lower bound for the minimum distance of a matrix-product code over a finite field or a finite chain ring remains valid over a commutative ring and we, further, give a sufficient condition for such a lower bound to be sharp.(4)
When we impose finiteness onR, more results are proved. Over such a ring, we generalize in Proposition 3 a well-know fact that tells when the dual of a matrix-product code is also a matrix-product code. This is used in Corollary 2 to give a generator matrix of the dual for a matrix-product code, and it is also used in Corollary 3 to give characterizations of self-dual, self-orthogonal, and LCD matrix-product codes.(5)
As an interesting application, we study in Section4 matrix-product codes arising from σ,δ-codes over finite commutative rings. In this section, we bring together results from the authors’ work [17] and results proved in this paper to construct matrix-product codes out of σ,δ-codes, give generator matrices for such codes and their dual codes (Propositions 4 and 5), and give a criterion in Proposition 6 which tests when such a code is self-dual. Appropriate highlighting examples are also given throughout.


## 2. Matrix-Product Codes over Commutative Rings

In this section, unless further assumptions are stated,R stands for a commutative ring with identity.Definition 1.
LetA∈Ms×lR with s≤l.(i)
If the rows ofA are linearly independent over R, we say that A has full rank over R.(ii)
If there isB∈Ml×sR such that AB=Is (the s×s identity matrix), we say that A is right invertible and B is the right inverse of A. Left invertibility is defined similarly. If s=l, we say that A is invertible if it has both right and left inverses.(iii)
Ifs=l and the determinant detA is a unit of R, then we say that A is nonsingular.Proposition 1.
IfA∈Ms×sR, then the following statements are equivalent:(i)
A is invertible.(ii
A is nonsingular.If, further,R is finite, then the above two statements are equivalent to the following:(iii)
A has full rank.Proof.
The equivalence of the first two statements follows from the standard argument of computing the inverse of a square matrix ([18]). For the last statement, see [10, Corollary 2.8].Proposition 2.
LetA=aij∈Ms×lR be of full rank and Ci be n,ki-linear codes over R for i=1,…,s. Then the matrix-product code C1,…,CsA is an nl,∑i=1ski-linear code over R. If, further, R is finite, then C1,…,CsA=∏i=1i=sCiProof.
The map(6)ϕ:∏i=1sCi⊆Rns⟶C1,…,CsA⊆Mn×lR≃Rnl,c1,…,cs↦c1,…,csAis a homomorphism of R-modules. If c1,…,cs∈∏i=1sCi is such that ϕc1,…,cs=0, then for each 1≤k≤n and 1≤t≤l, we have ∑j=1sxkjajt=0. As A has full rank over R, it follows that for each 1≤k≤n and 1≤t≤l, we have xkj=0. Therefore ϕ is injective. It is clear, by construction, that ϕ is surjective and, therefore, the rank of C1,…,CsA is equal to the rank of ∏i=1sCi, which is k1+⋯+ks. Finally, the last statement follows from the bijectivity of ϕ.Lemma 1.
LetM be a free R-module of rank k, and S a system of k elements of M. If S generates M over R, then S is a basis of M over R.Proof.
Assume thatS=s1,…,sk, and let B=e1,…,ek be an R-basis of M. Consider the R-module homomorphism(7)f:M=∑i=1kRsi⟶M=⊕i=1kRei,a1s1+⋯+aksk↦a1e1+⋯+akek.
If∑i=1kaisi=0 with ai∈R, then f∑i=1kaisi=∑i=1kaiei=0. Since e1,…,es are linearly independent over R, a1=⋯=as=0. Thus, S is linearly independent and, hence, S is an R-basis of M.Remark 1.
In contrast with vector spaces over fields, one should be warned that withM as in Lemma 1, a linearly independent system whose cardinality is k is not necessarily an R-basis of M. For instance, looking at ℤ as a free ℤ-module of rank 1, we notice that 2 is linearly independent over ℤ but does not generate ℤ.Corollary 1.
LetA=aij∈Ms×lR be of full rank, and C1,…,Cs be n,ki-linear codes over R, respectively. If Gi∈Mki×nR is a generator matrix of Ci for i=1,…,s, respectively, then C1,…,CsA is free with the following generator matrix k=∑i=1ski:(8)G=a11G1a12G1⋯a1lG1a21G2a22G2⋯a2lG2⋮⋮⋯⋮as1Gsas2Gs⋯aslGs∈Mk,lnR.Proof.
By Proposition2, C1,…,CsA is free of rank k=∑i=1ski over R. The set S consisting of the rows of the matrix G is clearly a generating system of the code C1,…,CsA over R. Since the cardinality of S is equal to the rank of C1,…,CsA, it follows from Lemma 1 that S is a basis of C1,…,CsA over R. Hence, G is a generator matrix of C1,…,CsA.
LetA=aij∈Ms×lR. For i=1,…,s, let Li=ai1,…,ail∈Rl be the ith row of A and CLi the left R-submodule of Rl generated by L1,…,Li (so, CLi=∑j=1iRLj). Let di be the minimum Hamming distance of Ci and Di the minimum Hamming distance of CLi. Generalizing its counterparts over a finite field ([5]) and a finite chain ring ([6]), the theorem below gives a lower bound for the minimum Hamming distance of a matrix-product code C1,…,CsA over a commutative ring when A has full rank. It, further, gives a sufficient condition under which the bound is sharp, generalizing [14, Theorem 1]. Note that, in the following theorem, we use the multiplication map Rl×Rn⟶Rln defined by(9)UV=u1v1,…,u1vn,u2v1,…,u2vn,…,ulv1,…,ulvn,for U=u1,…,ul∈Rl and V=v1,…,vn∈Rn.Theorem 1.
Keep the above notation. IfA∈Ms×lR is of full rank, then the minimum distance of the matrix-product code C1,…,CsA satisfies the following inequality:(10)dC1,…,CsA≥mind1D1,d2D2,…,dsDs.
If, furthermore,Cs⊆Cs−1⊆⋯⊆C1 and, for every i=1,…,s, there exist xi∈Ci and Xi∈CLi such that wtxi=di, wtXi=Di, and Xixi≠0, then(11)dC1,…,CsA=mind1D1,d2D2,…,dsDs.Proof.
Let0≠c=x1,…,xsA∈C1…CsA. There exist some r∈1,…,s−1, xr≠0, and xi=0 for r<i≤s (so, c=x1,…,xr0,…,0A); otherwise set r=s. Since 0≠xr∈Cr, wtxr≥dr and, thus, xr has at least dr nonzero components, xi1,r,…,xidr,r say. Now, for each t=1,…,dr, we have yt=xit,1,xit,2,…,xit,sA∈CLr because xj,k=0 for each j=1,…,l and r<k≤s. Since xit,r≠0 and A has a full rank over R, we deduce that yt≠0. So, wtyt≥Dr. Hence,(12)wtc=wtx1,x2,…,xsA=wtx11,x12,…,x1sA,x21,x22,…,x2sA,…,xn1,xn2,…,xnsA=∑k=1nwtxk1,xk2,…,xksA≥∑t=1drwtxit,1,xit,2,…,xit,sA=∑t=1drwtyt≥drDr≥mind1D1,d2D2,…,dsDs.
Now assume, further, thatCs⊆Cs−1⊆⋯⊆C1 and, for every i=1,…,s, there exist xi∈Ci and Xi∈CLi such that wtxi=di, wtXi=Di, and Xixi≠0. By the first part of this proof, we have dC≥mind1D1,d2D2,…,dsDs. Let r∈1,…,s be such that drDr=mind1D1,d2D2,…,dsDs. Take xr∈Cr and Xr∈CLr so that wtxr=dr, wtXr=Dr, and xrXr≠0. We show that Xrxr∈C1,…,CsA and wtXrxr=drDr, which settles the proof. Write xr=x1,r,…,xn,r and Xr=∑i=1rλiLi∈CLr for λi∈R. Set yi=λixr for i=1,…,s with λi=0 for i=r+1,…,s. As yi∈Cr, yi∈Ci for all i=1,…,r. Also, yi=0∈Ci for all i=r+1,…,s. Thus, y1,…,ysA∈C1,…,CsA and(13)y1,…,ysA=∑i=1syiai,1,∑i=1syiai,2,…,∑i=1syiai,l=∑i=1rλiai,1,∑i=1rλiai,2,…,∑i=1rλiai,lxr=Xrxr.
As0≠Xrxr∈C1,…,CsA, wtXrxr≥mind1D1,d2D2,…,dsDs=drDr. On the contrary, as precisely dr components of xr are nonzero and precisely Dr components of Xr are nonzero, it follows from the definition of the multiplication Xrxr that wtXrxr≤drDr. Hence, wtXrxr=drDr as claimed.Remark 2.
Note that ifR is a field (or even an integral domain), then the requirement on xi and Xi in Theorem 1 holds automatically. On the contrary, we present here an example which shows that such a requirement is sufficient but not necessary. Let R=ℤ4 and consider the matrix A=120021∈M2×3ℤ4. It is clear that A is of full rank. Consider CL1=ℤ41,2,0 and CL2=ℤ41,2,0+ℤ40,2,1. It can be checked that D1=D2=1, the only codeword in CL1 of weight 1 is 2,0,0, and the only codewords in CL2 of weight 1 are 2,0,0 and 0,0,2. Set C1=CL2 and C2=CL1, so C2⊆C1 and d∗=1. It is easily seen that x1X1=x2X1=0,0,0,0,0,0. Nonetheless, dC1C2A=1=d∗ since the codeword(14)c=020000A=002000000∈C1C2A,has weight 1.


## 3. On the Dual of a Matrix-Product Code over a Finite Commutative Ring

Throughout this section,R denotes a finite commutative ring with identity. A nonempty subset of the free R-module Mn×mR≅Rnm can be looked at as a code over R of length nm, where a codeword (which is a matrix A∈Mn×mR) is thought of as a word over R of length nm in the obvious way. We consider the following bilinear form on Mn×mR:(15)A,B=trABT=∑i=1n∑j=1maijbij,for A=aij and B=bij, where BT is the transpose of B and trABT is the trace of the n×n matrix ABT.Our next goal is to give sufficient conditions for the dual of a matrix-product code to also be a matrix-product code, generalizing similar results over finite fields and finite chain rings (see [5, 6]).Lemma 2.
(see [10, Proposition 2.9]). If C is an n,k-linear code over R, then C⊥ is an n,n−k-linear code over R.Proposition 3.
IfA∈Ms×sR is nonsingular, and C1,…,Cs are free linear codes over R of length n, then C1,…,CsA⊥=C1⊥,…,Cs⊥A−1T.Proof.
LetrankCj=kj for j=1,…,s. Since R is finite, it follows from Lemma 2 that Cj⊥ are free over R of rank n−kj for j=1,…,s. Thus, by Proposition 2, both C1,…,CsA and C1⊥,…,Cs⊥A−1T are free with(16)rankC1⊥,…,Cs⊥A−1T=∑j=1sn−kj=ns−∑j=1skj=ns−rankC1,…,CsA.
From now on, just follow the proof of [2, Lemma 6.1] with the obvious notational adjustments.Remark 3.
Freeness of the input codes is necessary for the conclusion of Proposition3 to hold, as the following example shows: let R=ℤ20, C1=10ℤ20, C2=2ℤ20, and A=3007. It can be easily seen that C1⊥=C2, C2⊥=C1, and A is nonsingular with A−1T=7003. Now, for 8,2∈C1C2A and 2,0∈C1⊥C2⊥A−1T, it is clear that 8,2,2,0=16≠0 in ℤ20. So, C1C2A⊥≠C1⊥C2⊥A−1T. Notice that all assumptions of Proposition 3 are satisfied here except that C1 and C2 are not free over ℤ20.Corollary 2.
Keep the assumptions of Proposition3. If G1′,…,Gs′ are generator matrices of C1⊥,…,Cs⊥, respectively, and A−1T=bij, then a generator matrix of C1,…,CsA⊥ is(17)G′=b11G1′b12G1′⋯b1lG1′b21G2′b22G2′⋯b2lG2′⋮⋮⋯⋮bs1Gs′bs2Gs′⋯bslGs′.Proof.
IfCi is of rank ki over R for i=1,…,s, it follows from Lemma 2 that Ci⊥ is free of rank n−ki for i=1,…,s. Letting Gi′∈Mn−ki,nR be the respective generator matrices of Ci⊥, the result now follows from Corollary 1 and Proposition 3.
Forr1,…,rs∈R, let Diagr1,…,rs denote the diagonal matrix of size s×s whose principal-diagonal entry in position i,i is ri for i=1,…,s.Lemma 3.
IfC1,…,Cs are linear codes over R of the same length, Y∈Ms×lR, and X=Diagr1,…,rsY for some r1,…,rs∈UR. Then, C1,…,CsX=C1,…,CsY.Proof.
AsX=Diagr1,…,rsY, C1,…,CsX=r1C1,…,rsCsY. Since ri is a unit, riCi=Ci for i=1,…,s, and thus the claimed conclusion follows immediately.
The following result gives characterizations of self-dual, self-orthogonal, and LCD matrix-product codes over finite commutative rings (for part 3, see [8] as well).Corollary 3.
LetA∈Ms×sR be such that AAT=Diagr1,…,rs with ri∈UR for i=1,…,s, and let C1,…,Cs be linear codes over R of the same length. Then(1)
C1,…,CsAis self-dual if and only ifCiis self-dual for everyi=1,…,s.(2)
C1,…,CsAis self-orthogonal if and only ifCiis self-orthogonal for everyi=1,…,s.(3)
C1,…,CsAis LCD if and only ifCiis LCD for everyi=1,…,s.Proof.
To begin with, asDiagr1,…,rs is invertible and A is a square matrix over a commutative ring ([18]), A and AT are invertible too, with(18)AT−1=A−1T=Diagr1−1,…,rs−1A.
By Lemma3,(19)C1,…,CsA=C1,…,CsA−1T.
Also, by Proposition3,(20)C1,…,CsA⊥=C1⊥,…,Cs⊥A−1T.(1)
By (19) and (20),(21)C1,…,CsAis self−dual iffC1,…,CsA=C1,…,CsA⊥,iffC1,…,CsA−1T=C1⊥,…,Cs⊥A−1T,iffCi=Ci⊥for every1≤i≤sasAis invertible,iffCiis self−dual for every1≤i≤s.(2)
Proving the self-orthogonality statement is similar.(3)
We have(22)C1,…,CsAis LCD iffC1,…,CsA∩C1,…,CsA⊥=0Rsn,iffC1,…,CsA−1T∩C1⊥,…,Cs⊥A−1T=0Rsn,iffC1,…,Cs∩C1⊥,…,Cs⊥=0RsnasAis invertible,iffCi∩Ci⊥=0Rnfor everyi=1,…,s,iffCiis LCD for everyi=1,…,s.


## 4. Matrix-Product Codes Arising Fromσ,δ-Codes over Finite Commutative Rings

Throughout this section,R denotes a finite commutative ring with identity. We use here some results from the authors’ paper [17] combined with results from the previous sections to construct matrix-product codes based on σ,δ-codes over R and, further, give a criterion for self-duality of such codes. We start off by recalling some terminologies and results from [17, 19].


### 4.1.σ,δ-Codes

For a ring endomorphismσ of R that maps the identity to itself and a σ-derivation δ of R, let Rσ,δ denote the (noncommutative) ring of skew-polynomials ∑i=0maiXi over R with the usual addition of polynomials and multiplication based on the rule Xa=σaX+δa for a∈R. Let gX=∑i=0n−kgiXi∈Rσ,δ be a monic skew-polynomial, for some 1≤k≤n−1. Fix any monic fX=∑i=0naiXi∈Rσ,δ of degree n of which gX is a right divisor in Rσ,δ, and let fl be the left principal ideal of Rσ,δ generated by f. Then, Rσ,δ/fl is both a left Rσ,δ-module as well as a free left R-module with an R-basis ℬ=1+fl,X+fl,…,Xn−1+fl. On the contrary, letting(23)Cf=0100…000010…00⋮⋮⋮⋮⋮⋮⋮0000…01−a0−a1…−an−2−an−1,be the companion matrix of f, define the group endomorphism Tf:Rn⟶Rn by(24)t0,…,tn−1↦σt0,…,σtn−1Cf+δt0,…,δtn−1.Then the mapRσ,δ×Rn⟶Rn given by PX,t0,…,tn−1↦PTft0,…,tn−1 defines a left action of Rσ,δ on Rn which makes Rn a left Rσ,δ-module in an obvious way. Now, the map ϕf:Rn⟶Rσ,δ/fl given by t0,…,tn−1↦∑i=0n−1tiXi+fl is a left Rσ,δ-module isomorphism. For every pX∈Rσ,δ, there is a unique qX=∑i=0n−1tiXi∈Rσ,δ (of degree at most n−1) such that pX+fl=qX+fl. We can see that t0,…,tn−1=ϕf−1pX+fl, and we call t0,…,tn−1 the coordinates of pX+fl with respect to the basis ℬ.Ifℳ is a left Rσ,δ-submodule of Rσ,δ/fl, the left Rσ,δ-submodule C=ϕf−1ℳ of Rn is called an f,σ,δ-code (or just a σ,δ-code) of length n over R. Note that C consists of the coordinates of all the elements of ℳ. As R is a subring of Rσ,δ, ℳ and C are also left R-modules. A linear code C⊆Rn is called a principal f,σ,δ-code (or just a principal σ,δ-code) generated by g if there exist monic skew-polynomials f,g∈Rσ,δ of degrees n and n−k, respectively, such that g is a right divisor of f in Rσ,δ and C=ϕf−1gl/fl. Such a code is free over R of rank k (see [5, Theorem 1]). A σ,δ-code is called a principal σ,δ-constacyclic code if it is generated by some monic right divisor of Xn−a for some a∈UR.Starting with a set of monic skew-polynomialsg1,…,gs over R, we give here a construction of a free matrix-product code C over R whose input codes are principal σ,δ-codes generated by the gi’s and, further, give its generator matrix in terms of the matrix of the code and the coefficients of the gi’s. We also give a construction of the dual C⊥ of C under certain extra assumptions and give its generator matrix (a parity-check matrix of C).For everyj=1,…,s, let σj be a ring endomorphism of R that maps the identity to itself, δj a σj-derivation of R, gjX=∑i=0n−kjgi,jXi∈Rσj,δj monic, and Cj the principal σj,δj-code over R generated by gjX (so, there exists a monic fjX∈Rσj,δj of degree n of which gjX is a right divisor in Rσj,δj). By [3, Theorem 2.7], a generator matrix Gj∈Mkj×nR of Cj is given by(25)Gj=g0,j…gn−kj,j00…0g0,j1…gn−kj,j1σjgn−kj,j0…0g0,j2…gn−kj,j2gn−kj+1,j2σj2gn−kj,j…0⋮⋮⋮⋮⋮⋮⋮g0,jkj−1…gn−kj,jkj−1gn−kj+1,jkj−1gn−kj+2,jkj−1…σjkj−1gn−kj,j,where(1)
gi,j=0 for n−kj+1≤i≤n−1(2)
g0,ji=δjg0,ji−1 for 1≤i≤kj−1(3)
gt,ji=δjgt,ji−1+σjgt−1,ji−1 for 1≤i≤kj−1 and 1≤t≤n−2The matricesGj take more elegant shapes if δj=0 where, by [3, Corollary 2.8], we would have(26)Gj=g0,j⋯gn−kj,j00⋯00σjg0,j⋯σjgn−kj,j0…0⋮⋱⋱⋮00⋯0σjkj−1g0,j⋯σjkj−1gn−kj,j.On the contrary, if furtherσj are ring automorphisms of R and gjX are also left divisors in Rσj,δj of fjX=∑i=0nai,jXi for all j=1,…,s with fjX=gjXhjX for hjX=∑i=0kjhi,jXi∈Rσj,δj, then (by [3, Theorem 5.1]) a generator matrix Hj∈Mn−kj,nR of Cj⊥, for j=1,…,s, is(27)Hj=hkj,jhkj,j1hkj,j2…hkj,jn−kj−1hkj,jn−kj…hkj,jn−10σjhkj,jhkj+1,j2…hkj+1,jn−kj−1hkj+1,jn−kj…hkj+1,jn−100σj2hkj,j…hkj+2,jn−kj−1hkj+2,jn−kj…hkj+2,jn−1⋮⋮⋮⋮⋮⋮⋮⋮000…σjn−kj−1hkj,jhn−1,jn−kj…hn−1,jn−1,where(1)
hi,j=0 for kj+1≤i≤n−1(2)
for1≤i≤n−kj−1 and 1≤t≤n−2(i)
h0,ji=δjh0,ji−1(ii)
ht,ji=δjht,ji−1+σjht−1,ji−1(3)
forn−kj≤i≤n−1 and 1≤t≤n−1(i)
h0,ji=δjh0,ji−1−a0,jσjhn−1,ji−1(ii)
ht,ji=δjht,ji−1+σjht−1,ji−1−at,jσjhn−1,ji−1


### 4.2. Matrix-Product Codes Arising fromσ,δ-Codes

Keep the notations and assumptions of Section4.1. For A∈Ms×lR, we denote the matrix-product code C1,…,CsA by g1,…,gsA in order to emphasize a way of constructing a free matrix-product over R out of a well-chosen set of skew-polynomials over R, as the following results indicate.Proposition 4.
Keep the notations and assumptions of Section4.1. Let A=aij∈Ms×lR be of full rank. Then, the matrix G∈Mr×lnRr=∑i=1ski given by(28)G=a11G1a12G1…a1lG1a21G2a22G2…a2lG2⋮⋮…⋮as1Gsas2Gs…aslGsis a generator matrix for the matrix-product code g1,…,gsA.Proof.
By [5, Theorem 1] (see also [17]), Ci is free of rank ki for every i=1,…,s. Now, applying Corollary 1 yields the claimed conclusion.Proposition 5.
Besides the assumptions of Proposition4, assume further that σi is a ring automorphism of R, giX is also a left divisor of fiX for i=1,…,s, and A∈Ms×sR is nonsingular with A−1T=bij. Then the matrix H∈Mr′×lnRr′=∑i=1sn−ki given by(29)H=b11H1b12H1…b1lH1b21H2b22H2…b2lH2⋮⋮…⋮bs1Hsbs2Hs…bslHsis a generator matrix for the dual matrix-product code g1,…,gsA⊥.Proof.
By the presentation in Subsection4.1, Hi is a generator matrix of Ci⊥ for i=1,…,s. Now, apply Corollary 2 to get the desired conclusion.Example 1.
LetR be finite of characteristic 2, α,β∈R with α2+α+1=0, and σ1,σ2 ring automorphisms of R with σ1α=α2 and σ2β=β. We present several principal σi-codes of length 4 and use them to construct many matrix-product codes.Step 1.
Considerf1X,g1X,h1X∈Rσ1, with f1X=X4+X2+1, g1X=X2+α, and h1X=X2+α2. It can be checked that(30)f1X=g1Xh1X=h1Xg1X.
LetC1 and C2 be the principal σ1-codes of length 4 over R generated, respectively, by g1 and h1. By Section 4.1,(31)G1=g0,1g1,1g2,100σ1g0,1σ1g1,1σ1g2,1=α0100α201is a generator matrix of C1, and(32)G2=h0,1h1,1h2,100σ1h0,1σ1h1,1σ1h2,1=α20100α01is a generator matrix of C2. On the contrary,(33)H1=h2,1h2,11h2,12h2,130σ1h2,1h3,12h3,13=10α0010α2is a generator matrix of C1⊥, and(34)H2=g2,1g2,11g2,12g2,130σ1g2,1g3,12g3,13=10α20010αis a generator matrix of C2⊥. Notice that G1H1T=0000=G2H2T.Step 2.
Considerf2X,g2X,h2X∈Rσ2, with f2X=X4+β4, g2X=X+β, and h2X=X3+βX2+β2X+β3. It can be checked that(35)f2X=g2Xh2X=h2Xg2X.
LetC3 and C4 be the principal σ2-codes of length 4 over R generated, respectively, by g2 and h2. By Section 4.1,(36)G3=g0,2g1,2000σ2g0,2σ2g1,2000σ22g0,2σ22g1,2=β1000β1000β1is a generator matrix of C3, and(37)G4=h0,2h1,2h2,2h3,2=β3β2β1is a generator matrix of C4. On the contrary,(38)H3=h3,2h3,21h3,22h3,23=1ββ2β3is a generator matrix of C3⊥, and(39)H4=g1,2g1,21g1,22g1,230σ2g1,2g2,22g2,2300σ22g1g3,23=1β0001β0001βis a generator matrix of C4⊥. Notice that G3H3T=000 and G4H4T=000.Step 3.
LetA=ai,j∈M2×lR,B=bi,j∈M3×lR,D=di,j∈M4×3R be all full-rank matrices. By Proposition 4, we can easily construct the generator matrices of many matrix-product codes out of different combinations of the above principal σi-codes such as gigjA and gihjA, gihjgkB, higjhkB, gihjhkgpD, and gigjgkhpB for i,j,k,p=1,2. For instance, a1,1G1…a1,lG1a2,1G4…a2,lG4∈M3×4lR is a generator matrix of g1h2A, b1,1G4…b1,lG4b2,1G3…b2,lG3b3,1G2…b3,lG2∈M6×4lR is a generator matrix of h2g2h1B, and d1,1G3…d1,lG3d2,1G4…d2,lG4d3,1G4…d3,lG4d4,1G1…d4,lG1∈M7×4lR is a generator matrix of g2h2h2g1D. In a similar manner, we can construct generator matrices of different combinations of the codes Ci and their dual codes for i=1,2,3,4.Step 4.
Utilizing Proposition3, we can give the generator matrices of the dual codes of all of the above matrix-product codes when the matrices A, B, and D are square and nonsingular. For instance, following Remark 3, let R be ℤ20 and A=3007. Then A is nonsingular and A−1T=7003. As in Step 3, a generator matrix of g1g2A is(40)G=3G1007G2∈M4×8R.
By Proposition3, a generator matrix of g1g2A⊥ is(41)H=7H1003H2∈M4×8R.
Note that(42)GHT=21G1H1T0021G2H2T=0000∈M4×4R.
Besides the assumptions of Proposition5, let us now assume further that, for every j=1,…,s, δj=0, g0,j∈UR, k=k1=k2=⋯=ks with n=2k, and denote Rσj,0 by Rσj.Proposition 6.
Keep the assumptions as above. Assume further thatA=aij∈Ms×sR is such that AAT=Diagr1,…,rs with r1,…,rs∈UR and that, for every j=1,…,s, either of the following statements holds:(i)
gjXis a right divisor inRσjofXn−ajfor someaj∈UR,Cjis the principalXn−aj,σj-constacyclic code generated bygjX, andσjkjh0,j−1hj∗X=gjX, wheregjXhjX=Xn−σj−kjaj.(ii)
For anylj∈0,…,kj,∑i=0ljσjkj−1gi,jgi+kj−lj,j=0.
Then, the matrix-product codeg1,…,gsA is self-dual.Proof.
By [3, Corollary 3.7], the statements (i) and (ii) are equivalent and, further, they are equivalent to the condition of Cj being self-dual. Now, apply Corollary 1 to get that g1,…,gsA is self-dual.Example 2.
LetR=F3×F3, σx,y=y,x, and α=2,2. Note that σ is a ring automorphism of R of order 2, 1=1R=1,1, and α is a unit in R of order 2. Set hX=X2+αX+α. Then h0=α=h0−1 and h∗X=αX2+αX+1. Let gX=σ2h0−1h∗X. So, gX=ααX2+αX+1=X2+X+α. Using the multiplication rule in Rσ, we have(43)gXhX=X2+X+αX2+αX+α=X4+σαX3+σαX2+X3+σαX2+σαX+αX2+α2X+α2=X4+α+1X3+3αX2+α+α2X+1=X4+1=X4+1.
Thus,gX satisfies condition (2) of Proposition 6 and, hence, it generates a self-dual X4+1,σ-constacyclic code C of length 4 over R. It follows from the paragraph following Proposition 4 that a generator matrix of C is M=α1100α11. Given the matrix A=1,00,10,21,0∈M2×2R, which is orthogonal and, thus, quasiorthogonal, we conclude from Propositions 6 and 4, respectively, that the matrix-product code ggA is self-dual with the following generator matrix:(44)G=1,0M0,1M0,2M1,0M=2,01,01,00,00,20,10,10,00,02,01,01,00,00,20,10,10,10,20,20,02,01,01,00,00,00,10,20,20,02,01,01,0.


## 4.1.σ,δ-Codes

For a ring endomorphismσ of R that maps the identity to itself and a σ-derivation δ of R, let Rσ,δ denote the (noncommutative) ring of skew-polynomials ∑i=0maiXi over R with the usual addition of polynomials and multiplication based on the rule Xa=σaX+δa for a∈R. Let gX=∑i=0n−kgiXi∈Rσ,δ be a monic skew-polynomial, for some 1≤k≤n−1. Fix any monic fX=∑i=0naiXi∈Rσ,δ of degree n of which gX is a right divisor in Rσ,δ, and let fl be the left principal ideal of Rσ,δ generated by f. Then, Rσ,δ/fl is both a left Rσ,δ-module as well as a free left R-module with an R-basis ℬ=1+fl,X+fl,…,Xn−1+fl. On the contrary, letting(23)Cf=0100…000010…00⋮⋮⋮⋮⋮⋮⋮0000…01−a0−a1…−an−2−an−1,be the companion matrix of f, define the group endomorphism Tf:Rn⟶Rn by(24)t0,…,tn−1↦σt0,…,σtn−1Cf+δt0,…,δtn−1.Then the mapRσ,δ×Rn⟶Rn given by PX,t0,…,tn−1↦PTft0,…,tn−1 defines a left action of Rσ,δ on Rn which makes Rn a left Rσ,δ-module in an obvious way. Now, the map ϕf:Rn⟶Rσ,δ/fl given by t0,…,tn−1↦∑i=0n−1tiXi+fl is a left Rσ,δ-module isomorphism. For every pX∈Rσ,δ, there is a unique qX=∑i=0n−1tiXi∈Rσ,δ (of degree at most n−1) such that pX+fl=qX+fl. We can see that t0,…,tn−1=ϕf−1pX+fl, and we call t0,…,tn−1 the coordinates of pX+fl with respect to the basis ℬ.Ifℳ is a left Rσ,δ-submodule of Rσ,δ/fl, the left Rσ,δ-submodule C=ϕf−1ℳ of Rn is called an f,σ,δ-code (or just a σ,δ-code) of length n over R. Note that C consists of the coordinates of all the elements of ℳ. As R is a subring of Rσ,δ, ℳ and C are also left R-modules. A linear code C⊆Rn is called a principal f,σ,δ-code (or just a principal σ,δ-code) generated by g if there exist monic skew-polynomials f,g∈Rσ,δ of degrees n and n−k, respectively, such that g is a right divisor of f in Rσ,δ and C=ϕf−1gl/fl. Such a code is free over R of rank k (see [5, Theorem 1]). A σ,δ-code is called a principal σ,δ-constacyclic code if it is generated by some monic right divisor of Xn−a for some a∈UR.Starting with a set of monic skew-polynomialsg1,…,gs over R, we give here a construction of a free matrix-product code C over R whose input codes are principal σ,δ-codes generated by the gi’s and, further, give its generator matrix in terms of the matrix of the code and the coefficients of the gi’s. We also give a construction of the dual C⊥ of C under certain extra assumptions and give its generator matrix (a parity-check matrix of C).For everyj=1,…,s, let σj be a ring endomorphism of R that maps the identity to itself, δj a σj-derivation of R, gjX=∑i=0n−kjgi,jXi∈Rσj,δj monic, and Cj the principal σj,δj-code over R generated by gjX (so, there exists a monic fjX∈Rσj,δj of degree n of which gjX is a right divisor in Rσj,δj). By [3, Theorem 2.7], a generator matrix Gj∈Mkj×nR of Cj is given by(25)Gj=g0,j…gn−kj,j00…0g0,j1…gn−kj,j1σjgn−kj,j0…0g0,j2…gn−kj,j2gn−kj+1,j2σj2gn−kj,j…0⋮⋮⋮⋮⋮⋮⋮g0,jkj−1…gn−kj,jkj−1gn−kj+1,jkj−1gn−kj+2,jkj−1…σjkj−1gn−kj,j,where(1)
gi,j=0 for n−kj+1≤i≤n−1(2)
g0,ji=δjg0,ji−1 for 1≤i≤kj−1(3)
gt,ji=δjgt,ji−1+σjgt−1,ji−1 for 1≤i≤kj−1 and 1≤t≤n−2The matricesGj take more elegant shapes if δj=0 where, by [3, Corollary 2.8], we would have(26)Gj=g0,j⋯gn−kj,j00⋯00σjg0,j⋯σjgn−kj,j0…0⋮⋱⋱⋮00⋯0σjkj−1g0,j⋯σjkj−1gn−kj,j.On the contrary, if furtherσj are ring automorphisms of R and gjX are also left divisors in Rσj,δj of fjX=∑i=0nai,jXi for all j=1,…,s with fjX=gjXhjX for hjX=∑i=0kjhi,jXi∈Rσj,δj, then (by [3, Theorem 5.1]) a generator matrix Hj∈Mn−kj,nR of Cj⊥, for j=1,…,s, is(27)Hj=hkj,jhkj,j1hkj,j2…hkj,jn−kj−1hkj,jn−kj…hkj,jn−10σjhkj,jhkj+1,j2…hkj+1,jn−kj−1hkj+1,jn−kj…hkj+1,jn−100σj2hkj,j…hkj+2,jn−kj−1hkj+2,jn−kj…hkj+2,jn−1⋮⋮⋮⋮⋮⋮⋮⋮000…σjn−kj−1hkj,jhn−1,jn−kj…hn−1,jn−1,where(1)
hi,j=0 for kj+1≤i≤n−1(2)
for1≤i≤n−kj−1 and 1≤t≤n−2(i)
h0,ji=δjh0,ji−1(ii)
ht,ji=δjht,ji−1+σjht−1,ji−1(3)
forn−kj≤i≤n−1 and 1≤t≤n−1(i)
h0,ji=δjh0,ji−1−a0,jσjhn−1,ji−1(ii)
ht,ji=δjht,ji−1+σjht−1,ji−1−at,jσjhn−1,ji−1


## 4.2. Matrix-Product Codes Arising fromσ,δ-Codes

Keep the notations and assumptions of Section4.1. For A∈Ms×lR, we denote the matrix-product code C1,…,CsA by g1,…,gsA in order to emphasize a way of constructing a free matrix-product over R out of a well-chosen set of skew-polynomials over R, as the following results indicate.Proposition 4.
Keep the notations and assumptions of Section4.1. Let A=aij∈Ms×lR be of full rank. Then, the matrix G∈Mr×lnRr=∑i=1ski given by(28)G=a11G1a12G1…a1lG1a21G2a22G2…a2lG2⋮⋮…⋮as1Gsas2Gs…aslGsis a generator matrix for the matrix-product code g1,…,gsA.Proof.
By [5, Theorem 1] (see also [17]), Ci is free of rank ki for every i=1,…,s. Now, applying Corollary 1 yields the claimed conclusion.Proposition 5.
Besides the assumptions of Proposition4, assume further that σi is a ring automorphism of R, giX is also a left divisor of fiX for i=1,…,s, and A∈Ms×sR is nonsingular with A−1T=bij. Then the matrix H∈Mr′×lnRr′=∑i=1sn−ki given by(29)H=b11H1b12H1…b1lH1b21H2b22H2…b2lH2⋮⋮…⋮bs1Hsbs2Hs…bslHsis a generator matrix for the dual matrix-product code g1,…,gsA⊥.Proof.
By the presentation in Subsection4.1, Hi is a generator matrix of Ci⊥ for i=1,…,s. Now, apply Corollary 2 to get the desired conclusion.Example 1.
LetR be finite of characteristic 2, α,β∈R with α2+α+1=0, and σ1,σ2 ring automorphisms of R with σ1α=α2 and σ2β=β. We present several principal σi-codes of length 4 and use them to construct many matrix-product codes.Step 1.
Considerf1X,g1X,h1X∈Rσ1, with f1X=X4+X2+1, g1X=X2+α, and h1X=X2+α2. It can be checked that(30)f1X=g1Xh1X=h1Xg1X.
LetC1 and C2 be the principal σ1-codes of length 4 over R generated, respectively, by g1 and h1. By Section 4.1,(31)G1=g0,1g1,1g2,100σ1g0,1σ1g1,1σ1g2,1=α0100α201is a generator matrix of C1, and(32)G2=h0,1h1,1h2,100σ1h0,1σ1h1,1σ1h2,1=α20100α01is a generator matrix of C2. On the contrary,(33)H1=h2,1h2,11h2,12h2,130σ1h2,1h3,12h3,13=10α0010α2is a generator matrix of C1⊥, and(34)H2=g2,1g2,11g2,12g2,130σ1g2,1g3,12g3,13=10α20010αis a generator matrix of C2⊥. Notice that G1H1T=0000=G2H2T.Step 2.
Considerf2X,g2X,h2X∈Rσ2, with f2X=X4+β4, g2X=X+β, and h2X=X3+βX2+β2X+β3. It can be checked that(35)f2X=g2Xh2X=h2Xg2X.
LetC3 and C4 be the principal σ2-codes of length 4 over R generated, respectively, by g2 and h2. By Section 4.1,(36)G3=g0,2g1,2000σ2g0,2σ2g1,2000σ22g0,2σ22g1,2=β1000β1000β1is a generator matrix of C3, and(37)G4=h0,2h1,2h2,2h3,2=β3β2β1is a generator matrix of C4. On the contrary,(38)H3=h3,2h3,21h3,22h3,23=1ββ2β3is a generator matrix of C3⊥, and(39)H4=g1,2g1,21g1,22g1,230σ2g1,2g2,22g2,2300σ22g1g3,23=1β0001β0001βis a generator matrix of C4⊥. Notice that G3H3T=000 and G4H4T=000.Step 3.
LetA=ai,j∈M2×lR,B=bi,j∈M3×lR,D=di,j∈M4×3R be all full-rank matrices. By Proposition 4, we can easily construct the generator matrices of many matrix-product codes out of different combinations of the above principal σi-codes such as gigjA and gihjA, gihjgkB, higjhkB, gihjhkgpD, and gigjgkhpB for i,j,k,p=1,2. For instance, a1,1G1…a1,lG1a2,1G4…a2,lG4∈M3×4lR is a generator matrix of g1h2A, b1,1G4…b1,lG4b2,1G3…b2,lG3b3,1G2…b3,lG2∈M6×4lR is a generator matrix of h2g2h1B, and d1,1G3…d1,lG3d2,1G4…d2,lG4d3,1G4…d3,lG4d4,1G1…d4,lG1∈M7×4lR is a generator matrix of g2h2h2g1D. In a similar manner, we can construct generator matrices of different combinations of the codes Ci and their dual codes for i=1,2,3,4.Step 4.
Utilizing Proposition3, we can give the generator matrices of the dual codes of all of the above matrix-product codes when the matrices A, B, and D are square and nonsingular. For instance, following Remark 3, let R be ℤ20 and A=3007. Then A is nonsingular and A−1T=7003. As in Step 3, a generator matrix of g1g2A is(40)G=3G1007G2∈M4×8R.
By Proposition3, a generator matrix of g1g2A⊥ is(41)H=7H1003H2∈M4×8R.
Note that(42)GHT=21G1H1T0021G2H2T=0000∈M4×4R.
Besides the assumptions of Proposition5, let us now assume further that, for every j=1,…,s, δj=0, g0,j∈UR, k=k1=k2=⋯=ks with n=2k, and denote Rσj,0 by Rσj.Proposition 6.
Keep the assumptions as above. Assume further thatA=aij∈Ms×sR is such that AAT=Diagr1,…,rs with r1,…,rs∈UR and that, for every j=1,…,s, either of the following statements holds:(i)
gjXis a right divisor inRσjofXn−ajfor someaj∈UR,Cjis the principalXn−aj,σj-constacyclic code generated bygjX, andσjkjh0,j−1hj∗X=gjX, wheregjXhjX=Xn−σj−kjaj.(ii)
For anylj∈0,…,kj,∑i=0ljσjkj−1gi,jgi+kj−lj,j=0.
Then, the matrix-product codeg1,…,gsA is self-dual.Proof.
By [3, Corollary 3.7], the statements (i) and (ii) are equivalent and, further, they are equivalent to the condition of Cj being self-dual. Now, apply Corollary 1 to get that g1,…,gsA is self-dual.Example 2.
LetR=F3×F3, σx,y=y,x, and α=2,2. Note that σ is a ring automorphism of R of order 2, 1=1R=1,1, and α is a unit in R of order 2. Set hX=X2+αX+α. Then h0=α=h0−1 and h∗X=αX2+αX+1. Let gX=σ2h0−1h∗X. So, gX=ααX2+αX+1=X2+X+α. Using the multiplication rule in Rσ, we have(43)gXhX=X2+X+αX2+αX+α=X4+σαX3+σαX2+X3+σαX2+σαX+αX2+α2X+α2=X4+α+1X3+3αX2+α+α2X+1=X4+1=X4+1.
Thus,gX satisfies condition (2) of Proposition 6 and, hence, it generates a self-dual X4+1,σ-constacyclic code C of length 4 over R. It follows from the paragraph following Proposition 4 that a generator matrix of C is M=α1100α11. Given the matrix A=1,00,10,21,0∈M2×2R, which is orthogonal and, thus, quasiorthogonal, we conclude from Propositions 6 and 4, respectively, that the matrix-product code ggA is self-dual with the following generator matrix:(44)G=1,0M0,1M0,2M1,0M=2,01,01,00,00,20,10,10,00,02,01,01,00,00,20,10,10,10,20,20,02,01,01,00,00,00,10,20,20,02,01,01,0.



---

*Source: 5521067-2021-03-03.xml*