Locally recoverable code

This is an old revision of this page, as edited by JayBeeEll (talk | contribs) at 21:29, 16 November 2024. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Locally recoverable codes are a family of error correction codes that were introduced first by D. S. Papailiopoulos and A. G. Dimakis[1] and have been widely studied in information theory due to their applications related to distributive and cloud storage systems.[2][3][4][5]

An LRC is an linear code such that there is a function that takes as input and a set of other coordinates of a codeword different from , and outputs .

Definition

Let   be a   linear code. For  , let us denote by   the minimum number of other coordinates we have to look at to recover an erasure in coordinate  . The number   is said to be the locality of the  -th coordinate of the code. The locality of the code is defined as

 

An   locally recoverable code (LRC) is an   linear code   with locality  .

Let   be an  -locally recoverable code. Then an erased component can be recovered linearly,[6] i.e. for every  , the space of linear equations of the code contains elements of the form  , where  .

Optimal locally recoverable codes

Theorem[7] Let   and let   be an  -locally recoverable code having   disjoint locality sets of size  . Then

 

An  -LRC   is said to be optimal if the minimum distance of   satisfies

 

Tamo–Barg codes

Let   be a polynomial and let   be a positive integer. Then   is said to be ( ,  )-good if

  has degree  ,
• there exist distinct subsets   of   such that
– for any  ,   for some   , i.e.,   is constant on  ,
 ,
  for any  .

We say that { } is a splitting covering for  .[8]

Tamo–Barg construction

The Tamo–Barg construction utilizes good polynomials.[9]

• Suppose that a  -good polynomial   over   is given with splitting covering  .
• Let   be a positive integer.
• Consider the following  -vector space of polynomials  
• Let  .
• The code   is an  -optimal locally coverable code, where   denotes evaluation of   at all points in the set  .

Parameters of Tamo–Barg codes

Length. The length is the number of evaluation points. Because the sets   are disjoint for  , the length of the code is  .
Dimension. The dimension of the code is  , for   , as each   has degree at most  , covering a vector space of dimension  , and by the construction of  , there are   distinct  .
Distance. The distance is given by the fact that  , where  , and the obtained code is the Reed-Solomon code of degree at most  , so the minimum distance equals  .
Locality. After the erasure of the single component, the evaluation at  , where  , is unknown, but the evaluations for all other   are known, so at most   evaluations are needed to uniquely determine the erased component, which gives us the locality of  .
To see this,   restricted to   can be described by a polynomial   of degree at most   thanks to the form of the elements in   (i.e., thanks to the fact that   is constant on  , and the  's have degree at most  ). On the other hand  , and   evaluations uniquely determine a polynomial of degree  . Therefore   can be constructed and evaluated at   to recover  .

Example of Tamo–Barg construction

We will use   to construct  -LRC. Notice that the degree of this polynomial is 5, and it is constant on   for  , where  ,  ,  ,  ,  ,  ,  , and  :  ,  ,  ,  ,  ,  ,  ,  . Hence,   is a  -good polynomial over   by the definition. Now, we will use this polynomial to construct a code of dimension   and length   over  . The locality of this code is 4, which will allow us to recover a single server failure by looking at the information contained in at most 4 other servers.

Next, let us define the encoding polynomial:  , where  . So,                  .

Thus, we can use the obtained encoding polynomial if we take our data to encode as the row vector    . Encoding the vector   to a length 15 message vector   by multiplying   by the generator matrix

 

For example, the encoding of information vector   gives the codeword  .

Observe that we constructed an optimal LRC; therefore, using the Singleton bound, we have that the distance of this code is  . Thus, we can recover any 6 erasures from our codeword by looking at no more than 8 other components.

Locally recoverable codes with availability

Definition[10] A code   has all-symbol locality   and availability   if every code symbol can be recovered from   disjoint repair sets of other symbols, each set of size at most   symbols. Such codes are called  -LRC.

Theorem[11] The minimum distance of  -LRC having locality   and availability   satisfies the upper bound

 

.

If the code is systematic and locality and availability apply only to its information symbols, then the code has information locality   and availability  , and is called  -LRC.

Theorem[12] The minimum distance   of an   linear  -LRC satisfies the upper bound

 

.

References

  1. ^ Papailiopoulos, Dimitris S.; Dimakis, Alexandros G. (2012), "Locally repairable codes", 2012 IEEE International Symposium on Information Theory Proceedings, Cambridge, MA, USA, pp. 2771–2775, arXiv:1206.3804, doi:10.1109/ISIT.2012.6284027, ISBN 978-1-4673-2579-0{{citation}}: CS1 maint: ___location missing publisher (link)
  2. ^ Barg, A.; Tamo, I.; Vlăduţ, S. (2015), "Locally recoverable codes on algebraic curves", 2015 IEEE International Symposium on Information Theory, Hong Kong, China, pp. 1252–1256, arXiv:1603.08876, doi:10.1109/ISIT.2015.7282656, ISBN 978-1-4673-7704-1{{citation}}: CS1 maint: ___location missing publisher (link)
  3. ^ Cadambe, V. R.; Mazumdar, A. (2015), "Bounds on the Size of Locally Recoverable Codes", IEEE Transactions on Information Theory, 61 (11): 5787–5794, doi:10.1109/TIT.2015.2477406
  4. ^ Dukes, A.; Ferraguti, A.; Micheli, G. (2022), "Optimal selection for good polynomials of degree up to five", Designs, Codes and Cryptography, 90 (6): 1427–1436, doi:10.1007/s10623-022-01046-y
  5. ^ Haymaker, K.; Malmskog, B.; Matthews, G. (2022), Locally Recoverable Codes with Availability t≥2 from Fiber Products of Curves, doi:10.3934/amc.2018020
  6. ^ Papailiopoulos, Dimitris S.; Dimakis, Alexandros G. (2012), "Locally repairable codes", 2012 IEEE International Symposium on Information Theory, Cambridge, MA, USA, pp. 2771–2775, arXiv:1206.3804, doi:10.1109/ISIT.2012.6284027, ISBN 978-1-4673-2579-0{{citation}}: CS1 maint: ___location missing publisher (link)
  7. ^ Cadambe, V.; Mazumdar, A. (2013), "An upper bound on the size of locally recoverable codes", 2013 International Symposium on Network Coding, Calgary, AB, Canada, pp. 1–5, arXiv:1308.3200, doi:10.1109/NetCod.2013.6570829, ISBN 978-1-4799-0823-3{{citation}}: CS1 maint: ___location missing publisher (link)
  8. ^ Micheli, G. (2020), "Constructions of Locally Recoverable Codes Which are Optimal", IEEE Transactions on Information Theory, 66: 167–175, arXiv:1806.11492, doi:10.1109/TIT.2019.2939464
  9. ^ Tamo, I.; Barg, A. (2014), "A family of optimal locally recoverable codes", 2014 IEEE International Symposium on Information Theory, Honolulu, HI, USA, pp. 686–690, doi:10.1109/ISIT.2014.6874920, ISBN 978-1-4799-5186-4{{citation}}: CS1 maint: ___location missing publisher (link)
  10. ^ Huang, P.; Yaakobi, E.; Uchikawa, H.; Siegel, P.H. (2015), "Linear locally repairable codes with availability", "Linear locally repairable codes with availability", Hong Kong, China: IEEE International Symposium on Information Theory, pp. 1871–1875, doi:10.1109/ISIT.2015.7282780, ISBN 978-1-4673-7704-1
  11. ^ Tamo, I.; Barg, A. (2014), "Bounds on locally recoverable codes with multiple recovering sets", "Bounds on locally recoverable codes with multiple recovering sets", Honolulu, HI, USA: 2014 IEEE International Symposium on Information Theory, pp. 691–695, arXiv:1402.0916, doi:10.1109/ISIT.2014.6874921, ISBN 978-1-4799-5186-4
  12. ^ Wang, A.; Zhang, Z. (2014), ""Repair locality with multiple erasure tolerance"", IEEE Transactions on Information Theory, 60 (11): 6979–6987, arXiv:1306.4774, doi:10.1109/TIT.2014.2351404