Locality in Coding Theory
Madhu Sudan
Harvard
April 9, 2016
Skoltech: Locality in Coding Theory
1 of 28
Error-Correcting Codes
β’ (Linear) Code πΆ β π½ππ .
β
β
β
β
π½π : Finite field with π elements.
π β block length
π = dim(πΆ) β message length
π
(πΆ) β π/π: Rate of πΆ
β πΏ πΆ β min {πΏ π’, π£ β Pr[π’π β π£π ]}.
π₯β π¦βπΆ
π
β’ Basic Algorithmic Tasks
β Encoding: map message in π½ππ to codeword.
β Testing: Decide if π’ β πΆ
β Correcting: If π’ β πΆ, find nearest π£ β πΆ to π’.
April 9, 2016
Skoltech: Locality in Coding Theory
2 of 28
Locality in Algorithms
β’ βSublinearβ time algorithms:
β
β
β
β
Algorithms that run in time o(input), o(output).
Assume random access to input
Provide random access to output
Typically probabilistic; allowed to compute output on
approximation to input.
β’ (Property testing β Sublinear time for Boolean functions)
β’ LTCs: Codes that have sublinear time testers.
β Decide if π’ β πΆ probabilistically.
β Allowed to accept π’ if πΏ(π’, πΆ) small.
β’ LCCs: Codes that have sublinear time correctors.
β If πΏ(π’, πΆ) is small, compute π£π , for π£ β πΆ closest to π’.
April 9, 2016
Skoltech: Locality in Coding Theory
3 of 28
LTCs and LCCs: Formally
β’ πΆ is a (β, π)-LTC if there exists a tester that
β Makes β(π) queries to π’.
β Accept π’ β πΆ w.p. 1
β Reject π’ w.p. at least π β
πΏ(π’, πΆ).
β’ C is a (β, π)-LCC if exists decoder π· s.t.
β Given oracle access π’ close to π£ β πΆ, and π LDC if only
coordinates of
β Decoder makes β(π) queries to π’.
message can be
β Decoder π·π’ (π) usually outputs π£π .
β’ βπ, Pr[ π·π’ π β π£π ] β€ πΏ(π’, π£)/π
recovered.
π·
1
3
β’ Often: ignore π (fix to ) and focus on β
April 9, 2016
Skoltech: Locality in Coding Theory
4 of 28
Outline of this talk
β’
β’
β’
β’
β’
Part 0: Definitions of LTC, LCC
Part 1: Elementary construction
Part 2: Motivation (historical, current)
Part 3: State-of-the-art constructions of LCCs
Part 4: State-of-the-art constructions of LTCs
April 9, 2016
Skoltech: Locality in Coding Theory
5 of 28
Part 1: Elementary Construction
April 9, 2016
Skoltech: Locality in Coding Theory
6 of 28
Main Example: Reed-Muller Codes
β’ Message = multivariate polynomial;
Encoding = evaluations everywhere.
β RM π, π, π β
{π πΌ
|
πΌβπ½π
π
π β π½q π₯1 , β¦ , π₯π , deg π β€ π}
β’ Locality? Say π < π
β Restrictions of low-degree
polynomials to lines yield
low-degree (univ.) polys.
β Random lines sample π½π
π
uniformly (pairwise indβly)
April 9, 2016
Skoltech: Locality in Coding Theory
7 of 28
LCCs and LTCs from Polynomials
β’ Decoding (π < π):
β Problem: Given π β π, πΌ β π½π
π , compute π πΌ .
β Pick random π½ and consider π|πΏ
where πΏ = {πΌ + π‘ π½ | π‘ β π½π } is a random line β πΌ.
β Find univ. poly β β π|πΏ and output β(πΌ)
β’ Testing (π < π/2):
Analysis non-trivial
β Verify deg π|πΏ β€ π for random line πΏ
β’ Parameters:
βπ=
April 9, 2016
1
1π
Ideas
can
be
extended
to
π
π
π ; β = π = π ; π
β1
πΆ β
Locality β poly(πΏ ) π!
Skoltech: Locality in Coding Theory
> π.
8 of 28
Part 2: Motivations
April 9, 2016
Skoltech: Locality in Coding Theory
9 of 28
Motivation β 1 (βPracticalβ)
β’ How to encode massive data?
β Solution I
β’ Encode all data in one big chunk
β’ Pro: Pr[failure] = exp(-|big chunk|)
β’ Con: Recovery time ~ |big chunk|
β Solution II
β’ Break data into small pieces; encode separately.
β’ Pro: Recovery time ~ |small|
β’ Con: Pr[failure] = #pieces X Pr[failure of a piece]
β Locality (if possible): Best of both Solutions!!
April 9, 2016
Skoltech: Locality in Coding Theory
10 of 28
Aside: LCCs vs. other Localities
β’ Local Reconstruction Codes (LRC):
β Recover from few (one? two?) erasures locally.
β AND Recover from many errors globally.
β’ Regenerating Codes (RgC):
β Restricted access pattern for recovery: Partition
coordinates and access few symbols per partition.
β’ Main Differences:
β #errors: LCCs high vs LRC/RgC low
β Asymptotic (LCC) vs. Concrete parameters (LRC/RgC)
April 9, 2016
Skoltech: Locality in Coding Theory
11 of 28
Motivation β 2 (βTheoreticalβ)
β’ (Many?) mathematical consequences:
β Probabilistically checkable proofs:
β’ Use specific LCCs and LTCs
β Hardness amplification:
β’ Constructing functions that are very hard on average from
functions that are hard on worst-case.
β’ Any (sufficiently good) LCC β Hardness amplification
β Small set expanders (SSE):
β’ Usually have mostly small eigenvalues.
β’ LTCs β SSEs with many big eigenvalues [Barak et al., Gopalan
et al.]
April 9, 2016
Skoltech: Locality in Coding Theory
12 of 28
Aside: PCPs (1 of 4)
β’ Familiar task: Protect massive data π β 0,1
π
π
πΈ(π)
πΈπ (π)
π π
β’ PCP task: Protect π + analysis π π β {0,1}.
β π(π) is just one bit long β would like to read &
trust π(π) with few probes.
β Can we do it? Yes! PCPs!
β βFunctional Error-correctionβ
April 9, 2016
Skoltech: Locality in Coding Theory
13 of 28
PCPs (2 of 4) - Definition
0
W
HTHHTH
V
1
1
PCP Verifer: Given π β 0,1
π
1. Tosses random coins
2. Determines query locations
3. Reads locations. Accepts/Rejects
π β πΈπ π with π π = 1 β V accepts w.h.p.
π far from every πΈπ π with π π = 1 β rejects w.h.p.
Distinguishes π β1 1 β β
from π β1 1 = β
April 9, 2016
Skoltech: Locality in Coding Theory
14 of 28
PCPs (3 of 4): βPolynomial-speakβ
β’
β’
β’
β’
π β π(π₯) low-degree (multiv.) polynomial
π β Ξ¦ : local map from polyβs to polyβs
π π = 1 β β π΄, π΅, πΆ s. t. Ξ¦ π, π΄, π΅, πΆ β‘ 0
πΈπ π = ( π , π΄ , π΅ , πΆ ) (evaluations)
β’ Local testability of RM codes β can verify πΈπ (π)
syntactically correct. ( β©πβͺ, β©π΄βͺ, β©π΅βͺ, πΆ β polynomials )
β’ Distance of RM codes + Ξ¦ π, π΄, π΅, πΆ π = 0 for
random π β Semantically correct (π π = 1)).
April 9, 2016
Skoltech: Locality in Coding Theory
15 of 28
PCP (4 of 4)
β’ π β‘ πΈ: π × π β 0,1 (edges of graph).
β‘ πΈ: π½2π β π½π with deg πΈ β€ π β |π|
β’ π πΈ = 1 β graph 3-colorable.
β β π: π β {β1,0,1} s.t. βπ¦, π§ β π, πΈ π¦, π§ = 1 β π π¦ β π π§
β’ Ξ¦ π, π΄, π΄1 , π΅, π΅1 , π΅2 , π‘ =
π΄(π¦) β π π¦ + 1 β
π(π¦) β
π(π¦) + 1
+ π‘ π΄ π¦ β π΄1 π¦ β
πβV(π¦ β π)
+ π‘ 2 π΅ π¦, π§ β πΈ π¦, π§ β
+π‘ 3 π΅ π¦, π§ β π΅1 π¦, π§
April 9, 2016
πβ{β2,β1,1,2}
πβπ
π π¦ βπ π§ βπ
π¦ β π β π΅2 π¦, π§
Skoltech: Locality in Coding Theory
πβπ(π§
β π)
16 of 28
Part 3: Recent Progress on LCCs + LTCs
April 9, 2016
Skoltech: Locality in Coding Theory
17 of 28
Summary of Recent Progress
β’ Till 2010: locality π = π π β π
ππ‘π <
β’ 2016:
β LCC locality π = 2~
β β π = 2~
log π
log π
1
.
2
& π
ππ‘π β 1
meeting Singleton Bound
β β π = 2~ log π binary, Zyablov bound.
(locally correcting half-the-distance!)
β LTC locality π = ~poly log π & π
ππ‘π β 1
β β¦ Singleton Bound, Zyablov bound β¦
April 9, 2016
Skoltech: Locality in Coding Theory
18 of 28
Main References
2
β’ Multiplicity codes [KoppartySarafYekhaninβ10]
β’ See also
β Lifted Codes [GuoKoppartySudanβ13]
1
β Expander codes [HemenwayOstrovskyWoottersβ13]
β’ Tensor codes [Viderman β11] (see also [GKSβ13] )
β’ Above + Alon-Luby composition:
3
[KoppartyMeirRon-ZewiSarafβ16a]
β’ A βZig-Zagβ construction with above ingredients:
[KMR-ZSβ16b]
4
April 9, 2016
Skoltech: Locality in Coding Theory
19 of 28
Lifted Codes
β’ Codes obtained by inverting decoder:
β Recall decoder for RM codes.
β What code does it decode?
β πΆπ,π,π = π: π½π
π β π½π deg π |πΏ β€ π β πΏ}
β What we know: RM π, π, π β πΆπ,π,π
β’ Theorem [GKSβ13]: πΏ(πΆπ,π,π ) β πΏ RM π, π, π
π
ππ‘π πΆπ,π,π β 1 if π = 2π‘ and π‘ β β
β’ Local decodability by construction.
β’ Local testability [KaufmanSβ07,GuoHaramatySβ15].
April 9, 2016
Skoltech: Locality in Coding Theory
20 of 28
Why does Rate πΆπ,π,π β 1?
β’ Example: π = 2
β’ Some monomials OK!
π
;
2
2π‘ ;
β E.g. π =
π = π π₯, π¦ = π₯ π π¦ π satisfies
deg π|ππππ β€ π for every line!
β’ π₯ π ππ₯ + π
π
= π π π₯ π + ππ π₯ (mod π₯ π β π₯)
β’ As π β π many more monomials
β Proof: Lucasβs lemma + simple combinatorics
April 9, 2016
Skoltech: Locality in Coding Theory
21 of 28
Multiplicity Codes
β’ Basic example
β’ Message = (coeffs. of) poly π β π½π π₯, π¦ .
β’ Encoding = Evaluations of
2
Length = π = π ; Alphabet =
ππ ππ
π, ,
ππ₯ ππ¦
π½3π ;
Rate β
β’ Local-decoding via lines. Locality = O
β’ More multiplicities β Rate β 1
β’ More derivatives β Locality β ππ
April 9, 2016
Skoltech: Locality in Coding Theory
over π½2π .
2
3
π
22 of 28
Multiplicity Codes - 2
β’
β’
2
Why does Rate β ?
3
ππ ππ
Every zero of π, ,
ππ₯ ππ¦
β‘ two zeroes of π
β’ Can afford to use π of degree β 2π.
β’ Dimension β × 4 ; But encoding length β× 3
(Same reason that multiplicity improves radius of listdecoding in [Guruswami,S.])
April 9, 2016
Skoltech: Locality in Coding Theory
23 of 28
State-of-the-art as of 2014
β’ βπ, πΌ > 0 βπΏ = πΏπ,πΌ > 0 s.t. β codes w.
β Rate β₯ 1 β πΌ
β Distance β₯ πΏ
β Locality = ππ
β’ Promised:
β Locality ππ(1)
β Singleton bound [What if you need higher
distance?]
β Zyablov bound [What if you want a binary code?]
April 9, 2016
Skoltech: Locality in Coding Theory
24 of 28
Alon-Luby Transformation
β’ Key ingredient in [Meir14], [Kopparty et al.β15]
Short MDS
Expander-based
Interleaving
Rate β 1
Code
Message
April 9, 2016
Encoding
Skoltech: Locality in Coding Theory
25 of 28
Alon-Luby Transformation
β’ Key ingredient in [Meir14], [Kopparty et al.β15]
Short MDS
Expander-based
Interleaving
Rate β 1
Code
Message
Encoding
Rate/Distance of final code ~ Rate of MDS
[Meir] Locality ~ Locality of Rate 1 code Proof = Picture
April 9, 2016
Skoltech: Locality in Coding Theory
26 of 28
Subpolynomial Locality
β’ Apply previous transform, with initial code of
Rate 1 β π(1) and locality ππ(1) !
β [e.g., multiplicity codes with π = π(1)]
β’ Singleton bound
β’ Zyablov bound?
β Concatenation [Forneyβ66]
April 9, 2016
Skoltech: Locality in Coding Theory
27 of 28
Part 4: Locally Testable Codes
(after break)
April 9, 2016
Skoltech: Locality in Coding Theory
28 of 28
© Copyright 2026 Paperzz