Lifted Projective ReedSolomon Codes
Abstract
Lifted ReedSolomon codes, introduced by Guo, Kopparty and Sudan in 2013, are known as one of the few families of highrate locally correctable codes. They are built through the evaluation over the affine space of multivariate polynomials whose restriction along any affine line can be interpolated as a low degree univariate polynomial.
In this work, we give a formal definition of their analogues over projective spaces, and we study some of their parameters and features. Local correcting algorithms are first derived from the very nature of these codes, generalizing the wellknown local correcting algorithms for ReedMuller codes. We also prove that the lifting of both ReedSolomon and projective ReedSolomon codes are deeply linked through shortening and puncturing operations. It leads to recursive formulae on their dimension and their monomial bases. We finally emphasize the practicality of lifted projective ReedSolomon codes by computing their information sets and by providing an implementation of the codes and their local correcting algorithms.
1 Introduction
Motivation and previous works.
Locally decodable codes (LDC) and locally correctable codes (LCC) are codes equipped with a probabilistic algorithm which can efficiently decode or correct a single symbol of a noisy codeword, by querying only a few of its symbols. Low degree ReedMuller codes define a wellknown family of LDCs/LCCs with reasonable rate. Indeed, when restricted to an affine line, a sufficiently lowdegree multivariate polynomial can be interpolated by a lowdegree univariate polynomial. However, the rate of such ReedMuller codes stays stuck below . Multiplicity codes [KSY14] were the first family of codes breaking the barrier for correcting a constant fraction of errors. The construction was based on a generalization of ReedMuller codes which introduce multiplicities in the evaluation map. Shortly after the multiplicity codes breakthrough, Guo, Kopparty and Sudan [GKS13] proposed another generalization of ReedMuller codes and considered all the multivariate polynomials (i.e. not only the lowdegree ones) which can be interpolated as lowdegree univariate polynomials when restricted to a line. Surprisingly, it sometimes appears that much more polynomials satisfy this property than the lowdegree ones lying in ReedMuller codes. Resulting codes are named lifted ReedSolomon codes, and in this work, more shortly referred to as affine lifted codes.
Organisation.
In this work, we show how to build analogues of these codes in projective spaces, that we call projective lifted codes. Our construction relies on the notion of degree sets which also appears in [GKS13] and helps us to exhibit relations between affine and projective lifted codes. Section 2 introduce tools necessary to our construction. Affine and projective lifted codes are built in Section 3, where we also prove main properties of projective lifted codes, notably their monomiality and the structure of their degree set. In Section 4 we present a family of local correcting algorithms for projective lifted codes, whose locality depends on the number of admissible errors on the queried line. Section 5 is devoted to the links between affine and projective lifted codes, through puncturing and shortening. Finally, we show miscellaneous properties of projective lifted codes in Section 6 which emphasize their explicitness and practicality: we present explicit information sets, we bound on their minimum distance and we prove their (quasi)cyclicity under certain conditions.
We emphasize the practicality of our construction by presenting tables of parameters of projective lifted codes in Appendix C. A basic implementation of affine and projective lifted codes in the opensource software SageMath [S17] is also made available^{1}^{1}1see https://bitbucket.org/jlavauzelle/lifted_codes.
2 Notation and preliminaries
This section is devoted to introducing the algebraic background for the definition of affine and projective lifted codes.
2.1 Geometry, polynomials and evaluation maps
We denote by the finite field with elements, and by its nonzero elements. For , the affine space of dimension is the set of tuples with coordinates in , and is denoted . We also define the projective space of dimension as
where for , the relation is given by
A projective point will be denoted . It has different representatives, and we call standard representative the only one such that and . The projective space contains distinct points.
The hyperplane at infinity is isomorphic to , and the bijective map embeds into . A projective line is a subset of of the form
for some distinct points . The line is the only one containing both and , and there are exactly projective lines on which a given point lies.
Polynomials and degrees.
We denote by the ring of variate polynomials over . Following the terminology given in [GKS13], for , the set is called the set of degrees of and is denoted . For a subset , we denote by the vector space of polynomials generated by monomials for :
Some subsets are of particular interest. For instance, for ,

the norm ball generates the space of multivariate polynomials of total degree bounded by ,

the norm ball generates the space of multivariate polynomials of partial degree bounded by ,

the norm sphere generates the space of homogeneous polynomials of degree (plus the zero polynomial).
We write the weight of a tuple of integers .
Evaluation of homogeneous polynomials on a projective point.
For any homogeneous polynomial , it is wellknown that
It means that different representatives of a fixed projective point may result to different evaluations by . In order to remove any ambiguity, we adopt the following definition. Let be the standard representation of a projective point . Then we define the evaluation of at as:
In other words, every projective point must be written in the unique standard representation when evaluated by homogeneous polynomials.
Denote by (resp. ) an ordered list of all the projective (resp. affine) points. Thanks to the previous definition, the following evaluation map can be defined without ambiguity for all :
Its affine analogue is:
Clearly, and are linear maps. Since for all , we have
Moreover, since evaluates homogeneous polynomials, for a fixed
These properties are formally proved in [RTR97].
2.2 Evaluation codes
A common way to build linear codes is to evaluate polynomials over a list of points. In this subsection, we formally define the family of evaluation codes we are studying. We also recall wellknown examples of such codes, namely the ReedSolomon and ReedMuller codes, as well as their projective analogues.
Definition 1 (affine evaluation code).
Let be a linear subspace of . The affine evaluation code associated to is the linear code of length composed by the evaluation vectors of polynomials in :
The tuple of evaluation points is called the support of the code.
Definition 2 (projective evaluation code).
Let be a linear subspace of . The projective evaluation code associated to is the linear code of length composed by the evaluation vectors of polynomials in :
Once again, the tuple of evaluation points is called the support of the code.
We point out a specific class of evaluation codes which is generated by evaluation vectors of monomials.
Definition 3 (monomial code).
An affine evaluation code (resp. a projective evaluation code ) is said monomial if for some (resp. ).
As we will see later, monomial codes turn out to be very convenient to describe with their set of degrees .
ReedSolomon and ReedMuller codes.
Definition 4 (ReedSolomon code).
Let . The vector space of evaluation vectors of polynomials of degree over is called the (fulllength) ReedSolomon code:
and has dimension over .
Definition 5 (ReedMuller code).
Let . The (generalized) ReedMuller code of order and degree over is the subspace of consisting in evaluation vectors of variate polynomials over of total degree :
For , the dimension of is given by [AK92]:
and simplifies to for .
ReedMuller codes generalize ReedSolomon codes, in the sense that .
Projective ReedSolomon and ReedMuller codes.
Previous codes can be naturally adapted to the context of projective spaces.
Definition 6 (Projective ReedSolomon code).
Let . The projective ReedSolomon code of dimension over is the linear code of length consisting of the evaluation of bivariate homogeneous polynomials of degree over :
Projective ReedSolomon codes are also called extended, or doublyextended ReedSolomon codes. Similarly, ReedMuller codes have a projective analogue, defined as follows [Lac86, Lac90, Sør91]:
Definition 7 (Projective ReedMuller code).
Let . The projective ReedMuller code of order and degree over is the linear code of length consisting of the evaluation of variate homogeneous polynomials over of degree :
The dimension of is (see [Sør91]):
where . For , it simplifies to .
Once again, by definition we have for every .
2.3 Reduced degree sets
In the previous subsection, we have seen that wellknown families of linear codes are defined as the image of subspaces of polynomials by evaluation maps. For coding theoretic reasons (e.g. giving the dimension of the code, or computing a basis), it is interesting to find sets (resp. ) such that the map (resp. ) is injective over . So let us define such sets.
First of all, we introduce specific tuples.
Definition 8 ( and reduced tuples).

A tuple is reduced if lies in .

A tuple is reduced if, for all :
We see that any reduced tuple is also reduced. We also say that a set of tuples is reduced (resp. reduced) if every tuple it contains is reduced (resp. reduced).
Denote by the canonical basis of . Let , , and assume that and . For such (and only for such ), we define and . Remark that .
Remark 9.
Let or depending on the context (affine or projective). Then,

we have and ;

as long as they are defined, and ;

if no can be applied to , then is reduced;

if no can be applied to , then is reduced;

if we keep applying to some tuple the maps , for , until we cannot apply any of them, then we obtain a reduced tuple;

if we keep applying to some tuple the maps , for , until we cannot apply any of them, then we obtain an reduced tuple.
Definition 10.
Let . The reduction of is the tuple which is obtained by applying iteratively (for ) until the result lies in . It satisfies . The reduction of , denoted , consists in the reduction of the tuples in .
Definition 11.
Let for some . The reduction of is the tuple which is obtained by applying iteratively (for ) until the result is reduced. It satisfies . The reduction of , denoted , consists in the reduction of the tuples in .
 and reduction are defined in order to make the evaluation maps and injective over polynomial spaces of the form , where is  or reduced. Next lemma details these properties.
Lemma 12.
Let and . The following properties hold:

If is reduced, then the map is injective over .

If is reduced, then the map is injective over .

For every , the reduction of is the unique reduced subset of satisfying

For every , the reduction of is the unique reduced subset of satisfying
Proof.

By definition, if is reduced, then is a subset of . Since , we can see that .

We proceed by induction on . Recall that .

For and , let be a reduced subset of . If , it is clear that . So assume and let . Since is reduced, we can write
Then, we see that , hence lies in , for some set . Moreover implies . Hence, the first point of this Lemma (applied to which is reduced) shows that , and follows.

Let and . The proof works similarly. Let be a reduced subset of , and let
Since does not depend on , we can see that and where . Besides, is reduced as a subset of . Therefore, by induction , and follows. Let us define ; we see that and where since is reduced and every degree tuple in comes from a tuple such that . Thanks to the first point of the lemma, it follows that . Therefore, with , which necessarily implies (evaluate it at ).


Since for every , we have . Uniqueness comes from the injectivity of .

Same argument.
∎
Definition 13 (Degree set).
Let be an affine (resp. let be a projective) monomial code. Its degree set is the unique reduction (resp. reduction) of , and is denoted .
By definition, if is monomial, then we have where depending on the context. Moreover, since is injective over , it also holds that:
Example 14.
ReedSolomon and ReedMuller codes, as well as their projective analogues, are monomial codes. Table 1 presents their degree sets.
Code  Degree set 

ReedSolomon code  
ReedMuller code  
projective ReedSolomon code  
projective ReedMuller code 
2.4 Permutations, automorphisms
Generally, a linear code is a linear subspace of for some finite set . Any permutation of induces a permutation of the coordinates of vectors given by:
Denote by the group of permutations of . The subset of permutations of which let invariant is a subgroup of , called the permutation group of , and denoted by .
Let be the semidirect product . Any acts on by:
where denotes the componentwise product between tuples: . If , we simply write .
The subgroup of letting invariant is called the automorphism group of , and is denoted by . Of course, .
Let us finally denote by the group of invertible matrices over . Using the canonical basis, these matrices represent linear automorphisms .
Affine evaluation codes.
In the case , let us define the affine transformations by , for every and . Each is a permutation of . Denote by the group of such transformations:
In Appendix A.3 we prove that for every .
Projective evaluation codes.
In the case , let . Then induces a permutation of , but does not necessarily preserve the standard representation of projective points. Still, there exists such that the standard representative of is . For every , we then have:
and we see that does not depend on (only on its total degree). Let us denote by , and by the permutation of induced by . Then, we have:
Denote by in the context of evaluating homogeneous polynomials of degree . In Appendix A.3 we prove that for every .
2.5 Embedding maps
Here we define maps embedding lines into higher dimensional spaces. For two linear spaces, we denote by the set of linear maps . Let be the set of fullrank (i.e. injective) linear maps from to :
Each induces a projective embedding sending . One can easily check that this map is well defined over projective spaces. Moreover, the set describes all the projective lines of , though a projective line is obviously associated to many maps in .
Similarly, the set
defines affine embeddings by . The set defines the set of affine lines of .
Remark 15.
Elements of and will sometimes be seen as or matrices over . Besides, for convenience and when the context is clear, we will improperly write instead of . By using this notation, we want to emphasize that, for every and every , the map can be interpolated as a univariate polynomial denoted .
Remark 16.
For local correction purposes (see section 4), it is important to notice the following points.

In the affine setting, for every and , the word is a subword of , and can be read at indices for .

In the projective setting, is not necessary a subword of , since nothing asserts that preserves the standard representation of projective points, similarly to the discussion in Subsection 2.4. We solve this issue in a very similar manner. Let and . We know there exists such that the standard representative of is . Then it holds:
Therefore, let us define . Then is a subword of , and can be read at indices for .
Example 17.
Let us fix an ordered list of points in and :
Let and represented by the matrix:
Denote by . On the one hand we have
(1)  
hence . On the other hand , and we get . Clearly .
3 Affine and projective lifted ReedSolomon codes
Before introducing our construction, we recall the definition of affine lifted codes given by Guo, Kopparty and Sudan [GKS13]. Notice that we restrict our study to the lifting of (projective) ReedSolomon codes, but we believe that our construction can be extrapolated to the lifting of (projective) ReedMuller codes. Besides, our formalism is slightly different from the paper of [GKS13], since their notion of restriction of a polynomial along a line is somewhat ambiguous.
3.1 Affine lifted codes
We first need to introduce a few notation.

Let be the adic decomposition of a nonnegative integer . We define a partial order on integers by:
(2) The relation can be naturally extended to tuples by .

We also extend binomial coefficients to tuples of integers by .
We also recall that, for and , the notation represents the univariate polynomial .
Definition 18 (Affine lifting of ReedSolomon codes [Gks13]).
Let and . The affine lifting of order of the ReedSolomon code is
The codes will shortly be called affine lifted codes. In [GKS13] it is also proved that every affine lifted code is monomial and satisfies
(3) 
where and . Note that monomiality of affine lifted code follows from their affineinvariance, by using a result of Kaufman and Sudan [KS08].
A careful observation of their degree sets shows that fits between two projective ReedMuller codes:
(4) 
The main interest of affine lifted codes appears for some values of and (essentially nonprime and close to ), for which the first inclusion is proper. Indeed, Kaufman and Ron give in [KR06] arguments that shows that affine lifted codes are ReedMuller codes as long as (where is the characteristic of the field).
In the setting, some families of affine lifted codes give rise to a family of highrate locally decodable and correctable codes, while ReedMuller codes have rate bounded by . More specifically, the following theorem is proved in [GKS13] (we report the formal definition of locally correctable codes to Section 4):
Theorem 19 (High rate lifted codes, [Gks13]).
Let and . Define