Optimal Repair Schemes for Some Families of Full-Length Reed-Solomon Codes
aa r X i v : . [ c s . I T ] M a y Optimal Repair Schemes for Some Families ofFull-Length Reed-Solomon Codes
Hoang Dau and Olgica Milenkovic
ECE Department, University of Illinois at Urbana-ChampaignEmails: [email protected], [email protected]
Abstract —Reed-Solomon codes have found many applications inpractical storage systems, but were until recently considered unsuit-able for distributed storage applications due to the widely-held beliefthat they have poor repair bandwidth. The work of Guruswamiand Wootters (STOC’16) has shown that one can actually performbandwidth-efficient linear repair with Reed-Solomon codes: Whenthe codes are over the field F q t and the number of parities r ≥ q s ,where ( t − s ) divides t , there exists a linear scheme that achieves arepair bandwidth of ( n − t − s ) log q bits. We extend this resultby showing the existence of such a linear repair scheme for every ≤ s < t . Moreover, our new schemes are optimal among all linearrepair schemes for Reed-Solomon codes when n = q t and r = q s .Additionally, we improve the lower bound on the repair bandwidthfor Reed-Solomon codes, also established in the work of Guruswamiand Wootters. I. I
NTRODUCTION
The repair bandwidth is an important parameter of erasurecodes used for assessing their performance in distributed storageapplications [1], [2]. In distributed storage systems, for a chosenfinite field F , a data vector in F k is mapped to a codeword vectorin F n , whose entries are subsequently stored at different storagenodes. When a node fails, the symbol stored at that node is erased(lost). A replacement node has to recover the content stored atthe failed node by downloading information from the remainingoperational nodes. The repair bandwidth is the total amount ofinformation that the replacement node has to download in orderto successfully complete the repair process.At first glance, Reed-Solomon codes [3], [4] do not appearsuitable for repair tasks as recovering the content stored at asingle failed node requires downloading the whole file, i.e., k symbols over F . To mitigate this problem, a number of repair-efficient codes such as regenerating codes [1], [2], [5] and locallyrepairable codes [6], [7], [8] were constructed and proposedfor practical implementation. Reed-Solomon codes, along withreplication codes, nonetheless remain the most frequently usederasure codes. They are core components of storage systems suchas Google File System II, Quantcast File System, Yahoo ObjectStore, Facebook HDFS-RAID, and HDFS-EC.Guruswami and Wootters [9] recently proposed a bandwidth-efficient repair method Reed-Solomon codes. The key idea behindtheir method is to download sub-symbols rather than symbols .More precisely, a single erased symbol is recovered by collectinga sufficient number of its (field) traces, each of which can beconstructed from a number of traces of other symbols. As alltraces belong to a smaller subfield B = F q of F = F q t andtraces from the same symbol are related, the repair bandwidth canbe significant reduced. One instance of interest for which theirmethod produces a repair scheme with optimal repair bandwidthis when the code has “full” length n = | F | = q t and redundancy r △ = n − k = q s , where ( t − s ) | t . On the other hand, there exists a rich literature on non-Reed-Solomon maximum-distance separable (MDS) codes (see [4,Chp. 10]) with optimal repair bandwidth, referred to as minimum-storage regenerating (MSR) codes [5], [10]. Some notable exam-ples of MSR codes include the low-rate product-matrix code [11]and all-rates Zigzag code [12], [13]. High-rate MSR codes, how-ever, employ subpacketization levels that are often exponentialin n . The problem of finding bandwidth-efficient repair schemesfor MDS codes such as Reed-Solomon codes was first raisedby Dimakis et al. [5]. The repair process for Reed-Solomoncodes was studied in the work of Shanmugam et al. [14], whichproposed interference alignment techniques to repair systematicnode failures; and Guruswami and Wootters [9], which introducedthe trace collection technique to repair any single erasure forReed-Solomon codes. Their technique was recently generalizedto tackle two and three erasures by Dau et al. [15]. In a relatedline of work, Ye and Barg [16] constructed Reed-Solomon codeswith asymptotically optimal repair bandwidth (among all MDScodes) and exponentially large subpacketization. The work of [9]and our recent results [15], in contrast, use subpacketization assmall as log q n .Repair schemes for Reed-Solomon codes with optimal band-widths have only been constructed for redundancies equal to r = q s , where ( t − s ) divides t . The goal of this work isto determine the optimal repair bandwidths of all full-lengthReed-Solomon codes for which the number of parities r isallowed to vary from to n − . For this scenario, we settlean important case: we present schemes with repair bandwidth ( n − t − s ) log q , for r ≥ q s and for every s < t . Thisbandwidth is optimal for Reed-Solomon codes whenever n = q t and r = q s . The key idea behind our approach is to use linearized,instead of trace polynomials, to generate the dual codewords usedfor repair. Additionally, we derive a lower bound on the repairbandwidth of Reed-Solomon codes that improves the boundof [9]. Theoretical results and numerical evidence suggest thatthe lower bound matches the optimal repair bandwidths of allfull-length Reed-Solomon codes.The paper is organized as follows. We provide relevant defi-nitions and introduce the terminology used throughout the paperand then proceed to discuss the Guruswami-Wootters repairscheme for Reed-Solomon codes in Section II. The improvedlower bound on the repair bandwidth is presented in Section III.The main results of the work are presented in Section IV.II. R EPAIRING O NE E RASURE IN R EED -S OLOMON C ODES
We start by introducing relevant definitions and the notationused in all subsequent derivations, and then proceed to review theapproach proposed by Guruswami and Wootters [9] for repairinga single erasure/node failure in Reed-Solomon codes. . Definitions and Notation
Let [ n ] denote the set { , , . . . , n } . Let B = F q be the finitefield of q elements, for some prime power q . Let F = F q t be anextension field of B , where t ≥ . We refer to the elements of F as symbols and the elements of B as sub-symbols . The field F may also be viewed as a vector space of dimension t over B ,i.e. F ∼ = B t , and hence each symbol in F may be representedas a vector of length t over B . A linear [ n, k ] code C over F is a subspace of F n of dimension k . Each element of a code isreferred to as a codeword. The dual of a code C , denoted C ⊥ , isthe orthogonal complement of C , and has dimension r = n − k . Definition 1.
Let F [ x ] denote the ring of polynomials over F .A Reed-Solomon code RS ( A, k ) ⊆ F n of dimension k over afinite field F with evaluation points A = { α , α , . . . , α n } ⊆ F is defined as:RS ( A, k ) = n(cid:0) f ( α ) , . . . , f ( α n ) (cid:1) : f ∈ F [ x ] , deg( f ) < k o . A generalized Reed-Solomon code, GRS ( A, k, λ ) , where λ =( λ , . . . , λ n ) ∈ F n , is defined similarly to a Reed-Solomoncode, except that the codeword corresponding to a polynomial f is defined as (cid:0) λ f ( α ) , . . . , λ n f ( α n ) (cid:1) , λ i = 0 for all i ∈ [ n ] . It is well known that the dual of a Reed-Solomon codeRS ( A, k ) , for any n ≤ | F | , is a generalized Reed-Solomoncode GRS ( A, n − k, λ ) , for some multiplier vector λ (see [4,Chp. 10]). Whenever clear from the context, we use f ( x ) todenote a polynomial of degree at most k − , which correspondsto a codeword of the Reed-Solomon code C = RS ( A, k ) , and g ( x ) to denote a polynomial of degree at most r − n − k − ,which corresponds to a codeword of the dual code C ⊥ . Since P α ∈ A g ( α )( λ α f ( α )) = 0 , we refer to the polynomial g ( x ) as acheck polynomial for C . Note that when n = | F | , we have λ α = 1 for all α ∈ F . In general, as recovering f ( α ) is equivalent torecovering λ α f ( α ) , to simplify the notation, we omit the factor λ α in our derivations. B. The Guruswami-Wootters Repair Scheme for One Erasure
Suppose that the polynomial f ( x ) ∈ F [ x ] corresponds to acodeword of the Reed-Solomon code C = RS ( A, k ) and that f ( α ∗ ) is the erased symbol, where α ∗ ∈ A is an evaluation pointof the code.Given that F is an extension field of B of degree t , i.e. F = F q t and B = F q , for some prime power q , one may definethe field trace of any symbol α ∈ F according to Tr F/B ( α ) = P t − i =0 α q i . The trace belongs to B . When clear from the context,we omit the subscript F/B . The key points in the repair schemeproposed by Guruswami and Wootters [9] can be summarizedas follows. First, each symbol in F can be recovered from its t independent traces. More precisely, given a basis u , u , . . . , u t of F over B , any α ∈ F can be uniquely determined given thevalues of Tr ( u i α ) for i ∈ [ t ] , i.e. α = P ti =1 Tr ( u i α ) u ⊥ i , where { u ⊥ i } ti =1 is the dual (trace-orthogonal) basis of { u i } ti =1 (see, forinstance [17, Ch. 2, Def. 2.30]). Second, when r ≥ q t − , thetrace function also provide checks that generate repair equationswith coefficients that are linearly dependent over B , which keepsthe repair cost low.Note that the checks of C are precisely those polynomials g ( x ) ∈ F [ x ] that satisfy deg( g ) ≤ r − . For r ≥ q t − , wemay define repair checks via the trace function as follows. Foreach u ∈ F and α ∈ F , we introduce the polynomial g u,α ( x ) = Tr (cid:0) u ( x − α ) (cid:1) / ( x − α ) . (1)By the definition of a trace function, the next lemma follows ina straightforward manner. Lemma 1 ([9]) . The polynomial g u,α ( x ) defined in (1) satisfiesthe following properties.(a) deg( g u,α ) = q t − − ; (b) g u,α ( α ) = u . By Lemma 1 (a), deg( g u,α ) = q t − − ≤ r − . Therefore,the polynomial g u,α ( x ) corresponds to a codeword of C ⊥ and isa check for C . Now let U = { u , . . . , u t } be a basis of F over B , and set g i ( x ) △ = g u i ,α ∗ ( x ) = Tr (cid:0) u i ( x − α ∗ ) (cid:1) / ( x − α ∗ ) , i ∈ [ t ] . These t polynomials correspond to t codewords of C ⊥ . Therefore,we obtain t equations of the form g i ( α ∗ ) f ( α ∗ ) = − X α ∈ A \{ α ∗ } g i ( α ) f ( α ) , i ∈ [ t ] . (2)A key step in the Guruswami-Wootters repair scheme is to applythe trace function to both sides of (2) to obtain t different repairequations Tr (cid:0) g i ( α ∗ ) f ( α ∗ ) (cid:1) = − X α ∈ A \{ α ∗ } Tr (cid:0) g i ( α ) f ( α ) (cid:1) , i ∈ [ t ] . (3)According to Lemma 1 (b), g i ( α ∗ ) = u i , for i = 1 , . . . , t .Moreover, by the linearity of the trace function, we can rewrite (3)as follows. For i = 1 , . . . , t , Tr (cid:0) u i f ( α ∗ ) (cid:1) = − X α ∈ A \{ α ∗ } Tr (cid:0) u i ( α − α ∗ ) (cid:1) × Tr (cid:16) f ( α ) α − α ∗ (cid:17) . (4)The right-hand side sums of the equations (4) may be computedby downloading the reconstruction trace Tr (cid:16) f ( α ) α − α ∗ (cid:17) from thenode storing f ( α ) , for each α ∈ A \ { α ∗ } . As a consequence,the t independent traces Tr (cid:0) u i f ( α ∗ ) (cid:1) , i = 1 , . . . , t , of f ( α ∗ ) can be determined by downloading one sub-symbol from eachof the n − available nodes, and the erased symbol f ( α ∗ ) maysubsequently be recovered from its t independent traces. Thefollowing theorem summarizes this brief discussion. Theorem 1 ([9]) . When r ≥ q t − , there exists a repair schemefor Reed-Solomon codes with a repair bandwidth of ( n −
1) log q bits. More generally, if r ≥ q s , where ( t − s ) | t , by setting B = F q t − s one can devise a repair scheme with bandwidth ( n − t − s ) log q bits, which is optimal when n = q t and r = q s . In general, any set of t polynomials { g ( x ) , . . . , g t ( x ) } each of which has degree at most r − and such that rank q { g ( α ∗ ) , . . . , g t ( α ∗ ) } = t can be used to repair f ( α ∗ ) .The repair bandwidth in this case equals b = P α ∈ A \{ α ∗ } b α sub-symbols, where b α △ = rank q (cid:0) { g ( α ) , . . . , g t ( α ) } (cid:1) . Moreover,in this case b α equals the number of sub-symbols downloadedduring the repair process from the node storing f ( α ) .III. A L OWER B OUND ON THE R EPAIR B ANDWIDTH
In order to show that the scheme discussed in Section II isoptimal, Guruswami and Wootters [9] established a lower boundon the repair bandwidth for Reed-Solomon codes . We startour exposition by improving their bound. The result of thisderivation also suggests the number of sub-symbols that needto be downloaded from each available node using an optimal The derivations in the bound contained a minor error, which we correct inour derivation. epair scheme. Consequently, the bound allows one to performa theoretical/numerical search for optimal repair schemes in asimplified manner.
Proposition 1.
Any linear repair scheme for Reed-Solomon codesRS ( A, k ) over the extension field F = F q t that uses the subfield B = F q requires a bandwidth of at least ℓ ⌊ b AVE ⌋ + ( n − − ℓ ) ⌈ b AVE ⌉ sub-symbols over B , where n = | A | ≤ | F | , and where b AVE and ℓ are defined as b AVE △ = log q (cid:16) ( n − | F | ( r − | F | −
1) + ( n − (cid:17) , and ℓ △ = n − if b AVE ∈ Z , and ℓ △ = (cid:22) L − ( n − q −⌈ b AVE ⌉ q −⌊ b AVE ⌋ − q −⌈ b AVE ⌉ (cid:23) otherwise. Here, L △ = ( r − | F | −
1) + ( n − | F | . Proof.
The first part of the proof proceeds along the same linesas the proof of [9, Thm. 6]. But once the optimization problem issolved to arrive at a fractional lower bound, rather than allowingthe number of sub-symbols downloaded from each available nodeto be real-valued, we perform a rounding procedure which leadsto an improved integral lower bound.Fix any α ∗ ∈ A and consider an arbitrary exactlinear repair scheme of Reed-Solomon codes for thenode storing f ( α ∗ ) that uses b sub-symbols from B . By [9, Thm. 4], there is a set of t polynomials g ( x ) , . . . , g t ( x ) such that rank q (cid:0) { g ( α ∗ ) , . . . , g t ( α ∗ ) } (cid:1) = t and rank q (cid:0) { g ( α ) , . . . , g t ( α ) } (cid:1) = b α , for all α ∈ A \ { α ∗ } , where b = P α ∈ A \{ α ∗ } b α . For each α ∈ A , let S α △ = { a = ( a , . . . , a t ) ∈ B t : t X i =1 a i g i ( α ) = 0 } . Since rank B ( { g ( α ) , . . . , g t ( α ) } ) = b α , we deduce that dim B ( S α ) = t − b α . Averaging over all nonzero a ∈ B t , wehave | F | − X a ∈ B t \{ } |{ α ∈ A \ { α ∗ } : a ∈ S α }| = 1 | F | − X α ∈ A \{ α ∗ } |{ a ∈ B t \ { } : a ∈ S α }| = 1 | F | − X α ∈ A \{ α ∗ } ( q t − b α −
1) =: E. (5)(Note that we added the correction term “ − ” in the last sumof (5) that was missing in the original proof of [9, Thm. 6].)Therefore, there exists some a ∗ ∈ B t \ { } so that |{ α : a ∗ ∈ S α }| ≥ E . Let h ∗ ( x ) △ = P ti =1 a ∗ i g i ( x ) . By the choice of a ∗ , h ∗ ( x ) vanishes on at least E points of A \{ α ∗ } . Also, since a ∗ = , h ∗ ( α ∗ ) = P ti =1 a ∗ i g i ( α ∗ ) = 0 . Therefore, h ∗ ( x ) correspondsto a nonzero codeword in the dual code C ⊥ and can hence haveat most r − roots. Thus, | F | − X α ∈ A \{ α ∗ } ( q t − b α −
1) = E ≤ r − , or equivalently, X α ∈ A \{ α ∗ } q − b α ≤ (cid:0) ( r − | F | −
1) + ( n − (cid:1) / | F | =: L. (6) Let b min △ = min b α ∈{ , ,...,t } X α ∈ A \{ α ∗ } b α , subject to (6) . (7)Then, any feasible repair scheme has to have b ≥ b min . To solvethe optimization problem (7), the authors of [9, Thm. 6] relaxedthe condition that b α are integer-valued and arrived at a lowerbound that reads as ( n − b AVE , where b AVE △ = log q (cid:0) ( n − /L (cid:1) .But one can still solve (7) for b α ∈ { , , . . . , t } and arrive at aclosed form expression for b min . To see how to accomplish thisanalysis, we first let { b , . . . , b n − } refer to { b α : α ∈ A \ { α ∗ }} .We then claim that b ∗ = · · · = b ∗ ℓ = ⌊ b AVE ⌋ , b ∗ ℓ +1 = · · · = b ∗ n − = ⌈ b AVE ⌉ , where ℓ is the largest integer satisfying P n − i =1 q − b ∗ i ≤ L , isan optimal solution of (7). To this end, if ( b , . . . , b n − ) is anoptimal solution of (7), and b i − b j ≥ for some i and j , we maydecrease b i by one and increase b j by one, and retain an optimalsolution. Repeating this “balancing” procedure for as many timesas possible, we obtain an optimal solution for which | b i − b j | ≤ , i, j ∈ [ n − . If min i b i < ⌊ b AVE ⌋ then ( b , . . . , b n − ) cannot bea feasible solution. Therefore, min i b i ≥ ⌊ b AVE ⌋ . Because of theway ℓ was chosen, we always have P n − i =1 b i ≥ P n − i =1 b ∗ i , whichestablishes the optimality of ( b ∗ , . . . , b ∗ n − ) . Finally, ℓ may beeasily computed as follows. If b AVE ∈ Z then ℓ = n − , otherwise ℓ = (cid:22) L − ( n − q −⌈ b AVE ⌉ q −⌊ b AVE ⌋ − q −⌈ b AVE ⌉ (cid:23) . (cid:4) Corollary 1.
When n = | F | = q t and r = q s , for some s ∈ [ t ] ,any linear repair scheme over the subfield B = F q of a Reed-Solomon code RS ( A, k ) defined over F requires a bandwidth ofat least ( n − t − s ) sub-symbols over B .Proof. In this case, b AVE = t − s ∈ Z and ℓ = n − , whichaccording to Proposition 1 give the desired bound. (cid:4) Note also that the integral bound of Corollary 1 and theGuruswami-Wootters fractional bound coincide. However, inmany other cases, the integral bound strictly outperforms the frac-tional bound. Consider as an example the Facebook RS(14,10)code defined over GF (256) . If the code is repaired over thesubfield GF (16)) , the fractional bound results in downloadedbits, while our integral bound asserts that a download of at least bits is needed. It is also apparent that the fractional bounddoes not depend on the subfield that the code is repaired over,while the integral bound does. In general, the bigger the order of B , the larger the gap between the two bounds.Also, one may assume that if a repair scheme that achievesthe bound of Corollary 1 were to exist, it would require thatthe replacement node download t − s sub-symbols from eachavailable node. This intuition has been extremely useful in ourquest for optimal repair schemes for Reed-Solomon codes.IV. O PTIMAL R EPAIR S CHEMES FOR F ULL -L ENGTH R EED -S OLOMON C ODES WITH r = q s In this section, we construct repair schemes for a Reed-Solomon code RS ( A, k ) defined over F = F q t , where the codelength n = | A | ≤ | F | and the number of parities r △ = n − k ≥ q s ,for every s < t . These schemes are optimal when n = | F | = q t and r = q s . We first settle the case q = 2 and s = 1 , and thenproceed to tackle the general case when q ≥ and s < t . . Repair Schemes for Reed-Solomon Codes with Two Parities Suppose that q = 2 and r = n − k ≥ . We can use the constantand linear polynomials as check polynomials for repairing acodeword symbol f ( α ∗ ) (In fact, only linear polynomials areused). The main task is to select the roots and multipliers of thecodewords properly. Construction I.
Assume that α ∗ ∈ A and f ( α ∗ ) is erased.Select a subset { z , . . . , z t } ⊆ F such that { α ∗ − z , . . . , α ∗ − z t } forms a basis of F over F . For i ∈ [ t ] , set β i = α ∗ − z i and g i ( x ) = β i ( x − z i ) . Lemma 2.
The set { g ( α ∗ ) , . . . , g t ( α ∗ ) } , where the g i ( x ) arechosen according to Construction I, has rank t over F .Proof. We have ( g ( α ∗ ) , . . . , g t ( α ∗ )) = ( β , . . . , β t ) . As weare working over a field of characteristic two, it holds that P ti =1 a i β i = (cid:0) P ti =1 a i β i (cid:1) , for every a i ∈ F . Therefore, t X i =1 a i β i = 0 = ⇒ t X i =1 a i β i = 0 , which implies that a = · · · = a t = 0 , as { β , . . . , β t } is a basisof F over F . Therefore, rank (cid:0) { g ( α ∗ ) , . . . , g t ( α ∗ ) } (cid:1) = t . (cid:4) Lemma 3.
If the g i ( x ) are chosen according to Construction I,then rank (cid:0) { g ( α ) , . . . , g t ( α ) } (cid:1) ≤ t − , for every α ∈ A \ { α ∗ } .Proof. We aim to show that the set { g ( α ) , . . . , g t ( α ) } is depen-dent over F , for every α ∈ A \ { α ∗ } . For i ∈ [ t ] , we have g i ( α ) = β i ( α − z i ) = β i (cid:0) ( α ∗ − z i ) − ( α ∗ − α ) (cid:1) = β i (cid:0) β i − ( α ∗ − α ) (cid:1) . As { β , . . . , β t } is a basis of F over F , we may write α ∗ − α = t X i =1 a i β i , where a i ∈ F , i ∈ [ t ] , are not all zero. We now have t X i =1 a i g i ( α ) = t X i =1 a i β i (cid:0) β i − ( α ∗ − α ) (cid:1) = t X i =1 a i β i − (cid:16) t X i =1 a i β i (cid:17) ( α ∗ − α )= t X i =1 a i β i − (cid:16) t X i =1 a i β i (cid:17)(cid:16) t X i =1 a i β i (cid:17) = 0 . Therefore, the set { g ( α ) , . . . , g t ( α ) } is dependent over F . (cid:4) Theorem 2.
Let n ≤ | F | = 2 t and r = n − k ≥ . The set ofcheck polynomials { g ( x ) , . . . , g t ( x ) } defined in Construction Ican be used to repair a codeword symbol f ( α ∗ ) of a Reed-Solomon code RS ( A, k ) with a repair bandwidth of at most ( n − t − bits. Moreover, when n = | F | = 2 t and r = 2 ,this repair bandwidth is optimal.Proof. The first claim follows from Lemma 2 and Lemma 3. Thesecond claim holds due to Corollary 1, with B = F . (cid:4) An example illustrating Construction I is given in Fig. I. A α ∗ = ξ ξ ξ ξ ξ ξ g = x − · ξ ξ ξ ξ ξ ξ g = ξ ( x − ξ ) ξ ξ · ξ ξ ξ ξ g = ξ ( x − ξ ) ξ ξ ξ · ξ ξ ξ rank ( · ) TABLE I: The list of dual codewords generated according toConstruction I, which may be used to repair the first codewordsymbol f (0) of an [8 , Reed-Solomon code over F . We let ξ be a primitive element of the field, where ξ + ξ = 0 .The column corresponding to the evaluation point α ∗ = 0 hasrank three, which means that the corresponding dual codewordscan be used to repair f (0) . All other columns have rank twoover F , which means that this scheme has a repair bandwidthof
14 = 7 ∗ bits, which is optimal. It suffices for the replacementnode to download two bits from each available node, for instance, Tr ( ξ f ( ξ )) and Tr ( f ( ξ )) from the node storing f ( ξ ) , or Tr ( ξ f ( ξ )) and Tr ( ξ f ( ξ )) from the node storing f ( ξ ) . B. Repair Scheme for Reed-Solomon Codes with q s Parities
Suppose that r = n − k ≥ q s . We can use polynomials ofdegrees at most r − q s − as check polynomials for repairinga codeword symbol f ( α ∗ ) , but we choose only polynomials ofhighest degree possible, i.e. of degree q s − . We generalizeConstruction I by using the inverses of the nonzero elementsof a subspace of dimension s to generate the check polynomials. Construction II.
Let ξ be a primitive element of F = F q t and W = { , w , . . . , w q s − } an F q -subspace of dimension s in F q t .For all i ∈ [ t ] , we choose g i ( x ) = β i q s − Y j =1 (cid:16) x − (cid:0) α ∗ − w − j β i (cid:1)(cid:17) , where { β , . . . , β t } is an arbitrary F q -basis of F q t . Note thatConstruction I corresponds to the case q = 2 , s = 1 , and w = 1 .We set M △ = q s − Y j =1 w − j = 0 . (8) Lemma 4.
The set { g ( α ∗ ) , . . . , g t ( α ∗ ) } , where g i ( x ) is de-scribed in Construction II, has rank t over F q , for every s < t .Proof. For i ∈ [ t ] we have g i ( α ∗ ) = β i q s − Y j =1 (cid:16) α ∗ − (cid:0) α ∗ − w − j β i (cid:1)(cid:17) = M β q s i . It is obvious that { β q s , . . . , β q s t } is also an F q -basis of F q t . Since M is a nonzero constant, we deduce that rank q (cid:0) { g ( α ∗ ) , . . . , g t ( α ∗ ) } (cid:1) = rank q (cid:0) { β q s , . . . , β q s t } (cid:1) = t. (cid:4) The proof of the following lemma can be found in [18, p. 4].
Lemma 5.
Suppose that s < t and that W is an s -dimensional F q -subspace of F q t . Let L W ( x ) = Q w ∈ W ( x − w ) . Then L W is an F q -linear mapping from F q t to itself, with kernel W andimage L W ( F q t ) of dimension t − s over F q . Lemma 6.
The set { g ( α ) , . . . , g t ( α ) } , with the polynomials g i ( x ) defined in Construction II, has rank at most t − s over F q , for every α ∈ A \ { α ∗ } and s < t .roof. Set γ = α ∗ − α = 0 , we have g i ( α ) = β i q s − Y j =1 (cid:16) α − (cid:0) α ∗ − w − j β i (cid:1)(cid:17) = β i q s − Y j =1 (cid:16) w − j β i − γ (cid:17) = β i γ q s − q s − Y j =1 (cid:16) w − j β i γ − − (cid:17) = γ q s (cid:0) β i γ − (cid:1) q s − Y j =1 (cid:16) w − j (cid:0) β i γ − (cid:1) − (cid:17) . (9)If we set v ( x ) = x Q q s − j =1 ( w − j x − , then v ( x ) = x (cid:16) q s − Y j =1 w − j (cid:17)(cid:16) q s − Y j =1 ( x − w j ) (cid:17) = M (cid:16) x q s − Y j =1 ( x − w j ) (cid:17) = M L W ( x ) , (10)due to (8), where L W ( x ) △ = Q w ∈ W ( x − w ) . From (9) and (10),we obtain g i ( α ) = M γ q s L W (cid:0) β i γ − (cid:1) . Therefore, rank q (cid:0) { g i ( α ) : i ∈ [ t ] } (cid:1) = rank q (cid:0) (cid:8) L W (cid:0)(cid:0) β i γ − (cid:1)(cid:1) : i ∈ [ t ] (cid:9) (cid:1) ≤ dim q (cid:0) L W ( F q t ) (cid:1) = t − s, where the last inequality follows from Lemma 5. (cid:4) Theorem 3.
The statements of Theorem 4 hold for the set ofcheck polynomials defined in Construction II.
The next construction achieves the same repair bandwidth asConstruction II, via the nonzero elements of a subspace of di-mension s . In fact, this construction generalizes the constructionof [9] by using a linearized polynomial with distinct roots (see,for instance [4, Ch. 4, § Tr F qt / F qt − s is well defined only when F q t − s is a subfield of F q t , i.e. when ( t − s ) | t . In contrast, alinearized polynomial of degree q s with no repeated roots, whichmaps F q t to a subspace of dimension t − s , always exists for every ≤ s < t . Construction III.
Let { u , . . . , u t } be an F q -basis of F q t andlet W be an arbitrary F q -subspace of dimension s of F q t . Set L W ( x ) △ = Q w ∈ W ( x − w ) and g i ( x ) △ = L W (cid:0) u i ( x − α ∗ ) (cid:1) / ( x − α ∗ ) ,for every i ∈ [ t ] . Note that since deg( g i ) = q s − ≤ r − , thepolynomials g i ( x ) are checks for the Reed-Solomon code C . Lemma 7.
The set { g ( α ∗ ) , . . . , g t ( α ∗ ) } , where g i ( x ) is de-scribed in Construction III, has rank t over F q , for every s < t .Proof. Let W ∗ △ = W \ { } . Then L W ( x ) = x Q w ∈ W ∗ ( x − w ) = τ x + x h ( x ) , where τ = ( − q s − Q w ∈ W ∗ w = 0 and h ( x ) is apolynomial of degree q s − . Therefore, g i ( x ) = τ u i + u i ( x − α ∗ ) h (cid:0) u i ( x − α ∗ ) (cid:1) and hence, g i ( α ∗ ) = τ u i , for every i ∈ [ t ] .As τ = 0 and { u , . . . , u t } is an F q -basis of F q t , it follows thatthe set { g ( α ∗ ) , . . . , g t ( α ∗ ) } has rank t over F q . (cid:4) Lemma 8.
The set { g ( α ) , . . . , g t ( α ) } with the polynomials g i ( x ) defined in Construction III, has rank at most t − s over F q ,for every α ∈ A \ { α ∗ } and ≤ s < t . Proof. For α = α ∗ , set γ i = u i ( α − α ∗ ) , we have g i ( α ) = α − α ∗ L W (cid:0) γ i (cid:1) . Therefore rank q (cid:0) { g ( α ) , . . . , g t ( α ) } (cid:1) = rank q (cid:0) { L W ( γ ) , . . . , L W ( γ t ) } (cid:1) ≤ dim q (cid:0) L W ( F q t ) (cid:1) = t − s, according to Lemma 5. (cid:4) Theorem 4.
Let n ≤ | F | = q t and r = n − k ≥ q s , for some s < t . The set of check polynomials { g ( x ) , . . . , g t ( x ) } defined inConstruction III can be used to repair a codeword symbol f ( α ∗ ) of a Reed-Solomon code RS ( A, k ) with a repair bandwidth of atmost ( n − t − s ) log q bits. Moreover, when n = | F | = q t and r = q s , this repair bandwidth is optimal.Proof. The first statement follows from Lemma 7 and Lemma 8.The second statement holds due to Corollary 1. (cid:4) A CKNOWLEDGMENT
This work has been supported in part by the NSF grant CCF1526875 and the Center for Science of Information under thegrant NSF 0939370. The authors thank Iwan Duursma for helpfuldiscussions. R
EFERENCES[1] A. Dimakis, P. Godfrey, M. Wainwright, and K. Ramchandran, “Networkcoding for distributed storage systems,” in
Proc. 26th IEEE Int. Conf.Comput. Commun. (INFOCOM) , 2007, pp. 2000–2008.[2] A. Dimakis, P. Godfrey, Y. Wu, M. Wainwright, and K. Ramchandran,“Network coding for distributed storage systems,”
IEEE Trans. Inform.Theory , vol. 56, no. 9, pp. 4539–4551, 2010.[3] I. S. Reed and G. Solomon, “Polynomial codes over certain finite fields,”
J. Soc. Ind. Appl. Math. , vol. 8, no. 2, pp. 300–304, 1960.[4] F. J. MacWilliams and N. J. A. Sloane,
The Theory of Error-CorrectingCodes . Amsterdam: North-Holland, 1977.[5] A. Dimakis, K. Ramchandran, Y. Wu, and C. Suh, “A survey on networkcodes for distributed storage,”
Proc. IEEE , vol. 99, no. 3, pp. 476–489,2011.[6] F. Oggier and A. Datta, “Self-repairing homomorphic codes for distributedstorage systems,” in
Proc. IEEE Int. Conf. Comput. Commun. (INFOCOM) ,2011, pp. 1215–1223.[7] P. Gopalan, C. Huang, H. Simitci, and S. Yekhanin, “On the locality ofcodeword symbols,”
IEEE Trans. Inform. Theory , vol. 58, no. 11, pp. 6925–6934, 2012.[8] D. Papailiopoulos and A. Dimakis, “Locally repairable codes,” in
IEEE Int.Symp. Inform. Theory (ISIT) , 2012, pp. 2771–2775.[9] V. Guruswami and M. Wootters, “Repairing Reed-Solomon codes,” in
Proc.Annu. Symp. Theory Comput. (STOC) , 2016.[10] “Erasure coding for distributed storage Wiki,” available athttp://storagewiki.ece.utexas.edu/doku.php?id=wiki:papers:all.[11] K. V. Rashmi, N. B. Shah, and P. V. Kumar, “Optimal exact-regeneratingcodes for distributed storage at the MSR and MBR points via a product-matrix construction,”
IEEE Trans. Inform. Theory
Proc. 49th Annual Allerton Conf. Comm Control Comput. (Allerton) ,2011, pp. 1374–1381.[14] K. Shanmugam, D. S. Papailiopoulos, A. G. Dimakis, and G. Caire, “Arepair framework for scalar MDS codes,”
IEEE J. Selected Areas Comm.(JSAC) , vol. 32, no. 5, pp. 998–1007, 2014.[15] H. Dau, I. Duursma, H. M. Kiah, and O. Milenkovic, “Re-pairing Reed-Solomon codes with multiple erasures,” available athttps://arxiv.org/abs/1612.01361.[16] M. Ye and A. Barg, “Explicit constructions of MDS array codes and RScodes with optimal repair bandwidth,” in
IEEE Int. Symp. Inform. Theory(ISIT) , 2016, pp. 1202–1206.[17] R. Lidl and H. Niederreiter,
Introduction to Finite Fields and TheirApplications . Cambridge University Press, 1986.[18] D. Goss,