Multiplicity Codes: Locality with High Efficiency
description
Transcript of Multiplicity Codes: Locality with High Efficiency
Multiplicity Codes 1 of 33December 16, 2011
Multiplicity Codes:Locality with High Efficiency
Madhu SudanMicrosoft Research
Based on [Kopparty, Saraf, Yekhanin (STOC 2011)]
Multiplicity Codes 2 of 33
Error-Correcting Codes
Used to store data over (noisy) storage media/communicate data over (noisy) channels.
Code (over alphabet ). ; Terminology:
= messages; = codewords. Rate() Distance:
Codes of interest:
December 16, 2011
Multiplicity Codes 3 of 33
Algorithmic Problems in Coding Theory
(Fix Code and encoding function ) Encoding:
Given , compute . Error Detection/Testing:
Given , determine if . Variations: Determine (approximately).
Error Correction: Given s.t. s.t. ; compute .
December 16, 2011
Multiplicity Codes 4 of 33
For , can be computed in time?
Answer 1: No
f(x)
Sublinear Algorithmics
December 16, 2011
x
Multiplicity Codes 5 of 33
For , can be computed in time?
Answer 1: No Answer 2: Yes, provided:
Output represented implicitly Input given as oracle
f(x)𝑓 (𝑥 )𝑖
Sublinear Algorithmics
December 16, 2011
xi
x-oracle
j𝑥 𝑗
Multiplicity Codes 6 of 33
For , can be computed in time?
Answer 2: Yes, provided: Output represented implicitly Input given as oracle Correctness guaranteed on approx. to input.
𝑓 (𝑥 )𝑖𝑓 (~𝑥 )𝑖
Sublinear Algorithmics
December 16, 2011
ix-oracle
j𝑥 𝑗
Local Error-Correction 7 of 33July 25, 2011
Sub-linear time algorithms
Initiated in late eighties in context of Program checking [BlumKannan,BlumLubyRubinfeld] Interactive Proofs/PCPs [BabaiFortnowLund]
Now successful in many more contexts Property testing/Graph-theoretic algorithms Sorting/Searching Statistics/Entropy computations (High-dim.) Computational geometry
Many initial results are coding-theoretic!
Local Error-Correction 8 of 33July 25, 2011
Sub-linear time algorithms & Coding
Encoding: Not reasonable to expect in sub-linear time.
Testing? Decoding? – Can be done in sublinear time. In fact many initial results do so!
Codes that admit efficient … … testing: Locally Testable Codes (LTCs) … decoding: Locally Decodable Codes (LDCs).
Local Error-Correction 9 of 33July 25, 2011
Rest of this talk
Definitions of LDCs Some background/Basic Construction Recent constructions of LDCs.
[Kopparty-Saraf-Yekhanin ‘11]
Local Error-Correction 10 of 33July 25, 2011
Definition
Multiplicity Codes 11 of 33
Locally Decodable Code (LDC)
Code with encoder is -LDC if there exists a (sublinear-time) decoding algorithm on Input: and Oracle for , s.t. s.t. , Outputs: w.p. at least Locality: makes only queries to .
History: Some implied LDCs from 1950s [Reed,Muller]. Construction + Implied definitions
[Babai,Fortnow,Lund,Szegedy’90]. Explicit definitions [S.,Trevisan,Vadhan; Katz-
Trevisan]
December 16, 2011
Local Error-Correction 12 of 33July 25, 2011
Motivations
Multiplicity Codes 13 of 33
Motivations to study LTCs
Intimately related to concept of Probabilistically Checkable Proofs (PCPs): Format for writing mathematical proofs that
can be checked by few local probes. (Key ingredient in many hardness of
approximation results.) Current state of art:
State of the art PCP/LTCs [BenSassonS,Dinur] Parameters: bits to bits. Locality: O(1) queries.
December 16, 2011
Multiplicity Codes 14 of 33
Motivations to study LDCs
Hard-core predicates: Hard Boolean functions from general hard functions.
Hardness amplification: Functions that are hard to compute on random inputs, from worst-case hard functions.
Private Information Retrieval: Distributed information storage method which allows user to query information privately.
December 16, 2011
Multiplicity Codes 15 of 33
Why the negativity?
Why are local codes leading only to negative results? (inapprox, hard predicates, hard-on-average functions, privacy schemes …)
What about the obvious positive possibility: on storage devices etc.? Rate is too weak:
best known with sublinear decoding Rate .5 for locality Rate for locality .
Provable lower bounds: [KatzTrevisan] Practical settings: Rate .8, .9 etc.
December 16, 2011
Local Error-Correction 16 of 33July 25, 2011
Basic Constructions
Multiplicity Codes 17 of 33
Self-correctible codes
Will ask for (slightly?) stronger object: Every letter of codeword locally recoverable.
(as opposed to message)
Why? Simpler concept (depends only on code, not
encoding function). Implies existence of encoding function that
leads to LDC.
December 16, 2011
Multiplicity Codes 18 of 33
Codes from Multivariate Polynomials.
Parameters: Message space: -variate polynomials of degree at
most over Encoding: Evaluations over Resulting code parameters:
Distance (Can also use , with care)
December 16, 2011
Multiplicity Codes 19 of 33
Local decoding/Self-correction
December 16, 2011
• Codeword = Function on cube.
• Rec’d word = Function on cube = with errors
• Correction problem: Recover codeword at point
• Self-correction alg:• Look at on line• Recover on line (classical decoding)
• Locality =
(𝐹 𝑞)𝑚
Multiplicity Codes 20 of 33
Sample Parameters
Best locality:
; 2-locally decodable code (“Hadamard code”) for ¼-fraction errors.
Weakest (sublinear) locality:
; ; Locality = correcting fraction errors
In general: locality at rate with
December 16, 2011
Multiplicity Codes 21 of 33
The Rate < ½ barrier
To get distance, need . To get non-trivial locality: . Implies , and . Rate at most .½
December 16, 2011
Multiplicity Codes 22 of 33
The new breakthrough
Multiplicity Codes [KSY ‘11] Theorem:
For every s.t. there exist codes with
is -locally-decodable from errors. Rate arbitrarily close to 1
(not expected – at least not by me). Locality arbitrarily small power of . Even concrete parameters are interesting.
December 16, 2011
Local Error-Correction 23 of 33July 25, 2011
Multiplicity Codes
Multiplicity Codes 24 of 33
Basic Idea:
Extend Multivariate Polynomial codes: Encoding also includes evaluations of “partial
derivatives”. Cons: Now encoding is even more redundant,
so we lose rate? Pros: But we can use higher degrees.
E.g.: Fraction of points where are all zero is at most .
( denotes “partial derivative” wrt )
December 16, 2011
Multiplicity Codes 25 of 33
Hasse derivatives & Multiplicities
For every , there exists a notion of th partial derivative of , denoted
Order of is largest s.t. all derivatives of of order vanish at Multiplicity Schwartz-Zippel Lemma:
December 16, 2011
Multiplicity Codes 26 of 33
Multiplicity Codes Example-1
Parameters: Alphabet = Message = -variate polynomials of degree d over
Code parameters:
Locality = ? If so, sublinear locality at rate !
December 16, 2011
Hopefully:
Multiplicity Codes 27 of 33
Locality – I (no errors)
Reconstructing from . Idea: Still decode along lines. Pick line thru Define
have correct value of Insufficient, since . derivative of wrt can be obtained from and
(specifically, ) Now have enough info to interpolate and so
can get
December 16, 2011
Multiplicity Codes 28 of 33
Locality – I (with errors)
Reconstructing from . Idea: Still decode along lines. Pick line thru Define
have correct value of Insufficient, since . derivative of wrt can be obtained from and
(specifically, ) Now have enough info to decode and so can
get
December 16, 2011
Multiplicity Codes 29 of 33
Locality - II
Not done! also need to recover Idea 1: is just another polynomial of degree – can
recover locally? No! Don’t have etc. which would be needed.
Actual solution: Using , can recover . Pick another random line and get . Can recover and from the above.
Conclude: Decodable with queries.
December 16, 2011
Multiplicity Codes 30 of 33
Increase # variables to reduce locality to Next, increase multiplicities (and degree) to get
rate up to ! Naively, fraction of errors corrected , where . Running time More sophisticated idea
Improving Rate, Locality
December 16, 2011
Multiplicity Codes 31 of 33
Derivatives?
Classical derivatives no good over finite fields 2nd derivative of every poly. zero over
Hasse derivatives: Univ. poly : a root of mult.
divides divides where is the Hasse derivative of P(x).
Multiv. Poly? Just extend above notationally!
December 16, 2011
Multiplicity Codes 32 of 33
Concluding thoughts
Techniques: Derivatives are not locally computable! More multiplicities More non-linear codes?
Theory? Can we prove these codes are locally testable? Can we get PCPs with such parameters?
Practice? No more rate barrier to using locally decodable
codes! When will we see these on USB sticks?
December 16, 2011
Local Error-Correction 33 of 33July 25, 2011
Thank You!