This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Convolutional codes with a maximum distance profile based on skew polynomials

Zitan Chen
Abstract

We construct a family of (n,k)(n,k) convolutional codes with degree δ{k,nk}\delta\in\{k,n-k\} that have a maximum distance profile. The field size required for our construction is Θ(n2δ)\Theta(n^{2\delta}), which improves upon the known constructions of convolutional codes with a maximum distance profile. Our construction is based on the theory of skew polynomials.

footnotetext:   Z. Chen is with SSE and FNii, The Chinese University of Hong Kong, Shenzhen, China. Email: [email protected]

I Introduction

Construction of codes with good distance has been central to the study of error-correcting codes. While there are quite a number of algebraic constructions of block codes with good distance properties, very few algebraic constructions are known for convolutional codes with good distance properties. In fact, there are several important distance measures for convolutional codes, suitable for assessing their error correction capability in various scenarios. In particular, free distance and column distance [1] are two of the most notable distance measures for convolutional codes.

Free distance is arguably the most well-known notion of distance measure for convolutional codes. An upper bound for the free distance of convolutional codes was presented in [2], which generalizes the Singleton bound for block codes, and thus convolutional codes with free distance attaining this upper bound are called maximum distance separable (MDS) convolutional codes. The existence of MDS convolutional codes is shown in [2] using methods from algebraic geometry. Relying on the intrinsic connection between quasi-cyclic block codes and convolutional codes [3, 4], the authors of [5] presented the first concrete construction of MDS convolutional code under certain restriction of the code parameters. A few other constructions of MDS convolutional codes for different regimes of the code parameters appeared later in [6], [7], [8].

Although both notions of free distance and column distance were born at the same time [1], the notion of column distance appears to be less known. Informally speaking, column distance measures the Hamming distance of a convolutional code truncated at certain time instant. Thus, a convolutional code is associated with a sequence of column distances at different time instants, and such a sequence is termed the distance profile of the convolutional code. In view of this, the distance profile of a convolutional code is particularly helpful for evaluating the error correction capability of the code when it is used for streaming over erasure channels [9], [10]. A comprehensive study of convolutional codes with the largest possible column distances was presented in [11]. Since a truncated convolutional code is a block code, the column distances of the code satisfy the corresponding Singleton bound for block codes. Moreover, the column distances can not exceed the free distance of the code since the latter is derived with no restriction on the time instant. Clearly, not every truncated code of a convolutional code can be an MDS block code. In other words, not every column distance of a convolutional code can attain the corresponding block code Singleton bound. Convolutional codes whose column distances attain the block code Singleton bound for the maximum number of times are said to have a maximum distance profile (MDP), and such codes are often referred to as MDP convolutional codes.

Algebraic constructions of MDP convolutional codes are scarce in the literature. In [11], the authors presented the first explicit construction of MDP convolutional codes over a large finite field of large characteristic. The idea that is instrumental in this construction is to first construct lower triangular Toeplitz supperregular matrices111Roughly speaking, a lower triangular Toeplitz matrix is called supperregular if its minors that are not trivially zero are nonzero. We refer the readers to [11] for a detailed discussion. and then utilize them as the building blocks for the construction of MDP convolutional codes. The same idea was also explored in [12] to construct another class of MDP convolutional codes over a large finite field of arbitrary characteristic. A third general class of explicit MDP convolutional codes was recently presented in [13], which uses generalized Reed-Solomon (RS) codes as the building blocks. These three families of codes are the only known explicit algebraic constructions of MDP convolutional codes hitherto but all of them require a finite field of gigantic size for the codes to be constructed. Specifically, to construct an MDP convolutional code with rate R=k/nR=k/n and degree222The degree of a convolutional code determines the implementation complexity of the code and is arguably one of the most fundamental parameters of the code. See Section II-A for a formal definition. δ\delta, a finite field 𝔽{\mathbb{F}} of size |𝔽|=2Θ((R1δ+n)2)|{\mathbb{F}}|=2^{\Theta((R^{-1}\delta+n)^{2})} suffices for the construction in [11]. As for the construction in [12], the needed size of the finite field is |𝔽|=2Θ(2R1δ+n)|{\mathbb{F}}|=2^{\Theta(2^{R^{-1}\delta+n})}. For the most recent construction in [13], it requires |𝔽|=2Θ((δ3Rn+δRn)logn)|{\mathbb{F}}|=2^{\Theta((\frac{\delta^{3}}{Rn}+\delta Rn)\log n)}, which is comparable to that of [11]. Constructing explicit MDP convolutional codes over small finite fields has been challenging and it was conjectured in [14] that a finite field of size |𝔽|=2Θ(R1δ+n)|{\mathbb{F}}|=2^{\Theta(R^{-1}\delta+n)} should suffice for constructing of MDP convolutional codes with rate R=k/nR=k/n and degree δ\delta.

In this paper we present an explicit construction of MDP convolutional codes over a finite field of size 2Θ(δlogn)2^{\Theta(\delta\log n)}, which improves over all the known explicit algebraic constructions. More precisely, we show that for any rate R(0,1)R\in(0,1) such that R1/2R\neq 1/2, there exists an explicit MDP convolutional code with rate RR and degree δ{k,nk}\delta\in\{k,n-k\} over a finite field of size Θ(n2δ)\Theta(n^{2\delta}). The idea behind our construction differs from the existing constructions and is based on the theory of skew polynomials [15], [16], which has seen important applications in other areas of coding theory such as distributed storage [17], [18].

The paper is organized as follows. Section II provides a minimum background on convolutional codes and skew polynomials. Section III presents our construction of MDP convolutional codes. Finally, we conclude this paper with a few remarks in Section IV.

II Preliminaries

II-A Convolutional codes

Let us first introduce basic concepts and requisite terminology of convolutional codes. We shall treat convolutional codes as submodules instead of subspaces since there is only marginal difference between this treatment and the classical approach [19] of taking convolutional codes as vector subspaces. We refer the readers to [16] for a recent survey of convolutional codes based on the module theoretic approach.

Let 𝔽{\mathbb{F}} be a finite field and 𝔽[D]{\mathbb{F}}[D] be the ring of polynomials with indeterminate DD and coefficients in 𝔽{\mathbb{F}}.

Definition 1.

An (n,k)(n,k) convolutional code over 𝔽{\mathbb{F}} is an 𝔽[D]{\mathbb{F}}[D]-submodule 𝒞𝔽[D]n{\mathscr{C}}\subset{\mathbb{F}}[D]^{n} of rank kk. A k×nk\times n polynomial matrix G(D)=(gij(D))G(D)=(g_{ij}(D)) over 𝔽[D]{\mathbb{F}}[D] is called a generator matrix of the code 𝒞{\mathscr{C}} if

𝒞={u(D)G(D)u(D)𝔽[D]k}.\displaystyle{\mathscr{C}}=\{u(D)G(D)\mid u(D)\in{\mathbb{F}}[D]^{k}\}.

An (nk)×n(n-k)\times n polynomial matrix H(D)=(hij(D))H(D)=(h_{ij}(D)) over 𝔽[D]{\mathbb{F}}[D] is called a parity check matrix of the code 𝒞{\mathscr{C}} if

𝒞={v(D)𝔽[D]nH(D)v(D)=0}.\displaystyle{\mathscr{C}}=\{v(D)\in{\mathbb{F}}[D]^{n}\mid H(D)v(D)=0\}.

A k×nk\times n polynomial matrix G(D)G(D) is called basic if it has a polynomial right inverse. The constraint length for the iith input or the iith row degree of the matrix G(D)G(D) is defined to be

νi=max1jn{deggij(D)},i=1,,k.\displaystyle\nu_{i}=\max_{1\leq j\leq n}\{\deg g_{ij}(D)\},\quad i=1,\ldots,k.

Furthermore, the memory mm of the matrix G(D)G(D) is defined as

m=max1ik{νi},\displaystyle m=\max_{1\leq i\leq k}\{\nu_{i}\},

and the overall constraint length of the matrix G(D)G(D) is defined to be

ν=i=1kνi.\displaystyle\nu=\sum_{i=1}^{k}\nu_{i}.

The matrix G(D)G(D) is said to have generic row degrees if νi{m,m1}\nu_{i}\in\{m,m-1\} for i=1,,ki=1,\ldots,k.

A generator matrix G(D)G(D) of an (n,k)(n,k) convolutional code 𝒞{\mathscr{C}} is called minimal or reduced if its overall constraint length is minimal over all generator matrices of the code 𝒞{\mathscr{C}}. This minimum overall constraint length is called the degree δ\delta of the code 𝒞{\mathscr{C}}.333One can equivalently define the degree of 𝒞{\mathscr{C}} as the highest degree of the k×kk\times k minors of any generator matrix of 𝒞{\mathscr{C}}. This is because the overall constraint length of a generator matrix is always at least the highest degree the of the k×kk\times k minors of the generator matrix [20], and the sets of degrees of k×kk\times k minors of any two generator matrices are the same since any two generator matrices of 𝒞{\mathscr{C}} differs by left multiplication of a unimodular polynomial matrix. We shall call an (n,k)(n,k) convolutional code with degree δ\delta an (n,k,δ)(n,k,\delta) convolutional code.

The degree of (n,k)(n,k) convolutional codes stipulates the smallest number of memory elements needed to realize an (n,k)(n,k) convolutional code and is closely related to the decoding complexity of the code [19]. In this regard, given code parameters nn and kk, it is preferable to construct codes with a small degree in practice. However, it is in general not obvious to determine the degree of an (n,k)(n,k) convolutional code. The following result from [20] provides a criterion for a generator matrix to be minimal, which is helpful in determining the degree of the convolutional code generated by the matrix.

Lemma 1.

Let G(D)G(D) be a k×nk\times n matrix over 𝔽[D]{\mathbb{F}}[D] and define the matrix of the highest order coefficients for G(D)G(D), denoted by G¯=(G¯ij)\bar{G}=(\bar{G}_{ij}), by

G¯ij=coeffDνigij(D),\displaystyle\bar{G}_{ij}=\mathrm{coeff}_{D^{\nu_{i}}}g_{ij}(D),

where coeffDνigij(D)\mathrm{coeff}_{D^{\nu_{i}}}g_{ij}(D) denotes the coefficient of DνiD^{\nu_{i}} in the polynomial gij(D)g_{ij}(D). Then G(D)G(D) is minimal if and only if G¯\bar{G} has rank kk.

Next, let us briefly discuss distance properties of convolutional codes. To begin with, note that for v(D)𝔽[D]nv(D)\in{\mathbb{F}}[D]^{n}, we may write v(D)=jvjDj𝔽n[D]v(D)=\sum_{j\in\mathbb{N}}v_{j}D^{j}\in{\mathbb{F}}^{n}[D]. The Hamming weight of v(D)v(D) is then defined as

wt(v(D))=jwt(vj),\displaystyle\mathrm{wt}(v(D))=\sum_{j\in\mathbb{N}}\mathrm{wt}(v_{j}),

where wt(vj)\mathrm{wt}(v_{j}) denotes the Hamming weight of the length-nn vector vjv_{j} over 𝔽{\mathbb{F}}. Similarly to the distance of a linear block code, the free distance of a convolutional code 𝒞{\mathscr{C}} is defined to be

d=min{wt(v(D))v(D)𝒞,v(D)0}.\displaystyle d=\min\{\mathrm{wt}(v(D))\mid v(D)\in{\mathscr{C}},v(D)\neq 0\}.

The free distance was shown in [2] to satisfy the following upper bound that generalizes the Singleton bound for block codes.

Theorem 2.

Let 𝒞{\mathscr{C}} be an (n,k,δ)(n,k,\delta) convolutional code. Then

d(nk)(δk+1)+δ+1.\displaystyle d\leq(n-k)\left(\left\lfloor\frac{\delta}{k}\right\rfloor+1\right)+\delta+1. (1)

Convolutional codes whose distance attains (1) with equality are called MDS convolutional codes.

In addition to the free distance, the column distance is another fundamental distance measure for convolutional codes. To define the column distance, let G(D)=i=0mGiDiG(D)=\sum_{i=0}^{m}G_{i}D^{i} be a generator matrix of memory mm for an (n,k)(n,k) convolutional code 𝒞{\mathscr{C}}. Further, let the corresponding semi-infinite matrix GG be

G=(G0G1GmG0G1Gm).\displaystyle G=\begin{pmatrix}G_{0}&G_{1}&\cdots&G_{m}&&\\ &G_{0}&G_{1}&\cdots&G_{m}&\\ &&\ddots&\ddots&&\ddots\end{pmatrix}.

Let j0j\geq 0. Denote the jjth truncated generator matrix by

Gjc=(G0G1GjG0Gj1G0),\displaystyle G_{j}^{c}=\begin{pmatrix}G_{0}&G_{1}&\cdots&G_{j}\\ &G_{0}&\cdots&G_{j-1}\\ &&\ddots&\vdots\\ &&&G_{0}\end{pmatrix},

where Gi=0G_{i}=0 for i>mi>m. Similarly, let H(D)H(D) be a parity check matrix of memory mm^{\prime} for the code 𝒞{\mathscr{C}}. The jjth truncated parity check matrix is denoted by

Hjc=(H0H1H0HjHj1H0),\displaystyle H_{j}^{c}=\begin{pmatrix}H_{0}&&&\\ H_{1}&H_{0}&&\\ \vdots&\vdots&\ddots&\\ H_{j}&H_{j-1}&\cdots&H_{0}\end{pmatrix},

where Hi=0H_{i}=0 for i>mi>m^{\prime}.

With the jjth truncated matrix, the jjth column distance of a convolutional code can be defined as follows.

Definition 2.

Let G(D)=i=0mGiDiG(D)=\sum_{i=0}^{m}G_{i}D^{i} be a generator matrix of memory mm for an (n,k)(n,k) convolutional code 𝒞{\mathscr{C}} such that G0G_{0} has full rank. For j0j\geq 0 the jjth column distance of the code 𝒞{\mathscr{C}} is given by

djc=min{wt((u0,,uj)Gjc)u00,ui𝔽k,i=0,,j}.\displaystyle d_{j}^{c}=\min\{\mathrm{wt}\big{(}(u_{0},\ldots,u_{j})G_{j}^{c}\big{)}\mid u_{0}\neq 0,u_{i}\in{\mathbb{F}}^{k},i=0,\ldots,j\}.

The Singleton bound for block codes implies that for all j0j\geq 0 the column distance satisfies

djc(nk)(j+1)+1,\displaystyle d_{j}^{c}\leq(n-k)(j+1)+1, (2)

and equality for a given jj implies that all the other distances dic,ijd_{i}^{c},i\leq j also attain their versions of the bound (2) with equality. The following result, given in [11], characterizes optimal column distances by the determinants of full-size square submatrices of GjcG_{j}^{c}.

Theorem 3.

Let G(D)G(D) be a k×nk\times n basic and minimal generator matrix of an (n,k)(n,k) convolutional code and let H(D)H(D) be a (nk)×n(n-k)\times n basic parity check matrix of the code. Then the following are equivalent:

  1. 1.

    djc=(nk)(j+1)+1d_{j}^{c}=(n-k)(j+1)+1;

  2. 2.

    every k(j+1)×k(j+1)k(j+1)\times k(j+1) full-size minor of GjcG_{j}^{c} formed by the columns with indices 1t1<<tk(j+1)1\leq t_{1}<\ldots<t_{k(j+1)} where tks+1ns+1t_{ks+1}\geq ns+1 for s=1,,js=1,\ldots,j is nonzero;

  3. 3.

    every (nk)(j+1)×(nk)(j+1)(n-k)(j+1)\times(n-k)(j+1) full-size minor of HjcH_{j}^{c} formed by the columns with indices 1t1<<t(nk)(j+1)1\leq t_{1}<\ldots<t_{(n-k)(j+1)} where tksnst_{ks}\leq ns for s=1,,js=1,\ldots,j is nonzero.

For brevity, we shall call Item 2 of Theorem 3 the MDP property of GjcG_{j}^{c}, and Item 3 of Theorem 3 the MDP property of HjcH_{j}^{c}.

While for a k×nk\times n matrix to generate an (n,k)(n,k) MDS block code, every k×kk\times k submatrix should have a nonzero determinant, the MDP property of GjcG_{j}^{c} implies that for an convolutional code to have optimal jjth column distance, the full-size square submatrices that should have nonzero determinants are only those k(j+1)×k(j+1)k(j+1)\times k(j+1) submatrices formed by at most ksks columns of the first nsns columns of GjcG_{j}^{c} for s=1,,js=1,\ldots,j. In fact, the determinant of any other full-size submatrix of GjcG_{j}^{c} is always zero.

As there are various distance measures for convolutional codes, their error correction capability can be optimal in a number of different ways. We mention here several families of distance-optimal convolutional codes. Convolutional codes with a generator matrix of memory mm and distance attaining the equality in (2) for j=mj=m are called mm-MDS convolutional codes. Relating the bounds (1) and (2), [21] and [11] introduced two other types of distance-optimal convolutional codes, described below.

Definition 3.

Let 𝒞{\mathscr{C}} be an (n,k,δ)(n,k,\delta) convolutional code. Let M=δk+δnkM=\lfloor\frac{\delta}{k}\rfloor+\lceil\frac{\delta}{n-k}\rceil and L=δk+δnkL=\lfloor\frac{\delta}{k}\rfloor+\lfloor\frac{\delta}{n-k}\rfloor.

  1. 1.

    The code 𝒞{\mathscr{C}} is said to be strongly-MDS if

    dMc=(nk)(δk+1)+δ+1.\displaystyle d_{M}^{c}=(n-k)\left(\left\lfloor\frac{\delta}{k}\right\rfloor+1\right)+\delta+1.
  2. 2.

    The code 𝒞{\mathscr{C}} is said to be MDP if

    dLc=(nk)(L+1)+1.\displaystyle d_{L}^{c}=(n-k)(L+1)+1.

Clearly, strongly-MDS convolutional codes are also MDS by definition. Moreover, the column distance of strongly-MDS convolutional codes attains the Singleton bound (1) at the earliest possible time instant MM. But the column distance at the time instant prior to MM may not attain (2) . On the contrary, the column distances of MDP convolutional codes attain (2) for the maximum number of times although the free distance of the codes may not attain (1). We refer the readers to [11] for a detailed discussion of the difference between these two families of codes.

Theorem 3 suggests that one way of constructing MDP convolutional codes is to design a minimal and basic generator matrix such that the corresponding truncated matrix has the MDP property. Note that Lemma 1 provides a characterization of minimal matrices. As for basic matrices, it is observed in [22] that the assumption of being basic in Theorem 3 can be lifted and replaced with a weaker condition that the matrix has generic row degrees. This observation is summarized as follows.

Lemma 4.

Let G(D)G(D) be a k×nk\times n minimal generator matrix with row degree νi{m,m1}\nu_{i}\in\{m,m-1\} and let δ=i=1kνi\delta=\sum_{i=1}^{k}\nu_{i}. If GLcG_{L}^{c} has the MDP property then G(D)G(D) is basic and it generates an (n,k,δ)(n,k,\delta) MDP convolutional code.

Finally, we note a duality result of MDP convolutional codes from [11].

Theorem 5.

An (n,k,δ)(n,k,\delta) convolutional code 𝒞{\mathscr{C}} over 𝔽{\mathbb{F}} with generator matrix G(D)G(D) is MDP if and only if its dual code 𝒞{\mathscr{C}}^{\perp} with parity check matrix G(D)G(D) is an (n,nk,δ)(n,n-k,\delta) MDP convolutional code over 𝔽{\mathbb{F}}.

II-B Skew polynomials

Skew polynomials satisfy most basic properties of conventional polynomials but the product of skew polynomials is not commutative. We refer the readers to [23] for basic properties of skew polynomials over finite fields and [24, 15] for the theory of evaluation and interpolation on skew polynomials. The recent papers [25, 26] also have an accessible exposition of the theory of skew polynomials. In the following we shall only briefly introduce basic results of skew polynomials that suit the need of this paper.

Let 𝔽qt{\mathbb{F}}_{q^{t}} be a finite field of size qtq^{t} where qq is a prime power. Let σ:𝔽qt𝔽qt\sigma\colon{\mathbb{F}}_{q^{t}}\to{\mathbb{F}}_{q^{t}} be the Frobenius automorphism. Namely, σ(a)=aq\sigma(a)=a^{q} for any a𝔽qta\in{\mathbb{F}}_{q^{t}}.

Definition 4.

Let 𝔽qt[x;σ]{\mathbb{F}}_{q^{t}}[x;\sigma] be the ring of skew polynomials with indeterminate in xx and coefficients in 𝔽qt{\mathbb{F}}_{q^{t}}, where addition in 𝔽qt[x;σ]{\mathbb{F}}_{q^{t}}[x;\sigma] is coefficient wise and multiplication in 𝔽qt[x;σ]{\mathbb{F}}_{q^{t}}[x;\sigma] is distributive and satisfies that for any a𝔽qta\in{\mathbb{F}}_{q^{t}}

xa=σ(a)x.\displaystyle xa=\sigma(a)x.

As the product of skew polynomials is not commutative, evaluating skew polynomials over elements in a finite field is different from evaluating conventional polynomials. The following result, given in [24, 15], provides a simple approach to evaluate skew polynomials.

Definition 5.

For any a𝔽qta\in{\mathbb{F}}_{q^{t}}, let

  1. 1.

    N0(a)=1N_{0}(a)=1;

  2. 2.

    Ni+1(a)=σ(Ni(a))aN_{i+1}(a)=\sigma(N_{i}(a))a for ii\in\mathbb{N}.

Lemma 6.

Let f(x)=i=0fixi𝔽qt[x;σ]f(x)=\sum_{i=0}f_{i}x^{i}\in{\mathbb{F}}_{q^{t}}[x;\sigma]. Then the evaluation of f(x)f(x) at any a𝔽qta\in{\mathbb{F}}_{q^{t}} is given by

f(a)=ifiNi(a).\displaystyle f(a)=\sum_{i}f_{i}N_{i}(a).

Different from conventional polynomials, a skew polynomial f(x)𝔽qt[x;σ]f(x)\in{\mathbb{F}}_{q^{t}}[x;\sigma] may have more than degf\deg f roots in 𝔽qt{\mathbb{F}}_{q^{t}}. Moreover, the roots may belong to distinct conjugacy classes in 𝔽qt{\mathbb{F}}_{q^{t}} induced by the field automorphism σ\sigma. The notion of conjugacy classes, introduced in [24, 15], is given below.

Definition 6.

Let a,b𝔽qta,b\in{\mathbb{F}}_{q^{t}}. Then bb is a conjugate of aa with respect to the field automorphism σ\sigma if there exists β𝔽qt\beta\in{\mathbb{F}}_{q^{t}}^{*} such that

b=σ(β)aβ1.\displaystyle b=\sigma(\beta)a\beta^{-1}.

We also call bb the β\beta-conjugate of aa with respect to σ\sigma and write b=aβb={}^{\beta}a for brevity.

The notion of conjugacy above defines an equivalence relation in 𝔽qt{\mathbb{F}}_{q^{t}}, and thus we can partition 𝔽qt{\mathbb{F}}_{q^{t}} into distinct conjugacy classes. For any a𝔽qta\in{\mathbb{F}}_{q^{t}}, let us denote by Caσ={σ(β)aβ1β𝔽qt}C_{a}^{\sigma}=\{\sigma(\beta)a\beta^{-1}\mid\beta\in{\mathbb{F}}_{q^{t}}^{*}\} the conjugacy class with representative a𝔽qta\in{\mathbb{F}}_{q^{t}}.

Proposition 7.

Let γ\gamma be a primitive element of 𝔽qt{\mathbb{F}}_{q^{t}}. Then {C0σ,Cγ0σ,Cγ1σ,,Cγq2σ}\{C_{0}^{\sigma},C_{\gamma^{0}}^{\sigma},C_{\gamma^{1}}^{\sigma},\ldots,C_{\gamma^{q-2}}^{\sigma}\} is a partition of 𝔽qt{\mathbb{F}}_{q^{t}}. Moreover, |C0σ|=1|C_{0}^{\sigma}|=1 and |Cγiσ|=qt1q1|C_{\gamma^{i}}^{\sigma}|=\frac{q^{t}-1}{q-1} for i=0,,q2i=0,\ldots,q-2.

The set of roots in 𝔽qt{\mathbb{F}}_{q^{t}} of a skew polynomial f(x)𝔽qt[x;σ]f(x)\in{\mathbb{F}}_{q^{t}}[x;\sigma] has interesting structures closely related to the conjugacy classes of 𝔽qt{\mathbb{F}}_{q^{t}}. The result below can be found in [26], [24, 15].

Theorem 8.

Let f(x)𝔽qt[x;σ]f(x)\in{\mathbb{F}}_{q^{t}}[x;\sigma] be a nonzero skew polynomial and Ω\Omega be the set of roots of f(x)f(x) in 𝔽qt{\mathbb{F}}_{q^{t}}. Further, let iΩi=Ω\bigcup_{i}\Omega_{i}=\Omega be the partition of Ω\Omega into conjugacy classes and let 𝒮i={βaiβΩi}{0}{\mathscr{S}}_{i}=\{\beta\mid{}^{\beta}a_{i}\in\Omega_{i}\}\cup\{0\} where aia_{i} is some fixed representative in Ωi\Omega_{i}. Then 𝒮i{\mathscr{S}}_{i} is a vector space over FiF_{i} where Fi=𝔽qtF_{i}={\mathbb{F}}_{q^{t}} if Ωi=C0σ\Omega_{i}=C_{0}^{\sigma} and otherwise Fi=𝔽qF_{i}={\mathbb{F}}_{q}. Moreover,

idimFi𝒮idegf.\displaystyle\sum_{i}\dim_{F_{i}}{\mathscr{S}}_{i}\leq\deg f.
Definition 7.

Let kk be a positive integer and let Ω={a1,,an}𝔽qt\Omega=\{a_{1},\ldots,a_{n}\}\subset{\mathbb{F}}_{q^{t}}. The k×nk\times n skew Vandermonde matrix with respect to Ω\Omega, denoted by Vk(Ω)V_{k}(\Omega), is defined to be

Vk(Ω)=(N0(a1)N0(a2)N0(an)N1(a1)N1(a2)N1(an)Nk1(a1)Nk1(a2)Nk1(an)).\displaystyle V_{k}(\Omega)=\begin{pmatrix}N_{0}(a_{1})&N_{0}(a_{2})&\cdots&N_{0}(a_{n})\\ N_{1}(a_{1})&N_{1}(a_{2})&\cdots&N_{1}(a_{n})\\ \vdots&\vdots&\ddots&\vdots\\ N_{k-1}(a_{1})&N_{k-1}(a_{2})&\cdots&N_{k-1}(a_{n})\end{pmatrix}.

The following corollary is a consequence of Theorem 8.

Corollary 9.

Let Ω\Omega be an nn-subset of 𝔽qt{\mathbb{F}}_{q^{t}} and iΩi=Ω\bigcup_{i}\Omega_{i}=\Omega be the partition of Ω\Omega into conjugacy classes. Let li=|Ωi|l_{i}=|\Omega_{i}| and fix aiΩia_{i}\in\Omega_{i}. Suppose further that Ωi={aiβijj=1,,li}\Omega_{i}=\{{}^{\beta_{ij}}a_{i}\mid j=1,\ldots,l_{i}\}. Then Vn(Ω)V_{n}(\Omega) has full rank if and only if for each ii the set {βijj=1,,li}\{\beta_{ij}\mid j=1,\ldots,l_{i}\} is linearly independent over FiF_{i} where Fi=𝔽qtF_{i}={\mathbb{F}}_{q^{t}} if Ωi=C0σ\Omega_{i}=C_{0}^{\sigma} and otherwise Fi=𝔽qF_{i}={\mathbb{F}}_{q}.

Note that evaluation of skew polynomials does not preserve linearity. Nevertheless, the following result provides a way to linearize the evaluation of skew polynomials on any conjugacy classes, which was first shown in [24].

Lemma 10.

Let f(x)𝔽qt[x;σ],a𝔽qtf(x)\in{\mathbb{F}}_{q^{t}}[x;\sigma],a\in{\mathbb{F}}_{q^{t}}, and β𝔽qt\beta\in{\mathbb{F}}_{q^{t}}^{*}. Then 𝒟f,a(β):=f(aβ)β{\mathscr{D}}_{f,a}(\beta):=f({}^{\beta}a)\beta is an 𝔽q{\mathbb{F}}_{q}-linear map. In other words, for any λ1,λ2𝔽q\lambda_{1},\lambda_{2}\in{\mathbb{F}}_{q} and β1,β2𝔽qt\beta_{1},\beta_{2}\in{\mathbb{F}}_{q^{t}}, we have 𝒟f,a(λ1β1+λ2β2)=λ1𝒟f,a(β1)+λ2𝒟f,a(β2){\mathscr{D}}_{f,a}(\lambda_{1}\beta_{1}+\lambda_{2}\beta_{2})=\lambda_{1}{\mathscr{D}}_{f,a}(\beta_{1})+\lambda_{2}{\mathscr{D}}_{f,a}(\beta_{2}).

Proposition 7, Theorem 8, and Lemma 10 together imply the corollary below.

Corollary 11.

Let f(x)𝔽qt[x;σ]f(x)\in{\mathbb{F}}_{q^{t}}[x;\sigma] be a nonzero skew polynomial and let a𝔽qta\in{\mathbb{F}}_{q^{t}}^{*}. Further, let ker𝒟f,a:={β𝔽qt𝒟f,a(β)=0}{0}\ker{\mathscr{D}}_{f,a}:=\{\beta\in{\mathbb{F}}_{q^{t}}^{*}\mid{\mathscr{D}}_{f,a}(\beta)=0\}\cup\{0\}. If γ\gamma be a primitive element of 𝔽qt{\mathbb{F}}_{q^{t}} then

i=0q2dim𝔽qker𝒟f,γidegf.\displaystyle\sum_{i=0}^{q-2}\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,\gamma^{i}}\leq\deg f.

III Construction

In this section we will construct (n,k)(n,k) MDP convolutional codes with degree δ{k,nk}\delta\in\{k,n-k\}. In the following, we will first present a construction of unit memory convolutional codes whose generator matrix is constructed based on skew Vandermonde matrices.

Construction III.1.

Let t=2kt=2k and let qmax{3,n}q\geq\max\{3,n\} be a prime power. Let 𝔽qt{\mathbb{F}}_{q^{t}} be a finite field and γ\gamma be a primitive element of 𝔽qt{\mathbb{F}}_{q^{t}}.444By the assumption that qmax{3,n}q\geq\max\{3,n\}, it follows from Proposition 7 that there exists at least three conjugacy classes in 𝔽qt{\mathbb{F}}_{q^{t}}. Further, let {λ1,,λn}𝔽q\{\lambda_{1},\ldots,\lambda_{n}\}\subset{\mathbb{F}}_{q} be nn distinct elements and define α1,,αn,β1,,βn𝔽qt\alpha_{1},\ldots,\alpha_{n},\beta_{1},\ldots,\beta_{n}\in{\mathbb{F}}_{q^{t}} using an arbitrary basis for 𝔽qt{\mathbb{F}}_{q^{t}} over 𝔽q{\mathbb{F}}_{q} as

αi\displaystyle\alpha_{i} =(1,λi,λi2,,λik1,0,,0),i=1,,n;\displaystyle=(1,\lambda_{i},\lambda_{i}^{2},\ldots,\lambda_{i}^{k-1},0,\ldots,0),\quad i=1,\ldots,n; (3)
βi\displaystyle\beta_{i} =(1,λi,λi2,,λit1),i=1,,n.\displaystyle=(1,\lambda_{i},\lambda_{i}^{2},\ldots,\lambda_{i}^{t-1}),\quad i=1,\ldots,n. (4)

Let 𝒞{\mathscr{C}} be an (n,k)(n,k) convolutional code over 𝔽qt{\mathbb{F}}_{q^{t}} with generator matrix G(D)=G0+G1DG(D)=G_{0}+G_{1}D where G0G_{0} and G1G_{1} are given by

G0=(N0(1α1)α1N0(1α2)α2N0(1αn)αnN1(1α1)α1N1(1α2)α2N1(1αn)αnNk1(1α1)α1Nk1(1α2)α2Nk1(1αn)αn),\displaystyle G_{0}=\begin{pmatrix}N_{0}({}^{\alpha_{1}}1)\alpha_{1}&N_{0}({}^{\alpha_{2}}1)\alpha_{2}&\cdots&N_{0}({}^{\alpha_{n}}1)\alpha_{n}\\ N_{1}({}^{\alpha_{1}}1)\alpha_{1}&N_{1}({}^{\alpha_{2}}1)\alpha_{2}&\cdots&N_{1}({}^{\alpha_{n}}1)\alpha_{n}\\ \vdots&\vdots&\ddots&\vdots\\ N_{k-1}({}^{\alpha_{1}}1)\alpha_{1}&N_{k-1}({}^{\alpha_{2}}1)\alpha_{2}&\cdots&N_{k-1}({}^{\alpha_{n}}1)\alpha_{n}\end{pmatrix}, (5)
G1=(N0(γβ1)β1N0(γβ2)β2N0(γβn)βnN1(γβ1)β1N1(γβ2)β2N1(γβn)βnNk1(γβ1)β1Nk1(γβ2)β2Nk1(γβn)βn).\displaystyle G_{1}=\begin{pmatrix}N_{0}({}^{\beta_{1}}\gamma)\beta_{1}&N_{0}({}^{\beta_{2}}\gamma)\beta_{2}&\cdots&N_{0}({}^{\beta_{n}}\gamma)\beta_{n}\\ N_{1}({}^{\beta_{1}}\gamma)\beta_{1}&N_{1}({}^{\beta_{2}}\gamma)\beta_{2}&\cdots&N_{1}({}^{\beta_{n}}\gamma)\beta_{n}\\ \vdots&\vdots&\ddots&\vdots\\ N_{k-1}({}^{\beta_{1}}\gamma)\beta_{1}&N_{k-1}({}^{\beta_{2}}\gamma)\beta_{2}&\cdots&N_{k-1}({}^{\beta_{n}}\gamma)\beta_{n}\end{pmatrix}. (6)

Before proving the code 𝒞{\mathscr{C}} is a unit memory MDP convolutional code, let us first show that its generator matrix G(D)G(D) has certain desirable properties.

Proposition 12.

Any k×kk\times k submatrix of G0G_{0} or G1G_{1} defined in Construction III.1 has full rank.

Proof.

The construction (3) of αi𝔽qt\alpha_{i}\in{\mathbb{F}}_{q^{t}} ensures that any kk elements of {αii=1,,n}\{\alpha_{i}\mid i=1,\ldots,n\} are linearly independent over 𝔽q{\mathbb{F}}_{q}. By Corollary 9, any k×kk\times k submatrix of the skew Vandermonde matrix Vk({1α1,,1αn})V_{k}(\{{}^{\alpha_{1}}1,\ldots,{}^{\alpha_{n}}1\}) has full rank. Observe that G0G_{0} can be obtained by multiplying the iith column of Vk({1α1,,1αn})V_{k}(\{{}^{\alpha_{1}}1,\ldots,{}^{\alpha_{n}}1\}) the nonzero element αi\alpha_{i} for all i=1,,ni=1,\ldots,n. It follows that any k×kk\times k submatrix of G0G_{0} has full rank. Similarly, one can show that, by the construction (4) of βi𝔽qt\beta_{i}\in{\mathbb{F}}_{q^{t}}, any k×kk\times k submatrix of G1G_{1} has full rank. ∎

Proposition 13.

The k×nk\times n generator matrix G(D)G(D) defined in Construction III.1 is minimal.

Proof.

It is clear that the matrix of the highest order coefficients for G(D)G(D) is G¯=G1\bar{G}=G_{1}. Moreover, by Proposition 12, G¯\bar{G} has rank kk. Therefore, by Lemma 1, G(D)G(D) is minimal. ∎

Now we are ready to prove that 𝒞{\mathscr{C}} is an MDP convolutional code whenever the rate k/n<1/2k/n<1/2.

Theorem 14.

Let n>2kn>2k. Then the (n,k)(n,k) code 𝒞{\mathscr{C}} defined in Construction III.1 is an (n,k,δ=k)(n,k,\delta=k) unit memory MDP convolutional code over 𝔽qt{\mathbb{F}}_{q^{t}}.

Proof.

It is clear that the memory of the generator matrix G(D)G(D) is m=1m=1 and we have

G1c=(G0G1G0).\displaystyle G_{1}^{c}=\begin{pmatrix}G_{0}&G_{1}\\ &G_{0}\end{pmatrix}.

By Proposition 13, G(D)G(D) is minimal, and thus the degree of 𝒞{\mathscr{C}} is δ=k\delta=k. Since n>2kn>2k, we have L=δk+δnk=1L=\lfloor\frac{\delta}{k}\rfloor+\lfloor\frac{\delta}{n-k}\rfloor=1. Note that G(D)G(D) has generic row degrees. Therefore, by Lemma 4, it suffices to show that G1cG_{1}^{c} has the MDP property. Namely, if G1cG_{1}^{c} satisfies Item 2 of Theorem 3, then 𝒞{\mathscr{C}} is an MDP convolutional code with degree δ=k\delta=k.

Let A,B{1,,n}A,B\subset\{1,\ldots,n\} be such that |A|k|A|\leq k and |B|=2k|A||B|=2k-|A|. Let PP be the 2k×2k2k\times 2k matrix formed by columns of G1cG_{1}^{c} with indices in the set A(n+B)A\cup(n+B) where n+Bn+B means adding every element of BB by the integer nn. Further, let f=(f0,f1,,fk1)𝔽qtkf=(f_{0},f_{1},\ldots,f_{k-1})\in{\mathbb{F}}_{q^{t}}^{k} and h=(h0,h1,,hk1)𝔽qtkh=(h_{0},h_{1},\ldots,h_{k-1})\in{\mathbb{F}}_{q^{t}}^{k}. We would like to show that (f,h)P=0(f,h)P=0 if and only if (f,h)=0(f,h)=0. Let f(x)=i=0k1fixi𝔽qt[x,σ],h(x)=i=0k1hixi𝔽qt[x,σ]f(x)=\sum_{i=0}^{k-1}f_{i}x^{i}\in{\mathbb{F}}_{q^{t}}[x,\sigma],h(x)=\sum_{i=0}^{k-1}h_{i}x^{i}\in{\mathbb{F}}_{q^{t}}[x,\sigma] be skew polynomials. Then, by Lemma 6 and Lemma 10, it is equivalent to showing that

𝒟f,1(αu)=0,uA;\displaystyle{\mathscr{D}}_{f,1}(\alpha_{u})=0,\quad u\in A; (7)
𝒟f,γ(βv)+𝒟h,1(αv)=0,vB.\displaystyle{\mathscr{D}}_{f,\gamma}(\beta_{v})+{\mathscr{D}}_{h,1}(\alpha_{v})=0,\quad v\in B. (8)

if and only if (f,h)=0(f,h)=0. For clarity, let us write the matrix PP more explicitly as

P=(G0,AG1,BG0,B),\displaystyle P=\begin{pmatrix}G_{0,A}&G_{1,B}\\ &G_{0,B}\end{pmatrix},

where G0,AG_{0,A} is the submatrix of G0G_{0} with column indices in AA, and G1,BG_{1,B} and G0,BG_{0,B} are defined similarly.

Consider the case |A|=k|A|=k. In this case, we have |B|=k|B|=k. By Proposition 12, G0,A,G1,B,G0,BG_{0,A},G_{1,B},G_{0,B} are k×kk\times k matrices of full rank. It follows that (f,h)P=0(f,h)P=0 if and only if (f,h)=0(f,h)=0.

Consider the case |A|<k|A|<k. In this case, we have |B|>k|B|>k. Suppose there exists (f,h)0(f,h)\neq 0 such that (f,h)P=0(f,h)P=0. Suppose further that h0h\neq 0 but f=0f=0. By Proposition 12, the k×|B|k\times|B| matrix G0,BG_{0,B} has full rank. Therefore, (0,h)P=0(0,h)P=0 implies h=0h=0, which contradicts the assumption that h0h\neq 0. Now suppose that f0f\neq 0 but h=0h=0. Similarly, by Proposition 12, the k×|B|k\times|B| matrix G1,BG_{1,B} has full rank. Therefore, (f,0)P=0(f,0)P=0 implies f=0f=0, which contradicts the assumption that f0f\neq 0, and we are left with the only possibility that f0,h0f\neq 0,h\neq 0 for (f,h)(f,h) to be nonzero.

The conclusion of this theorem for the case |A|<k|A|<k will follow from the following claim.

Claim 15.

If |A|<k|A|<k, f0f\neq 0, and (f,h)P=0(f,h)P=0 then

dim𝔽qSpan𝔽q{𝒟h,1(αv)vB}\displaystyle\dim_{{\mathbb{F}}_{q}}\operatorname{Span}_{{\mathbb{F}}_{q}}\{{\mathscr{D}}_{h,1}(\alpha_{v})\mid v\in B\} k,\displaystyle\leq k, (9)
dim𝔽qSpan𝔽q{𝒟f,γ(βv)vB}\displaystyle\dim_{{\mathbb{F}}_{q}}\operatorname{Span}_{{\mathbb{F}}_{q}}\{{\mathscr{D}}_{f,\gamma}(\beta_{v})\mid v\in B\} k+1.\displaystyle\geq k+1. (10)

Before proving the claim, let us show that this claim indeed implies the theorem. Suppose there exists f0,h0f\neq 0,h\neq 0 such that (f,h)P=0(f,h)P=0. Then Claim 15 holds. By (10) there exists SBS\subset B with |S|k+1|S|\geq k+1 such that {𝒟f,γ(βv)vS}\{{\mathscr{D}}_{f,\gamma}(\beta_{v})\mid v\in S\} is linearly independent over 𝔽q{\mathbb{F}}_{q}. Moreover, since (f,h)P=0(f,h)P=0 then by (8) we have 𝒟f,γ(βv)+𝒟h,1(αv)=0{\mathscr{D}}_{f,\gamma}(\beta_{v})+{\mathscr{D}}_{h,1}(\alpha_{v})=0 for all vSv\in S. It follows that {𝒟h,1(αv)vS}\{{\mathscr{D}}_{h,1}(\alpha_{v})\mid v\in S\} is linearly independent over 𝔽q{\mathbb{F}}_{q}, which contradicts (9) since |S|k+1|S|\geq k+1. Therefore, if (f,h)P=0(f,h)P=0 then (f,h)=0(f,h)=0, and the theorem follows. It remains to establish Claim 15.

Proof of Claim 15: Let us first establish (9). Note that we have |B|>k|B|>k. By construction (3) of αi\alpha_{i}, any kk elements of {αvvB}\{\alpha_{v}\mid v\in B\} form a maximally linearly independent subset of BB. In other words, there exists EBE\subset B with |E|=k|E|=k such that for any vBEv^{*}\in B\setminus E the element αv\alpha_{v^{*}} can be written as an 𝔽q{\mathbb{F}}_{q}-linear combination of {αvvE}\{\alpha_{v}\mid v\in E\}. By Lemma 10, 𝒟h,1{\mathscr{D}}_{h,1} is an 𝔽q{\mathbb{F}}_{q}-linear map. Therefore, for any vBEv^{*}\in B\setminus E the element 𝒟h,1(αv){\mathscr{D}}_{h,1}(\alpha_{v^{*}}) can be written as an 𝔽q{\mathbb{F}}_{q} linear combination of {𝒟h,1(αv)vE}\{{\mathscr{D}}_{h,1}(\alpha_{v})\mid v\in E\}. Thus, dim𝔽qSpan𝔽q{𝒟h,1(αv)vB}k\dim_{{\mathbb{F}}_{q}}\operatorname{Span}_{{\mathbb{F}}_{q}}\{{\mathscr{D}}_{h,1}(\alpha_{v})\mid v\in B\}\leq k.

Next, let us show (10). Note that f(x)f(x) is a nonzero skew polynomial with degfk1\deg f\leq k-1. Therefore, by Corollary 11, dim𝔽qker𝒟f,1+dim𝔽qker𝒟f,γk1\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,1}+\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,\gamma}\leq k-1. At the same time, by (7) we have 𝒟f,1(αu)=0{\mathscr{D}}_{f,1}(\alpha_{u})=0 for all uAu\in A where |A|<k|A|<k. In addition, by construction (3) of αi\alpha_{i}, the elements in {αuuA}\{\alpha_{u}\mid u\in A\} are linearly independent over 𝔽q{\mathbb{F}}_{q}. Therefore, we have dim𝔽qker𝒟f,1|A|\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,1}\geq|A|. It follows that

dim𝔽qker𝒟f,γ\displaystyle\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,\gamma} k1dim𝔽qker𝒟f,1\displaystyle\leq k-1-\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,1}
k1|A|\displaystyle\leq k-1-|A| (11)

Suppose dim𝔽qSpan𝔽q{𝒟f,γ(βv)vB}<k+1\dim_{{\mathbb{F}}_{q}}\operatorname{Span}_{{\mathbb{F}}_{q}}\{{\mathscr{D}}_{f,\gamma}(\beta_{v})\mid v\in B\}<k+1. Then there exists TBT\subset B with |T|k|T|\leq k such that for all vBTv^{*}\in B\setminus T

𝒟f,γ(βv)=vTηv𝒟f,γ(βv),\displaystyle{\mathscr{D}}_{f,\gamma}(\beta_{v^{*}})=\sum_{v\in T}\eta_{v}{\mathscr{D}}_{f,\gamma}(\beta_{v}),

where ηv𝔽q\eta_{v}\in{\mathbb{F}}_{q}. By Lemma 10, 𝒟f,γ{\mathscr{D}}_{f,\gamma} is an 𝔽q{\mathbb{F}}_{q}-linear map. Thus, for all vBTv^{*}\in B\setminus T we have

𝒟f,γ(βv)=𝒟f,γ(vTηvβv).\displaystyle{\mathscr{D}}_{f,\gamma}(\beta_{v^{*}})={\mathscr{D}}_{f,\gamma}\Big{(}\sum_{v\in T}\eta_{v}\beta_{v}\Big{)}.

Let β¯v=βvvTηvβv\bar{\beta}_{v^{*}}=\beta_{v^{*}}-\sum_{v\in T}\eta_{v}\beta_{v}. Then β¯vker𝒟f,γ\bar{\beta}_{v^{*}}\in\ker{\mathscr{D}}_{f,\gamma}. We claim that β¯vSpan𝔽q{βvvT}\bar{\beta}_{v^{*}}\notin\operatorname{Span}_{{\mathbb{F}}_{q}}\{\beta_{v}\mid v\in T\}. Indeed, if β¯vSpan𝔽q{βvvT}\bar{\beta}_{v^{*}}\in\operatorname{Span}_{{\mathbb{F}}_{q}}\{\beta_{v}\mid v\in T\}, then βv\beta_{v^{*}} can be written as a linear combination of {βvvT}\{\beta_{v}\mid v\in T\} over 𝔽q{\mathbb{F}}_{q} where |T|k|T|\leq k. However, by construction (4) of βi\beta_{i}, any t=2kt=2k elements of {βii=1,,n}\{\beta_{i}\mid i=1,\ldots,n\} are linearly independent over 𝔽q{\mathbb{F}}_{q}, which is a contradiction. Furthermore, by construction (4) of βi\beta_{i}, the set {β¯vvBT}\{\bar{\beta}_{v^{*}}\mid v^{*}\in B\setminus T\} is linearly independent over 𝔽q{\mathbb{F}}_{q}. Since β¯vker𝒟f,γ\bar{\beta}_{v^{*}}\in\ker{\mathscr{D}}_{f,\gamma} for all vBTv^{*}\in B\setminus T, we have dim𝔽qker𝒟f,γ|BT||B|k\dim_{{\mathbb{F}}_{q}}\ker{\mathscr{D}}_{f,\gamma}\geq|B\setminus T|\geq|B|-k. Therefore, from (11) we obtain k1|A||B|kk-1-|A|\geq|B|-k, which implies 2k1|A|+|B|=2k2k-1\geq|A|+|B|=2k and leads to a contradiction. This completes the proof of Claim 15 as well as the proof for the theorem. ∎

The above result gives an explicit construction of MDP convolutional code with rate k/n<1/2k/n<1/2 and degree δ=k\delta=k. It can be easily extended to the case of codes with higher rate and the same degree by applying Theorem 5.

Corollary 16.

Let n>2kn>2k and 𝒞{\mathscr{C}}^{\perp} be the dual code of the (n,k)(n,k) code 𝒞{\mathscr{C}} defined in Construction III.1. Then 𝒞{\mathscr{C}}^{\perp} is an (n,nk,δ=k)(n,n-k,\delta=k) MDP convolutional code over 𝔽qt{\mathbb{F}}_{q^{t}}.

Combining Theorem 14 and Corollary 16, we have the following result.

Corollary 17.

Let n2kn\neq 2k. There exists a family of (n,k,δ=k)(n,k,\delta=k) MDP convolutional codes that can be constructed explicitly over a finite field of size Θ(n2k)\Theta(n^{2k}).

Furthermore, the duality of MDP convolutional codes implies that Construction III.1 also gives rise to a family of (n,k)(n,k) MDP convolutional codes with degree δ=nk\delta=n-k.

Corollary 18.

Let n2kn\neq 2k. There exists a family of (n,k,δ=nk)(n,k,\delta=n-k) MDP convolutional codes that can be constructed explicitly over a finite field of size Θ(n2(nk))\Theta(n^{2(n-k)}).

Proof.

Let k~=nk\tilde{k}=n-k and 𝒞~\tilde{{\mathscr{C}}} be the (n,k~)(n,\tilde{k}) convolutional code constructed from Construction III.1. By theorem 14, if n>2k~n>2\tilde{k} then 𝒞~\tilde{{\mathscr{C}}} is an (n,k~,δ=k~)(n,\tilde{k},\delta=\tilde{k}) unit memory MDP convolutional code over 𝔽q2k~{\mathbb{F}}_{q^{2\tilde{k}}}. Furthermore, let 𝒞~\tilde{{\mathscr{C}}}^{\perp} be the dual code of 𝒞~\tilde{{\mathscr{C}}}. Then it follows from Corollary 16 that 𝒞~\tilde{{\mathscr{C}}}^{\perp} is an (n,nk~,δ=k~)(n,n-\tilde{k},\delta=\tilde{k}) MDP convolutional code over 𝔽q2k~{\mathbb{F}}_{q^{2\tilde{k}}}. ∎

IV Concluding remarks

A few observations can be made from Corollary 17 and 18. As mentioned before, it is desirable for (n,k)(n,k) convolutional codes to have small degree. Corollary 17 and 18 imply that, given any parameter nn and kk such that n2kn\neq 2k, there exists a family of (n,k)(n,k) MDP convolutional codes with degree δ=min{k,nk}\delta=\min\{k,n-k\} that can be constructed explicitly over a finite field of size Θ(n2δ)\Theta(n^{2\delta}). In particular, if R=k/nR=k/n is a constant such that 0<R<1,R1/20<R<1,R\neq 1/2, then the codes can be constructed over a finite field of size 2Θ(δlogδ)2^{\Theta(\delta\log\delta)}. A comparison of the field size requirement for constructions of MDP convolution codes with constant rate and memory is given in Table I.

Field size Reference
2O(δ2)2^{O(\delta^{2})} [11]
22O(δ)2^{2^{O(\delta)}} [12]
2O(δ2logδ)2^{O(\delta^{2}\log\delta)} [13]
2O(δlogδ)2^{O(\delta\log\delta)} This paper
2O(δ)2^{O(\delta)} Conjecture in [14]
TABLE I: A comparison of the field size requirement for constructions of MDP convolutional codes with constant rate and memory.

It is worth noting that by Definition 3, when n<2kn<2k we have M=L=1M=L=1, and thus in that case the constructions given by Corollary 17 and 18 are also strongly-MDS convolutional codes.

Finally, it is interesting to generalize the approach in this paper to construct MDP convolutional codes for any L>1L>1 and extend the result to any value of δ\delta.

Acknowledgements

The author is grateful to Alexander Barg for discussion and comments on the first version of this paper.

References

  • [1] D. J. Costello, “A construction technique for random-error-correcting convolutional codes,” IEEE Transactions on Information Theory, vol. 15, no. 5, pp. 631–636, 1969.
  • [2] J. Rosenthal and R. Smarandache, “Maximum distance separable convolutional codes,” Applicable Algebra in Engineering, Communication and Computing, vol. 10, no. 1, pp. 15–32, 1999.
  • [3] J. Justesen, “New convolutional code constructions and a class of asymptotically good time-varying codes,” IEEE Transactions on Information Theory, vol. 19, no. 2, pp. 220–225, 1973.
  • [4] J. L. Massey, D. J. Costello, and J. Justesen, “Polynomial weights and code constructions,” IEEE Transactions on Information Theory, vol. 19, no. 1, pp. 101–110, 1973.
  • [5] R. Smarandache, H. Gluesing-Luerssen, and J. Rosenthal, “Constructions of MDS-convolutional codes,” IEEE Transactions on Information Theory, vol. 47, no. 5, pp. 2045–2049, 2001.
  • [6] H. Gluesing-Luerssen and B. Langfeld, “A class of one-dimensional MDS convolutional codes,” Journal of Algebra and its Applications, vol. 5, no. 04, pp. 505–520, 2006.
  • [7] F. J. Plaza-Martín, J. I. Iglesias-Curto, and G. Serrano-Sotelo, “On the construction of 1-D MDS convolutional Goppa codes,” IEEE transactions on information theory, vol. 59, no. 7, pp. 4615–4625, 2013.
  • [8] L. Julia and R. Pinto, “Constructions of MDS convolutional codes using superregular matrices,” Journal of Algebra Combinatorics Discrete Structures and Applications, vol. 7, no. 1, pp. 73–84, 2020.
  • [9] V. Tomás, J. Rosenthal, and R. Smarandache, “Decoding of convolutional codes over the erasure channel,” IEEE Transactions on Information Theory, vol. 58, no. 1, pp. 90–108, 2012.
  • [10] R. Mahmood, A. Badr, and A. Khisti, “Convolutional codes with maximum column sum rank for network streaming,” IEEE Transactions on Information Theory, vol. 62, no. 6, pp. 3039–3052, 2016.
  • [11] H. Gluesing-Luerssen, J. Rosenthal, and R. Smarandache, “Strongly-MDS convolutional codes,” IEEE Transactions on Information Theory, vol. 52, no. 2, pp. 584–598, 2006.
  • [12] P. Almeida, D. Napp, and R. Pinto, “A new class of superregular matrices and MDP convolutional codes,” Linear Algebra and its Applications, vol. 439, no. 7, pp. 2145–2157, 2013.
  • [13] G. N. Alfarano, D. Napp, A. Neri, and V. Requena, “Weighted Reed-Solomon convolutional codes,” arXiv preprint arXiv:2012.11417, 2020.
  • [14] R. Hutchinson, R. Smarandache, and J. Trumpf, “On superregular matrices and MDP convolutional codes,” Linear Algebra and its Applications, vol. 428, no. 11-12, pp. 2585–2596, 2008.
  • [15] T.-Y. Lam and A. Leroy, “Vandermonde and Wronskian matrices over division rings,” Journal of Algebra, vol. 119, no. 2, pp. 308–336, 1988.
  • [16] J. Lieb, R. Pinto, and J. Rosenthal, “Convolutional codes,” arXiv preprint arXiv:2001.08281, 2020.
  • [17] U. Martínez-Peñas and F. R. Kschischang, “Universal and dynamic locally repairable codes with maximal recoverability via sum-rank codes,” IEEE Transactions on Information Theory, vol. 65, no. 12, pp. 7790–7805, 2019.
  • [18] H. Cai, Y. Miao, M. Schwartz, and X. Tang, “A construction of maximally recoverable codes with order-optimal field size,” IEEE Transactions on Information Theory, 2021.
  • [19] R. Johannesson and K. S. Zigangirov, Fundamentals of convolutional coding.   John Wiley & Sons, 2015.
  • [20] R. J. McEliece and R. P. Stanley, “The general theory of convolutional codes,” The Telecommunications and Data Acquisition Report, 1993.
  • [21] R. Hutchinson, J. Rosenthal, and R. Smarandache, “Convolutional codes with maximum distance profile,” Systems & Control Letters, vol. 54, no. 1, pp. 53–63, 2005.
  • [22] G. N. Alfarano and J. Lieb, “On the left primeness of some polynomial matrices with applications to convolutional codes,” Journal of Algebra and Its Applications, p. 2150207, 2020.
  • [23] O. Ore, “Theory of non-commutative polynomials,” Annals of mathematics, pp. 480–508, 1933.
  • [24] T.-Y. Lam, A general theory of Vandermonde matrices.   Center for Pure and Applied Mathematics, University of California, Berkeley, 1985.
  • [25] U. Martínez-Peñas, “Skew and linearized Reed–Solomon codes and maximum sum rank distance codes over any division ring,” Journal of Algebra, vol. 504, pp. 587–612, 2018.
  • [26] S. Gopi and V. Guruswami, “Improved maximally recoverable LRCs using skew polynomials,” arXiv preprint arXiv:2012.07804, 2020.