Linear codes are desired to have the maximum minimum distance, for some distance measure, in order to be more resistant to errors in the channel. If the objective is to detect and correct as many error symbols as possible, the distance measure to be used is the Hamming distance. The Singleton bound is an upper bound on the largest value for the minimum Hamming distance a code can have, where is the length and is the dimension of the code. Codes achieving it are called Maximum Distance Separable (MDS) codes and a well known example for an MDS code is the Reed–Solomon code. The necessary and sufficient conditions for the existence of Reed–Solomon codes in terms of the zero structure of the generator matrix were conjectured by Dau et al. , and referred to as the GM-MDS conjecture, which was proved in our previous work  and the independent work of Lovett .
In some other scenarios, different distance metrics can be more desirable. For instance, the rank distance, , is another metric, which can be used to design linear codes in random linear network coding or in scenarios where the transmitter and receiver are oblivious to the topology and inner workings of the network (this is often called the incoherent regime). To see why,suppose the code is defined over an extension field
, which can be thought of as a vector space over a base field, then the rank of a codeword in is defined as the dimension of the span of the entries of the codeword over . Since the dimension of the span is at most the number of nonzero elements, we have . Hence, a similar Singleton bound can be derived for the largest rank distance for a fixed code length and dimension . A code achieving this is called a Maximum Rank Distance (MRD) code and Gabidulin codes due to Delsarte  and Gabidulin  are the only known general constructions of it . These codes require a field size of , with .
In a random linear network, every node passes a random linear combination of the messages it has received to the nodes to which it is connected. In this model, the destination node will get a number of random linear combinations of the messages sent from different sources. Silva et al.  showed that subspace codes or Gabidulin codes can be used to transfer messages through this network model. In the absence of errors, the random linear combinations in the network cannot alter the transmitted subspace. In the presence of errors, or adversaries, a few nodes may transmit codewords that are not linear combinations of what they receive. This will alter the subspace by a small rank (given by the number of erroneous nodes or adversaries) and can be corrected by an MRD code. Halbawi et al.  studied a scenario, where each of the source nodes has access to only a subset of all messages. They showed that subcodes of Gabidulin codes with generator matrices that have particular zero pattern (depending on what subset each source has access to) can be used under this scenario. However, they showed the existence and the code design only for networks that have up to source nodes. More specifically, they designed subcodes of Gabidulin codes with the largest rank distance under a support constraint on the generator matrix such that the rows can be divided into groups, where the rows in each group have the same zero pattern.
In this paper, we will give necessary and sufficient conditions for the existence of Gabidulin codes with support constrained generator matrices. Furthermore, if these constraints are not satisfied, we show that the largest possible rank distance can be achieved by subcodes of Gabidulin codes. Our result generalizes the result in  to any number of source nodes in the network. The necessary and sufficient conditions on the support constraints to guarantee the existence of Gabidulin codes and general MRD codes is identical to the conditions for MDS codes (that was recently established in [1, 2] in the context of the GM-MDS conjecture). Furthermore, the field size is now , with . When the rate of the code is not too large () there is no penalty in field size compared to a Gabidulin code with no support constraints.
The rest of the paper is organized as follows: In Section 2, after defining the rank metric and characterizing the generator matrices of Gabidulin codes, we define our problem, namely finding necessary and sufficient conditions for the existence of the Gabidulin codes with support constrained generator matrices. Then, we solve this problem by relying on a claim (Claim 1). Section 3 then proposes a purely algebraic problem on linearized polynomials that contains a more general theorem than Claim 1 and provides a detailed proof. The advantage of the generalization is that it leads itself to proof by induction. Finally, we conclude in Section 4.
2 Gabidulin Codes with Support Constraints
In this section, first we will define the rank distance of a linear code, show its relation with the Hamming distance, and give its largest possible value in terms of the length and dimension of the code. Secondly, we will write some necessary conditions on the support of the generator matrix of a code for the rank distance to achieve this largest possible value. Thirdly, we will characterize the generator matrices of Gabidulin codes, which are the only known general constructions of codes achieving the largest possible rank distance. Then, we will prove that those necessary conditions are also sufficient for the existence of Gabidulin codes, which is the main result of this paper. Our proof relies on a claim (Claim 1), which will be proven in Section 3, and constitutes the major technical contribution of our work.
2.1 Rank Distance
Let be a finite field and be an extension field of . Then, forms a linear space over . Hence, for any , we can define the rank of as
Note that is at most the Hamming weight of , i.e. the number of nonzero entries of :
Let be a linear code with . The rank distance of is defined as
Then, by (2), the rank distance is less than or equal to the Hamming distance:
Hence, the Singleton bound on also holds for the rank distance: . The codes achieving this bound are called Maximum Rank Distance (MRD) codes.
An MRD–code is also an MDS–code but the opposite is not true in general.
2.2 Support constraints (zero constraints)
Suppose that we want to design an MRD–code under a support constraint on the generator matrix . We describe these support constraints through the subsets as follows:
for all nonempty . Hence, it is also necessary for the existence of MRD–codes by Remark 1. Later, we will show that it is actually a sufficient condition to design MRD–codes for fields of size , with .
Note that for , we have . In [3, Theorem 2], Dau et al. showed that one can add elements from to each of these subsets until each has exactly elements by preserving (6) (We also provide a different proof in Appendix B). Note that this operation will only put more zero constraints on but not remove any. This means that the code we design under the new constraints will also satisfy the original constraints. Therefore, without loss of generality, along with (6), we will further assume that
2.3 Gabidulin Codes
where are linearly independent over and hence, . We remark that the linear independence of the ’s over is equivalent to the linear independence of any columns of over [9, Lemma 3.51]. This matrix is also known as the Moore matrix.
by an invertible matrix from the left will not change the code (i.e. the row span) but only changes the basis:
where is full rank. This will allow us to introduce zeros at the desired positions on .
Notice that if we define the polynomials
for , then the entries of will be the values of the ’s evaluated at the ’s i.e. . Then, the support constraints in (5) on will become root constraints on the ’s:
In the view of the above, the question we would like to ask is whether under condition (6), there exist an invertible matrix and linearly independent such that (11) holds. In other words, since is invertible, has the same MRD property of , and also satisfies the support constraints in (5).
We should mention that a similar question for the existence of MDS codes with support constraints on the generator matrix was asked by  and was referred to as the GM–MDS conjecture. This was recently resolved in [1, 2], where it was shown that under (6) MDS codes with small fields size could be constructed using Reed–Solomon codes. The current paper can be viewed as an extension of that result to rank-metric codes and Gabidulin codes.
2.4 Linearized Polynomials
Polynomials in the form of (10) are called linearized polynomials (-polynomials) and it is beneficial to give some of their properties before moving forward. First, we should note that for any and , we have that , which is commonly referred to as the Freshman’s Dream . Furthermore, for any , we have that . Therefore, any linearized polynomial in the form of
is actually a linear map when is considered as a linear space over . Hence, the roots of form a subspace over .
Conversely, it can be shown that for any subspace , the polynomial
is a linearized polynomial, i.e. after expanding the product, the monomials whose exponent is not a power of will vanish [9, Theorem 3.52].
We will now move on to our main problem and later revisit linearized polynomials in Section 3, where more properties of them will be given.
2.5 Existence of Gabidulin Codes
Note that by the definition in (10), we have . Furthermore, since the ’s are assumed to be linearly independent, by (7) and (11), each is enforced to have linearly independent roots. Therefore, the are uniquely defined up to a scaling, and so in monic form
which, in turn, uniquely determines all the entries of in terms of due to (10).
Then, the problem becomes finding linearly independent over such that . In other words, we need to find such that
because ’s are linearly independent if and only if [9, Lemma 3.51].
It is known that there exist such ’s in if is not the zero polynomial and for all , . Note that is not the zero polynomial since the coefficient of the monomial in is because it can only be obtained through multiplication of the diagonals. Furthermore, if Claim 1 below is true, we can conclude that is not the zero polynomial.
is not the zero polynomial if (6) is satisfied.
We will give the proof of Claim 1 later in Section 3 by proving a slightly more general statement. Therefore, in this section, we will proceed by assuming that it is true. Then, is not the zero polynomial and the only question that remains is “what is the largest value of over all ?”, whose answer, in turn, can be used as a sufficient lower bound on the size of the extension field where such ’s exist.
Notice from (17) that for a fixed , the degree of as a polynomial in is
Now, we will compute . From (10), recall that for any , is the coefficient of in . Since is monic, . For , is a polynomial in and (When writing , we consider as a polynomial in ).
To find , consider the definition of in (14). Suppose that (Otherwise, ). Let and define as
which is a linearized polynomial with and hence as a usual polynomial . Since , is independent of ; therefore, we can also write . Then,
Hence, . Then,
So, if the field size is larger than this bound, i.e. , then there exist such that . As a result, we have the following theorem. Note that if and , then
2.6 Subcodes of Gabidulin codes
If the necessary and sufficient condition in (6) is not satisfied, we cannot have an MDS code with the prescribed support constraints, and by fiat we cannot have an MRD code or a Gabidulin code. However, we can still ask whether a code with the largest possible rank distance can be achieved. In fact, we can show that the largest rank distance can be achieved by subcodes of Gabidulin codes for a large enough field sizes. In , the following upper bound on the Hamming distance is noted:
Since the rank distance of the code is upper bounded by the Hamming distance, we have that
Suppose . Then, there exists a subcode of a Gabidulin code in with length , dimension , and rank distance such that its generator matrix satisfies (5).
Define . Then, for any nonempty ,
Hence, by Theorem 1, there exists a Gabidulin code of dimension with an generator matrix having zeros dictated by . Since it is an MRD–code, its rank distance is . The first rows of will generate a subcode whose rank distance is as good as the Gabidulin code: . Hence, this subcode achieves the largest possible rank distance given in (27). ∎
3 Proof of Claim 1 (and More)
In this section, first we will extend the definition of linearized polynomials by allowing their coefficients to be multivariate polynomials. Then, we will propose a more general statement than Claim 1, namely Theorems 3.A and 3.B, which, in fact, arise when trying to apply a proof by induction to Claim 1. Our generalization will be written in two different forms. Theorem 3.A will be in terms of linearized polynomials, whereas Theorem 3.B will be in terms of matrices. However, both are equivalent and more general than Claim 1. We will give a sketch of the proof in the language of matrices while the detailed proof will be given in the language of polynomials. We should emphasize that the material presented here in the matrix language is only for a better illustration of Theorem 3.A.
3.1 Problem Setup
Consider a finite field and an extension field . For , let be the ring of multivariate polynomials in the indeterminates over .
Recall that the notation denotes the ring of polynomials in the indeterminate , whose coefficients are drawn from (the coefficients are multivariate polynomials in ), i.e.,
The set of linearized polynomials over is a subset of , which we define as:
The -degree of is defined as if and . We also take .
Since , for any , we will continue to use and notations by treating as .
We note the following properties of (See [9, Chapter 3] as a reference textbook, where these properties are proven for , i.e., when the coefficients of the linearized polynomials are from . The same proofs can be extended to . We also give the proofs of 1 and 3 in Appendix A as the other properties are obvious):
is a ring with no zero divisors under the addition and the composition operation .
For any , .
For any finite-dimensional subspace over and ,
For any , if , then such that .
For any , if , then and .
For any , if and , then .
We are interested in linearized polynomials of the following form:
Note that these are linearized polynomials in light of 3 above. Furthermore, since the ’s are assumed to be indeterminates, any nontrivial linear combination of them is nonzero, i.e. the ’s are linearly independent. Hence,
For , define the set of linearized polynomials in this form with -degree at most :
We also note the following properties with regards to , whose proofs appear in Appendix A.
For any , we have
For any , if , then .
Let and let (substitute in each coefficient of ). Then, and
As a final note, it will be insightful to describe the composition operation between linearized polynomials in matrix language. It is known that multiplying two polynomials is equivalent to multiplying two Toeplitz matrices since both perform the convolution operation. Now, we will give the analogue when composing two linearized polynomials. Let . For , we define the following matrix:
where for . Note that and are parameters that define the dimensions of the matrix , which is why we subscript by . For any linearized polynomials , we have that
for any such that and . The proof follows straightforward calculations by definition. As a special case, when , , and , we can write for ,
Since by definition, for some , we have the following property.
Let and . Then the first columns of are all zero.
3.2 Main Result
Let and . Then, for any , the followings are equivalent:
For all and such that , we have
For all nonempty , we have
Before moving to the proof, in order to see how Claim 1 becomes a special case of Theorem 3.A, we will give an equivalent way of writing it in terms of matrices with entries from . This will also allow us to see its connection with [1, Theorem 3].
For , let (i.e. such that ). For , we will write instead of for the ease of notation. By 1, will look like as follows, where the ’s represent the nonzero entries:
where is a row vector. Therefore, we can write
which is a linear combination of the rows of
Hence, () in Theorem 3.A is equivalent to saying the matrix has full row rank. Note that first columns of are zero since first columns of are so.
For , let such that . Then, the matrix defined in (46) has full row rank for all if and only if for all nonempty ,
As a special case, when , , , and , each block in becomes a row vector with coefficients of :
For , let with . Then,
if and only if
where ’s are defined as the coefficients of .
3.3 Sketch of the proof of Theorem 3.b
The proof given here for Theorem 3.B omits certain steps that the interested reader can fill in. The complete proof of the equivalent Theorem 3.A is given in Section 3.4 and includes each and every step.
The following identity (48) will be very useful throughout the proof.
For any (wlog assume ), we have for , where . Then, we can write (with the appropriate dimensions for )
where the matrix has columns and rows. Note that these are respectively the left and right hand sides in (47).
Therefore, if (47) does not hold then will be a tall matrix and will not have full row rank, which solves direction. For the other direction, we will try to reduce the problem to the one that has a smaller , or in order to do an inductive proof. We look into two cases:
In the first case, the matrix becomes a square matrix. Hence,
This will reduce the problem into two smaller problems: First one is showing that the matrix on the right in (50) has full row rank. The second one is showing that is non-singular or that , which is equal to the first blocks (see (48)), has full row rank. Both are smaller problems (in terms of the number of blocks) and one can show that both satisfy the inequalities in (47).
In the second case, since the inequalities are strict except for , we have some flexibility to play with the sets. For example, we can remove an element from all the sets ’s containing and increase by (This corresponds to Case 2c in the proof of Theorem 3.A). This operation sets in the matrix and we can claim that if has full row rank, then so does . Hence, it reduces in the problem to . Furthermore, it can be shown that except for two corner cases (see Case 2a and 2b), one can carefully choose such an element so that removing it from the sets will not break (47) for .
The only two corner cases are when none or only one of the ’s is zero. If for all (i.e. the first columns of are all zero), then decreasing and each by and increasing by will reduce the problem into a smaller one (see Case 2a). If there is a unique zero, say (see Case 2b), then the first columns of will be zero only for . Then, the matrix will look like
Hence, the first row is definitely not in the span of the other rows because it contains a nonzero in the th column while the others do not. So, we can reduce the problem by removing the first row. This will decrease and every except by (and maybe too if there is a single row in the first block). Again, it can be shown that this operation does not violate (47).
3.4 Proof of Theorem 3.a
Let . For the ease of notation we will write , which, by 1, is equal to