Multi-Erasure Locally Recoverable Codes Over Small Fields For Flash Memory Array Pengfei Huang∗, Eitan Yaakobi†, and Paul H. Siegel∗ Electrical and Computer Engineering Dept., University of California, San Diego, La Jolla, CA 92093 U.S.A ∗ Computer Science Dept., Technion – Israel Institute of Technology, Haifa 32000, Israel † pehuang,psiegel @ucsd.edu, [email protected] { } Abstract—Erasure codes play an important role in storage sys- For the code construction, we focus on constructing ME- temstopreventdataloss.Inthiswork,westudyaclassoferasure LRCs over small fields. We propose a general construction codescalledMulti-ErasureLocallyRecoverableCodes(ME-LRCs) method from generalized tensor product codes [13], [22]. In for flash memory array. Compared to previous related works, we 7 contrast to [5], our construction is more flexible in the sense focus on the construction of ME-LRCs over small fields. We first 1 developupperandlowerboundsontheminimumdistanceofME- that we do not require field size q > max ρ,n0 , and it can 0 LRCs.Theseboundsexplicitlytakethefieldsizeintoaccount.Our evengeneratebinaryME-LRCs.For2d0 >d{,wew}illshowthat 2 main contribution is to propose a general construction of ME- our construction gives optimal ME-LRCs over Fq, with respect n LRCs based on generalized tensor product codes, and study their to our upper bound on the minimum distance. a erasure-correctingproperty.Adecodingalgorithmtailoredforera- J sure recovery is given. We then prove that our construction yields There are other related works. If the local code 0 of an C optimal ME-LRCs with a wide range of code parameters. Finally, ME-LRC is a single parity-check code, then the ME-LRC is a 2 2 we present several families of ME-LRCs over different fields. Locally Repairable Code (LRC) [7], [14], [15], [19], which is a class of codes where a single erased symbol can be recovered ] I. INTRODUCTION byaccessingrothersymbols,andhereriscalledthelocalityof T Recently, erasure codes with both local and global erasure- this code. LRCs over small fields were studied in [6], [8], [10]– I . correcting properties have received considerable interests [5], [12], [20], [24]. In [16], (r,δ) LRCs were proposed. A code s C c [7], [14]–[16], [19], thanks to their promising application in s- is called an (r,δ) LRC if for every coordinate, there exists a [ torage systems. The idea behind is when a few erasures occur, punctured code (i.e., a repair set) of with support containing 1 these erasures can be corrected fast using only local parities. this coordinate, whose length is at mCost r+δ 1, and whose − v If the number of erasures exceeds the local erasure-correcting minimum distance is at leastδ. ME-LRCs studied in this paper 0 capability, then the global parities are invoked. canbeseenas(r,δ)LRCswithdisjointrepairsets.However,the 1 In this paper, we consider this kind of erasure codes with previous existing constructions of (r,δ) LRCs require relatively 1 both local and global erasure-correcting capabilities for a ρ large field size q, which is at least as large as the code length 6 × 0 n0 flash memory array [3], [5], where each row contains some [16], [18], [19]. A very recent work [1] gives explicit construc- 1. localparities,andadditionalglobalparitiesaredistributedinthe tions of (r,δ) LRCs with disjoint repair sets over field Fq from 0 array. More specifically, let us give the formal definition of this algebraic curves, whose repair sets have size r+δ 1 = √q − 7 class of erasure codes as follows. or r+δ 1 = √q+1. In contrast, our construction is more − 1 flexible, and can generate codes with field size q even smaller v:oDfeρfinitniona1rr.aCysonsusicdherthaatc:odeC overafinitefieldFq consisting thantherepairsetsize.Inaddition,aPartialMDS(PMDS)code i × 0 [4] can also be seen as an ME-LRC with certain constraints. X 1) Eachrowineacharrayin belongstoalinearlocalcode C C0 ThegoalofthispaperistostudyME-LRCsoversmallfields. ar withlengthn0andminimumdistanced0overFq. The remainder of the paper is organized as follows. In Sec- 2) Readingthesymbolsof row-wise, isalinearcodewith C C tion II, we study field size dependent upper and lower bounds lengthρn0,dimensionk,andminimumdistancedoverFq. forME-LRCs.InSectionIII,weproposeageneralconstruction Then,wesaythat isa(ρ,n0,k;d0,d)qMulti-ErasureLocally of ME-LRCs. The erasure-correcting property of these codes is C RecoverableCode(ME-LRC). studied and an erasure decoding algorithm is also presented. In Thus, a (ρ,n ,k;d ,d) ME-LRC can locally correct d 1 SectionIV,wegiveseveralfamiliesofME-LRCsoverdifferent 0 0 q 0 erasuresineachrow,andisguaranteedtocorrectatotalofd−1 fields. Section V concludes the paper. − erasures anywhere in the array. Throughoutthepaper,weusethenotation[n]todefinetheset Our work is motivated by a recent work by Blaum and Het- 1,...,n . For a length-n vector v over Fq and a set [n], { } I ⊆ zler [5]. In this work,the authors studied ME-LRCs where each the vector v denotes the restriction of the vector v to coordi- row is a maximum distance separable (MDS) code, and gave nates in theIset , and wq(v) represents the Hamming weight I code constructions with field size q > max ρ,n0 from inte- of the vector over Fq. The transpose of a matrix H is written { } grated interleaving codes [9]. As in Definition 1, we generalize as HT. A linear code over Fq of length n, dimension k, and the definition of the codes studied in [5] such that each row is minimum distance d will be denoted by [n,k,d] , whose redun- q notnecessaryanMDScode.Moreover,wegiveupperandlower dancyisn k.Foracodewithonlyonecodeword,itsminimum − bounds on the minimum distance of ME-LRCs. distance is defined as . ∞ II. UPPERANDLOWERBOUNDSFORME-LRCS Proof: See Appendix A. In this section, we study field size dependent upper and low- er bounds on the minimum distance of ME-LRCs. The upper III. ME-LRCSFROMGENERALIZEDTENSORPRODUCT bound derived here will be used to prove the optimality of our CODES:CONSTRUCTIONANDDECODING construction for ME-LRCs in the following sections. Tensor product codes, first proposed by Wolf in [22], are a Now, we give an upper bound on the minimum distance of a familyofbinaryerror-correctingcodesdefinedbyaparity-check (ρ,n ,k;d ,d) ME-LRC. The shortening technique employed 0 0 q matrix that is the tensor product of the parity-check matrices of here was previously used for bounds for low-density parity- two constituent codes. Later, they were generalized in [13]. In check (LDPC) codes [2] and locally repairable codes [6]. this section, we first introduce generalized tensor product codes Let d(q)[n,k] denote the largest possible minimum distance opt over Fq. Then, we give a general construction of ME-LRCs of a linear code of length n and dimension k over Fq, and let from generalized tensor product codes. The minimum distance k(q)[n,d] denote the largest possible dimension of a linear code oftheconstructedME-LRCsisdetermined,andacorresponding opt of length n and minimum distance d over Fq. decoding algorithm tailored for erasure correction is proposed. Lemma2. Forany(ρ,n0,k;d0,d)q ME-LRC ,theminimum A. Generalized Tensor Product Codes over Fq C distancedsatisfies We start by presenting the tensor product operation of two d606x6m⌈iknk∗⌉−1{d(oqp)t[ρn0−xn0,k−xk∗]}, (1) cmoadtericweisthHle′nagnthd nH′′′a.nLdedtimHe′nbsieonthne′p−arvityo-vcehreFckq.mTahterixmaotfrixa andthedimensionsatisfies H′ can be considered as a v (row) by n′ (column) matrix over k606x6m⌈iknk∗⌉−1{xk∗+ko(qp)t[ρn0−xn0,d]}, (2) FFqqv.orLeats Ha′1be(rotwhe) vbeyctnor′ (Hco′lu=mn[h)′1mha′2trix··o·fhe′nl′e]m, wenhtesrefrohm′j, where k∗ =ko(qp)t[n0,d0]. m1a6trixj 6of an′c,oadreeoeflelmenegntthsℓofanFdqvd.imLeetnsHio′n′ bℓe thλeopvaerritFy-qcvh.eWcke Proof: For the case of x = 0, it is trivial. For 1 6 x 6 denote H′′ by − k 1, x Z+, let represent the set of the coordinates of t⌈hke∗⌉fi−rst x ro∈ws in theIarray. Thus, = xn . First, consider h′′ h′′ |I| 0 11 ··· 1ℓ tkhe, wcohdiechCsIati=sfi{escIk :6c ∈xk∗C.}Twhehno,sweedicmonensisdioernthisedceondoeted0b=y H′′ = ... ... ... , Ms{iIczo[eρrneo0o]fv\Iethr,:etchcIeod=mein0CimI0aInuidmscqdk∈i−stkCaIn}ca.enSddiˆnoictfeitsthheaeccloionddeeearC0coiissdelaitnaelseaCarw,sItethldle., where hi′′j, 16i6λand 1hλ′6′1 j6···ℓ, ahreλ′′ℓelements of Fqv. C The tensor product of the matrices H′ and H′′ is defined as i.e., dˆ>d. I Thus, we get an upper bound on the minimum distance d, h′′ H′ h′′ H′ 11 ··· 1ℓ d6dˆ6do(qp)t[ρn0−|I|,k−kI] HTP = H′′ H′ = ... ... ... , 6d(oqp)t[ρn0−xn0,k−xk∗]. ⊗ hλ′′1H′ ··· hλ′′ℓH′ Similarly, we also get an upper bound on the dimension k, where h′′H′ = [h′′h′ h′′h′ h′′h′ ], 1 6 i 6 λ and 1 6 ij ij 1 ij 2 ··· ij n′ k−kI 6ko(qp)t[ρn0−|I|,dˆ]6ko(qp)t[ρn0−xn0,d]. tjo6theℓ,rualneds othfempurlotidpulicctastioofnefloermeelenmtseanrtes ocvaelcruFlaqtve.dTahcecmoradtirnixg Therefore, we conclude that HTP is considered as a vλ n′ℓ matrix of elements from Fq. × k6ko(qp)t[ρn0−xn0,d]+kI 6ko(qp)t[ρn0−xn0,d]+xk∗. sorOpurrocdouncsttrcuocdtieosn[o1f3]M. DE-eLfiRneCsthies bmaasetrdiceosn Hge′nearnadlizHed′′tefonr- i i An asymptotic lower bound for ME-LRCs with local MDS i = 1,2,...,µ as follows. The matrix Hi′ is a vi×n′ matrix codes was given in [1]. Here, by simply adapting the Gilbert- over Fq such that the (v1+v2+···+vi)×n′ matrix Varshamov (GV) bound [17], we have the following GV-like H′ 1 lower bound on ME-LRCs of finite length without specifying H′ local codes. Bi = .2 .. Lemma3.A(ρ,n0,k;d0,d)qME-LRC exists,if C H′ <qdi∑ρ=−(02n0(−ρ⌈l(ongq0−∑dj⌈=0l−0o2g(qn0(j−∑1)d(j=q0−−012)(ijn0⌉−)j−1k).(q−1)j)⌉)−1)(q−1)i micsoadaterpi,xawroihtvyee-rrcehFdeqc′1vki<,mwadht′2ricix<hoi·sf·aa·n<p[anrd′i,ti′y.ni-T′c−hheecvkm1−amtravixt2ri−xHi′o·′f·i·sa−nav[λℓii,,dℓ×i′−]ℓq ( ) (3) λi,δi]qvi code. We define aµ-level generalized tensor product code over Fq 1) The parity-check matrix H1′′ = Iℓ×ℓ, i.e., an ℓ×ℓ identity as a linear code having a parity-check matrix in the form of the matrix. followingµ-level tensor product structure 2) The matrices Hi′ (or Bi), 16i6µ, and H′j′, 26 j6µ, are H′′ H′ chosen such that dµ′ 6δjd′j 1, for j =2,3,··· ,µ. 1 1 Step 2: Generateaparity-c−heckmatrix H accordingto(4)with H = H2′′⊗.. H2′ . (4) the matrices Hi′ and Hi′′, for i = 1,2,...,µ. The constructed ⊗. code corresponding to the parity-check matrix H is referred to Hµ′′ Hµ′ as CA. (cid:4) dWimeLeedntesnuioostngeiivstehkiastn=ceoxdnaetm−bpyl∑eCµio=µGf1TavP2i.λ-lI⊗iet.svellegnegntheriasliznetd=tenns′oℓrapnroddtuhcet rTdahm=eeodtreµ′er.smρ5.=Thℓe,cno0de=CAn′i,ska(=ρ,nn′0ℓ,k−;d∑0µi,=d1)qviMλiE,-dL0R=Cwdi′1t,hapnad- code CG2TP over F2. ρ, n ,Pkro,oafn:dAdccocradninbgeteoasCiloynsdtertuecrtmioinneAd.,Itnhethceodfoellpoawrainmge,tweres 0 0 Example1. Let H1′ =[1 1 1 1 1 1 1] over F2, and prove that d =dµ′ . 0 0 0 1 1 1 1 Since δ1 = (H1′′ is the identity matrix) and dµ′ 6δidi′ 1 H2′ = 0 1 1 0 0 1 1 for all i =2,3,...,µ, from Theorem 4, d>dµ′ . − [ 1 0 1 0 1 0 1 ] Now, we sho∞w that d 6 dµ′ . For i = 1,2,...,µ, let Hi′ = over F2. Let H1′′ be a 3×3 identity matrix [h′1(i),...,h′n′(i)] over Fqvi, and let [h′1′1(i),...,hλ′′i1(i)]T over 1 0 0 Fqvi bethefirstcolumnof Hi′′.Sincethecodewithparity-check H1′′ = 0 1 0 matrix Bµ has minimum distance dµ′ , there exist dµ′ column- [ 0 0 1 ] s of Bµ, say in the set of positions J = {b1,b2,...,bdµ′ }, overF2,and H2′′ =[1 1 1] overF8.Hence,inthisconstruction, which are linearly dependent; that is, ∑j∈Jαjh′j(i) = 0, αj ∈ we have the following parameters: n′ = 7, ℓ = 3, v1 = 1, Fq, for i = 1,2,...,µ. Thus, we have ∑j Jαjh′p′1(i)h′j(i) = v =3,λ =3,λ =1, d =2, d =4,δ = ,andδ =2. ∈ T2he binary1 parity-c2heck ma′1trix H o′2f the 2-1level tensor p2roduct h′p′1(i) ∑j Jαjh′j(i) = 0, for p = 1,2,...,λi and i = ∈ code CG2TP is ∞ 1,2,..(.,µ. That is, t)he columns in positions b1,b2,...,bdµ′ of H are linearly dependent. H′′ H′ H = 1 1 C. Erasure Decoding of ME-LRCs [ H2′′⊗H2′ ] We present a decoding algorithm for the ME-LRC from 1 1⊗1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 CA ConstructionA,tailoredforerasurecorrection.Thedecodingal- 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 gorithmforerrorcorrectionforgeneralizedtensorproductcodes 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 = . can be found in [13]. 0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 1 1 1 Let the symbol ? represent an erasure and “e” denote a de- 0 1 1 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 0 1 1 1 0 1 0 1 0 1 1 0 1 0 1 0 1 1 0 1 0 1 0 1 coding failure. The erasure decoder DA : (Fq ∪{?})n′ℓ → “e” for an ME-LRC consists of two kinds of com- CA∪{ } CA The code length is nt = n′ℓ = 21 and the dimension is kt = ponentdecodersDi′ andDi′′ fori =1,2,...,µdescribedbelow. nt−∑i2=1viλi =15. The minimum distance is dt =4. (cid:3) a) First, the decoder for a coset of the code Ci′ with parity- check matrix B, i =1,2,...,µ, is denoted by By adapting Theorem 2 in [13] from the field F2 to Fq, we i pdoTrifhroeCedcoµGutrlcTyetPmchooa4ddvvt.eeer>TCtFhhµGmeqeT.Pmifnooi{lnvlδioem1wr,uFiδnm2qgdsd′1ath,itsiδesto3afidnree′2csm,e..do.tn,oδtfµhdeaµ′mg−e1inn,eidmrµ′au}lim.zeddistetannscoer swvcu′ehrc∈eitcosDh,CrDii′′uy+:s′i′(,e(Fsayeqn′to,dh∪snea′{)tf?lhoe=}elnl)goencwtn′h′,t×i-rn∑iigfe(ijsF=ydqw1′ec∪viatoghj{drsie?vyne}angs)ldu∑rwreuiojs=ilmte1hisvne:jevFxf→eoaqcrc,tt(oawlFyrhlqseoe∪′nrngewe{tiht?cth-h}oeno)d′unve′tiwenecoprtrouad-rt Proof: See Appendix B. e is a coset leader determined by both the code Ci′ and the syn- B. Construction of ME-LRCs drome vector s′; otherwise, Di′(y′,s′) = y′. Therefore, if the Now, we present a general construction of ME-LRCs based length-n′ input vector y′ is a codeword in Ci′ +e with di′−1 or less erasures and the syndrome vector s is not erased, then ′ on generalized tensor product codes. the decoder ′ can return the correct codeword. Construction A Di b) Second, the decoder for the code ′′ with parity-check Step 1: Choosevi×n′ matricesHi′ overFq andλi×ℓmatrices matrix H′′, i =1,2,...,µ, is denoted byCi Hi′′ over Fqvi, for i = 1,2,...,µ, which satisfy the following i two properties: Di′′ : (Fqvi ∪{?})ℓ → (Fqvi ∪{?})ℓ which uses the following decoding rules: for a length-ℓ input 2) Bµ is the parity-check matrix of an [n′,n′ −∑µi=1vi,dµ′ ]q vector y′′, Di′′(y′′) = c′′, if y′′ agrees with exactly one code- code with d(oqp)t[n′,n′−∑µi=1vi]= dµ′ . word c′′ ∈ Ci′′ on the entries with values in Fqvi; otherwise, 3) The minimum distances satisfy dµ′ 62d′1. Di′′(y′′) = y′′. Therefore, if the length-ℓ input vector y′′ is a 4) Hi′′ is an all-one vector of length ℓ over Fqvi, i.e., the parity- codeword in ′′ with δ 1 or less erasures, then the decoder check matrix of a parity code with minimum distance δ = 2, Ci i− i ′′ can successfully return the correct codeword. for all i =2,...,µ. (cid:4) Di The erasure decoder for the code is summarized in Theorem7.Thecode fromConstructionAwithDesignIis Algorithm 1 below. LetDthAe input word oCfAlength n′ℓ for the a(ρ= ℓ,n0 = n′,k =CnA′ℓ−v1ℓ−∑µi=2vi;d0 = d′1,d = dµ′ )q decoder be y = (y ,y ,...,y ), where each component ME-LRC,whichisoptimalwithrespecttothebound(1). DA 1 2 ℓ yi ∈ (Fq ∪{?})n′, i = 1,...,ℓ. The vector y is an erased Proof: From Theorem 5, the code parametersρ, n0, k, d0, version of a codeword c =(c1,c2,...,cℓ)∈CA. and d can be determined. We have k∗ =ko(qp)t[n′,d′1]=n′−v1. Setting x=ℓ 1, we get Algorithm 1: Decoding Procedure of Decoder DA − IO1n.upLtupettu:tsr:1jecc=oeidv0ee,wdfoowrrdojrcd=∈y1C,=A2,(o.yr.1.a,,yℓd.2e,c.o.d.i,nygℓf)a.ilure indicator “e”. d66d0(o6qpx)t6m[ℓ⌈niknk∗′−⌉−1(ℓ{−d(oq1p)t)[nρ′n,0k−−x(ℓn0−,k1−)k∗x]k∗]} µ 2. cˆ =(cˆ1,...,cˆℓ)= D1′(y1,s11),...,D1′(yℓ,s1ℓ) . =d(oqp)t[n′,n′− ∑vi]= dµ′ . 3. Let F ={j ∈[ℓ]: c(ˆj contains ?}. ) i=1 4. For i =2,...,µ This proves that achieves the bound (1). CA If = , do the following steps; otherwise go to step 5. B. Explicit ME-LRCs from Construction A • F ̸ ∅ • (si1,··· ,siℓ)= Di′′ cˆ1Hi′T,...,cˆℓHi′T . WegiveseveralexplicitME-LRCsoverdifferentfields.From cˆ = ′ cˆ ,(s1,..(.,si) for j ;)cˆ remains the same Construction A, the local codes should have a nested structure • j Di j j j ∈F j and large minimum distance. Reed-Solomon codes and BCH for j [(ℓ] . ) ∈ \F codes are such codes. More generally, some cyclic codes and Update = j [ℓ]: cˆ contains ? . • F { ∈ j } algebraic geometry codes [21] also have these properties. In the end 5. If = , let c =cˆ and output c; otherwise return “e”. following,someexplicitME-LRCsareconstructedoverF2,F3, F ∅ and F4. In Algorithm 1, we use the following rules for operations 1) ME-LRCs with local extended BCH codes over F2 which involve the symbol ?: 1) Addition +: for any element From the structure of BCH codes [17], there exists a chain γ∈ Fq∪{?}, γ+? =?. 2) Multiplication ×: for any element of nested binary extended BCH codes: C3 = [2m,2m −1− γn v∈ecFtoqr∪x{,?x}\∈{0(}F,qγ∪×{??}=)?n,, acnodnta0i×ns?a=n e0n.tr3y)?I,f tahelnenxgthis- 3mm,4,8]2].2 ⊂ C2 = [2m,2m−1−2m,6]2 ⊂ C1 = [2m,2m−1− considered as the symbol ? in the set Fqn ∪{?}. Similarly, the Let the matrices B1, B2, and B3 be the parity-check matrices symbol ? in the set Fqn ∪{?} is treated as a length-n vector of C1, C2, and C3, respectively. whose entries are all ?. Example2. For µ = 3, in Construction A, we use the above Theorem6.ThedecoderDAfora(ρ,n0,k;d0,d)qME-LRCCA matrices B1, B2, and B3. We also choose H2′′ and H3′′ to be the cancorrectanyd 1erasuresinthearray,andadditionalrows, − all-one vector of length ℓ over F2m. eachofwhichhaslessthanorequaltod0−1erasures. From Theorem 5, the corresponding (ρ,n0,k;d0,d)2 ME- Proof: See Appendix C. LRC has parameters ρ = ℓ, n = 2m, k = 2mℓ (m+ CA 0 − 1)ℓ 2m, d = 4, and d = 8. This code satisfies the require- 0 IV. SEVERALFAMILIESOFME-LRCSOVERSMALLFIELDS men−ts of Design I. Thus, from Theorem 7, it is optimal with In this section, we study the optimality of Construction A, respect to the bound (1). (cid:3) andalsopresentseveralexplicitME-LRCsthatareoptimalover different fields. 2) ME-LRCs with local cyclic codes over F3 Let q = 3 and n′ = 13. We have the following factorization A. Optimal Construction of x13−1 over F3: We showhowto construct ME-LRCs which are optimal with x13 1=(x+2)(x3+2x+2)(x3+x2+2) − respect to the bound (1) by adding more constraints to Con- (x3+x2+x+2)(x3+2x2+2x+2) struction A. To this end, we specify the choice of the matrices We choose the matrices B , B , and B in Construction A as in Construction A. This specification, referred to as Design I, 1 2 3 follows.Let B betheparity-checkmatrixofa[13,10,3] code is as follows. 1 3 with the generator polynomial: 1) H1′ is the parity-check matrix of an [n′,n′−v1,d′1]q code C1 which satisfies ko(qp)t[n′,d′1]=n′−v1. g1 = x3+x2+x+2, B2 be the parity-check matrix of a [13,6,6]3 code 2 with the All of the above three families of ME-LRCs over F4 are C generator polynomial: optimal with respect to the bound (1). (cid:3) g2 =(x+2)(x3+x2+2)(x3+x2+x+2), V. CONCLUSION In this work, we studied bounds and constructions for ME- and B be the parity-check matrix of a [13,3,9] code with 3 3 3 C LRCs. We presented a general construction that yields optimal the generator polynomial: ME-LRCs with a wide range of parameters when d 6 2d0. A g3 =(x+2)(x3+x2+2)(x3+x2+x+2) corresponding erasure decoder was also proposed and shown to (x3+2x2+2x+2). correct any d 1 erasures. Finally, several families of explicit − ME-LRCs were constructed over different small fields. It is clear that . 3 2 1 C ⊂C ⊂C REFERENCES Example3. For µ = 2, in Construction A, we use the above [1] A.Barg,I.Tamo,andS.Vladut,“Locallyrecoverablecodesonalgebraic matrices B1 and B2.Wealsochoose H2′′ tobetheall-onevector curves,”arXivpreprintarXiv:1603.08876,2016. with length ℓ over F34. From Theorem 5, the corresponding [2] Ya.fuBnecnt-iHonaiomfmanidniSm.uLmitsdyinst,a“nUcep,”peIrEbEoEunTdrsanosn.Ithnef.rTahteeoorfy,LvDoPl.C5c2o,dneos.a5s, (ρ,n ,k;d ,d) ME-LRC has parameters ρ= ℓ, n = 13, 0 0 3 CA 0 pp.2092–2100,2006. k = 10ℓ 4, d = 3, and d = 6. From Theorem 7, this code [3] R. Bez, E. Camerlenghi, A. Modelli, and A. Visconti, “Introduction to 0 is optima−l. flashmemory,”ProceedingsoftheIEEE,vol.91,no.4,pp.489–502,April 2003. Forµ=3, in Construction A, we use the above matrices B , 1 [4] M.Blaum,J.L.Hafner,andS.Hetzler,“Partial-MDScodesandtheirap- B2,and B3.Wealsochoose H2′′ tobetheparity-checkmatrixof plicationtoRAIDtypeofarchitectures,”IEEETrans.Inf.Theory,vol.59, no.7,pp.4510–4519,2013. an [ℓ,ℓ−2,3]81 MDS code where ℓ 6 81, and choose H3′′ to [5] M. Blaum and S. R. Hetzler, “Integrated interleaved codes as local- be the all-one vector with length ℓ over F33. From Theorem 5, ly recoverable codes: Properties and performance,” arXiv preprint arX- thecorresponding(ρ,n ,k;d ,d) ME-LRC hasparameters iv:1602.02704,2016. 0 0 3 CA [6] V. Cadambe and A. Mazumdar, “An upper bound on the size of locally ρ= ℓ, n = 13, k = 10ℓ 11, d = 3, and d = 9. We can 0 − 0 recoverablecodes,”inProc.IEEENetCod,2013,pp.1–5. calculate upper and lower bounds on the minimum distance of [7] P. Gopalan, C. Huang, H. Simitci, and S. Yekhanin, “On the locality of this ME-LRC from Lemma 2 and Lemma 3 respectively. For codeword symbols,” IEEE Trans. Inf. Theory, vol. 58, no. 11, pp. 6925– 6934,2012. example, for 3 6 ρ6 5, the upper bound on d is 12 and the [8] S.GoparajuandR.Calderbank,“Binarycycliccodesthatarelocallyre- lower bound on d is 5. (cid:3) pairable,”inProc.IEEEISIT,June2014,pp.676–680. [9] M.Hassner,K.Abdel-Ghaffar,A.Patel,R.Koetter,andB.Trager,“Inte- 3) ME-LRCs with local algebraic geometry codes over F4 gratedinterleaving-anovelECCarchitecture,”IEEETrans.Magn.,vol.37, Algebraic geometry codes usually have large minimum dis- no.2,pp.773–775,2001. [10] P.Huang,E.Yaakobi,H.Uchikawa,andP.H.Siegel,“Binarylinearlocally tance and often possess the nested structure [21]. We will use a repairablecodes,”IEEETrans.Inf.Theory,vol.62,no.11,pp.6268–6283, class of algebraic geometry codes called Hermitian codes [23] Nov2016. as an example to construct ME-LRCs. [11] ——,“Cycliclinearbinarylocallyrepairablecodes,”inProc.IEEEITW, 2015,pp.1–5. From the construction of Hermitian codes [23], [12] ——, “Linear locally repairable codes with availability,” in Proc. IEEE there exists a chain of nested 4-ary Hermitian codes: ISIT,2015,pp.1871–1875. (1) = [8,1,8] (2) = [8,2,6] (3) = [13] H. Imai and H. Fujiya, “Generalized tensor product codes,” IEEE Trans. CH 4 ⊂ CH 4 ⊂ CH Inf.Theory,vol.27,no.2,pp.181–187,Mar1981. [8,3,5] (4) = [8,4,4] (5) = [8,5,3] 4 H 4 H 4 [14] F.OggierandA.Datta,“Self-repairinghomomorphiccodesfordistributed ⊂ C ⊂ C ⊂ (6) = [8,6,2] (7) = [8,7,2] . Note that except storagesystems,”inProc.IEEEINFOCOM,2011,pp.1215–1223. H 4 H 4 cCodes (1) and ⊂(7C), other five codes are almost MDS [15] D. S. Papailiopoulos and A. G. Dimakis, “Locally repairable codes,” in CH CH Proc.IEEEISIT,2012,pp.2771–2775. codes, i.e., n k+1 d =1. [16] N.Prakash,G.Kamath,V.Lalitha,andP.Kumar,“Optimallinearcodes − − Now, let the matrices B , B , B , and B be the parity-check withalocal-error-correctionproperty,”inProc.IEEEISIT,July2012,pp. 1 2 3 4 matricesof (4), (3), (2),and (1),respectively.Let 2776–2780. CH CH CH CH [17] R. Roth, Introduction to Coding Theory. Cambridge University Press, Hi′′, i =2,3,4, be the all-one vector with length ℓ over F4. 2006. [18] N.Silberstein,A.S.Rawat,O.O.Koyluoglu,andS.Vishwanath,“Optimal Example4. For µ = 2, in Construction A, we use the above locallyrepairablecodesviarank-metriccodes,”inProc.IEEEISIT,2013, pp.1819–1823. matrices B1, B2, and H2′′. From Theorem 5, the corresponding [19] I. Tamo and A. Barg, “A family of optimal locally recoverable codes,” (ρ,n ,k;d ,d) ME-LRC has parameters ρ= ℓ, n = 8, IEEETrans.Inf.Theory,vol.60,no.8,pp.4661–4676,Aug2014. k =40ℓ 10, d 4=4, and dC=A5. 0 [20] I. Tamo, A. Barg, and A. Frolov, “Bounds on the parameters of locally − 0 recoverablecodes,”IEEETrans.Inf.Theory,vol.62,no.6,pp.3070–3083, For µ = 3, in Construction A, we use the above matrices June2016. B1, B2, B3, H2′′, and H3′′. From Theorem 5, the corresponding [21] M.A.Tsfasman,S.G.Vla˘du,andD.Nogin,AlgebraicGeometricCodes: (ρ,n ,k;d ,d) ME-LRC has parameters ρ= ℓ, n = 8, BasicNotions. AmericanMathematicalSociety,2007,no.139. 0 0 4 CA 0 [22] J.Wolf,“Oncodesderivablefromthetensorproductofcheckmatrices,” k =4ℓ 2, d0 =4, and d=6. IEEETrans.Inf.Theory,vol.11,no.2,pp.281–284,Apr1965. − Forµ=4, in Construction A, we use the above matrices B, [23] K. Yang and P. V. Kumar, “On the true minimum distance of Hermitian i i = 1,...,4, and H′′, j = 2,3,4. From Theorem 5, the corre- codes,” in Coding theory and algebraic geometry. Springer, 1992, pp. j 99–107. sponding (ρ,n0,k;d0,d)4 ME-LRC CA has parameters ρ= ℓ, [24] A.ZehandE.Yaakobi,“Optimallinearandcycliclocallyrepairablecodes n =8, k =4ℓ 3, d =4, and d=8. oversmallfields,”inProc.IEEEITW,April2015,pp.1–5. 0 0 − APPENDIXA For the last level, i.e., theµth level, if sµ=0, then wq(x)> ̸ PROOFOFLEMMA3 wqvµ(sµ)dµ′ 1 >δµdµ′ 1 >dm, which contradicts our assump- Proof: We can construct a (ρ,n0,k;d0,d)q ME-LRC in tion. Now, if−s1 =s2 =−··· =sµ=0, then wq(x)>dµ′ >dm, which also contradicts our assumption. two steps, and use the GV bound [17] twice. First, there exists Thus, our assumption is violated. a [ρ(n r ),k,d] array code of size ρ (n r ) where 0 0 1 0 0 − G × − r0 is an integer 06r0 <n0, if it satisfies APPENDIXC d∑−2 ρ(n0−r0)−1 (q 1)i <qρ(n0−r0)−k. (5) PROOFOFTHEOREM6 i=0( i ) − Proof:TheME-LRCCA hasd0 =d′1 andd =dµ′ .Assume Second, there exists a length-n code with minimum dis- thereexistdµ′ −1erasuresandadditionalρ′ rows,eachwithless tance d , if its redundancy r sati0sfies G2 than or equal to d′1−1 erasures. We show that the decoder DA 0 0 can correct these erasures. The proof proceeds by induction. r0 >logq d∑0−2 n0−i 1 (q−1)i . (6) torF(osr11t,h·e··fi,rsst1ℓ)levisel,thseinaclel-δze1ro=vec,totrh,ei.ceo.,rr(esc11t,s·y·n·d,ros1ℓm)e=vec0-. ( i=0 ( ) ) Thus, theρ′ rows are corrected. T∞he remaining uncorrected row byNaodwdi,nwger0enmcoodree reeadcuhnrdoawncoyfstyhmebcooldse. GTh1eusreinsgulttihnegccooddeeGi2s s(bulcohckro)wcˆsj,(jbl∈ocFks,)hiassleastsletahsatndδ′12e,rbaescuareuss.eTifheittoistaδl2nuomr lbaerrgeorf, a (ρ,n0,k;d0,d)q ME-LRC.Letr0 =⌈logq ∑id=0−02(n0i−1)(q− theTnhwuse,hfaovreδth2ed′1se6codnµ′d−le1v,ewl,hitchhe vcioorlaretecst dsµ′yn6drδo2mde′1.vector 1)i , and substitute it into (5), producing (3). ⌉ ( (s2, ,s2) can be obtained. Similarly, the left uncorrected 1 ··· ℓ ) APPENDIXB roofwsucˆcjh, rjow∈sFis,lheasss tahtalneaδst.d′2 erasures, and the total number 3 PROOFOFTHEOREM4 By induction, if the decoder runs until the µth level, then over FPqro,odfe:nAotceoddbewyoxrd=x(inx1C,µGxT2,P.i.s.,axnℓn),′ℓw-dhiemreenxsiioinnalxveisctaonr aalrletkhneocwonrr.eTcthesryendmroumstebveeoctnolryso(nsei1,u·n·c·o,rsreiℓc),teid=row1,2le,f.t.w.,iµth, n′-dimensional vector, for i =1,2,...,ℓ. number of erasures at least dµ′ 1 and at most dµ′ −1. Thus, it Letsj = x H′T,fori =1,2,...,ℓand j =1,2,...,µ.Thus, can be corrected. − i i j j si is a vj-dimensional vector over Fq, and is considered as an element in Fqvj. Let sj = (s1j,s2j,...,sℓj), an ℓ-dimensional vector over Fqvj, whose components are sij, i =1,2,...,ℓ. To prove Theorem 4, we need to show that if xHT = 0 and wq(x) < dm = min{δ1,δ2d′1,δ3d′2,··· ,δµdµ′ 1,dµ′ }, then x must be the all-zero vector 0. − Weproveitbycontradictionandinduction.Assumethatthere exists a codeword x such that xHT = 0, w (x) < d , and q m x =0. ̸ Wefirststateapropositionwhichwillbeusedinthefollowing proof. Proposition8.IfxHT = 0ands1 = s2 = = sj = 0,then ··· wq(xi)>d′jforxi ̸=0,i =1,2,...,ℓ. Proof: The condition s1 = s2 = = sj = 0 means ··· that x BT = 0 for i = 1,2,...,ℓ; that is, x is a codeword in i j i a code defined by the parity-check matrix B , whose minimum j distance is d′j. Therefore, we have wq(xi) > d′j for xi ̸= 0, i =1,2,...,ℓ. Now, if s1 ̸= 0, then wq(x) > wqv1(s1) >δ1 > dm, which contradicts the assumption. Thus, we have s1 =0. (a) Then, consider the second level. If s2 = 0, then wq(x) > ̸ wqv2(s2)d′1 > δ2d′1 > dm, where step (a) is from Proposition 8. Thus, it contradicts the assumption, so we have s2 = 0. By induction, we must have s1 =s2 = =sµ 1 =0. − ···