csr2011 june17 09_30_yekhanin
Post on 21-Oct-2014
264 views
DESCRIPTION
TRANSCRIPT
![Page 1: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/1.jpg)
Locally Decodable Codes
Sergey YekhaninMicrosoft Research
![Page 2: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/2.jpg)
Data storage
• Store data reliably• Keep it readily available for
users
![Page 3: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/3.jpg)
Data storage: Replication
• Store data reliably• Keep it readily available for
users
• Very large overhead• Moderate reliability
• Local recovery: Loose one machine, access one
![Page 4: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/4.jpg)
Data storage: Erasure coding
• Store data reliably• Keep it readily available for
users
• Low overhead• High reliability
• No local recovery: Loose one machine, access k
…
……
k data chunks n-k parity chunks
Need: Erasure codes with local decoding
![Page 5: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/5.jpg)
Local decoding: example
X1
X
E(X)
• Tolerates 3 erasures• After 3 erasures, any information bit can recovered with locality 2• After 3 erasures, any parity bit can be recovered with locality 2
X2 X3
X1
X1X2
X2 X3
X1X3
X2X3
X1X2X3
![Page 6: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/6.jpg)
Local decoding: example
X1
X
E(X)
• Tolerates 3 erasures• After 3 erasures, any information bit can recovered with locality 2• After 3 erasures, any parity bit can be recovered with locality 2
X2 X3
X1
X1X2
X2 X3
X1X3
X2X3
X1X2X3
![Page 7: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/7.jpg)
Locally Decodable Codes
Definition : A code is called - locally decodable if for all and all values of the symbol can be recovered from accessing only symbols of , even after an arbitrary 10% of coordinates of are erased.
0 0 1 0 1 … 0 1 1
0 1 … 0 1
0 1 0 … 0 1
k long message
n long codewordAdversarial
erasures
Decoder reads only r symbols
nq
kq FFC : r
kqFx ],[ki ix
r )(xC)(xC
![Page 8: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/8.jpg)
ParametersIdeally:
– High rate: close to . or
– Strong locality: Very small Constant.
One cannot minimize and simultaneously. There is a trade-off.
n .)1( kn
r
k
.r
)(kOn
n
![Page 9: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/9.jpg)
Parameters
Ideally:– High rate: close to . or
– Strong locality: Very small Constant.
n k )(kOn .)1( kn
.rApplications in complexity theory / cryptography.
Potential applications for data transmission / storage.
![Page 10: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/10.jpg)
Early constructions: Reed Muller codes
Parameters:The code consists of evaluations of all degree
polynomials in variables over a finite field
• High rate: No locality at rates above 0.5 Locality at rate
• Strong locality: for constant .r
.qFmd
.,, dmq
)1/(1
2
rkn
./1 Okr
![Page 11: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/11.jpg)
State of the art: codes
• High rate: [KSY10]
Multiplicity codes: Locality at rate
• Strong locality: [Y08, R07, KY09,E09, DGY10, BET10a, IS10, CFL+10,BET10b,SY]
Matching vector codes: for constant
for
.r
.1
)(log22k
n
kr
k
nlog22 .3r
![Page 12: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/12.jpg)
State of the art: lower bounds [KT,KdW,W,W]
• High rate: [KSY10]
Multiplicity codes: Locality at rate
• Strong locality: [Y08, R07, E09, DGY10, BET10a, IS10, CFL+10,BET10b,SY11]
Matching vector codes: for constant
for
kr .1
)(log22k
n .r.3r
k
nlog22
)(log kr
)/1(1 rkn Length lower bound:
Locality lower bound:
![Page 13: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/13.jpg)
State of the art: constructions
Matching vector codes Reed Muller codes Multiplicity codes
kr ck
kr)log(log
log
2r kr log2
![Page 14: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/14.jpg)
Plan
• Reed Muller codes
• Multiplicity codes
• Matching vector codes
![Page 15: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/15.jpg)
Reed Muller codes• Parameters: • Code: Evaluations of degree polynomials
over • Set: • Polynomial yields a codeword:
• Parameters:
.,, dmqd .mqF
.)1(,2 qdm
,21
21/
22 2
2
qd
nk .kqr ,2qn
],[ 21 zzFf q
2)(qFx
xf
![Page 16: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/16.jpg)
Reed Muller codes: local decoding• Key observation: Restriction of a codeword to an
affine line yields an evaluation of a univariate polynomial of degree
• To recover the value at – Pick an affine line through with not too many
erasures.– Do polynomial interpolation.2
qF
:x
x
x
.d
• Locally decodable code: Decoder reads random locations.
Lf
k
![Page 17: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/17.jpg)
Multiplicity codes
![Page 18: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/18.jpg)
Multiplicity codes• Parameters: • Code: Evaluations of degree polynomials
over and their partial derivatives.
• Set:• Polynomial yields a codeword:
• Parameters:
.,, dmqd m
qF
2
)(),(),(21
qFx
xzfx
zfxf
.)1(2,2 qdm ],[ 21 zzFf q
.22 kqr ,3/26
143/2
2 22
qd
nk,3 2qn
qd
![Page 19: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/19.jpg)
Multiplicity codes: local decoding
• Fact: Derivatives of in two independent directions determine the derivatives in all directions.
• Key observation: Restriction of a codeword to an affine line yields an evaluation of a univariate polynomial of degree L
f .d
f
![Page 20: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/20.jpg)
Multiplicity codes: local decoding• To recover the value at
– Pick a line through . Reconstruct– Pick another line through . Reconstruct– Polynomials and determine
• Increasing multiplicity yields higher rate. • Increasing the dimension yields smaller query complexity.
2qFx
1Lf
1L2L 2L
f
)(),(),(
21
xzfx
zfxf1L
f2L
f
:x
xx
![Page 21: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/21.jpg)
RM codes vs. Multiplicity codes
Reed Muller codes Multiplicity codes
Codewords
Evaluations of polynomials
Higher order evaluations of polynomials
Evaluation domain
All of the domain All of the domain
Decoding Along a random affine line
Along a collection of random affine lines
Locally correctable
Yes Yes
![Page 22: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/22.jpg)
Matching vector codes
![Page 23: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/23.jpg)
Matching vectors
• Definition: Let
We say that form a matching family if :– For all– For all
• Core theorem: A matching vector family of size yields an query code of length
},,...,{ 1 kuuU ,, hmZVU
).,(0 ij vu
}.,...,{ 1 kvvV
;0),(, ii vuiVU ,
k
,ji
m .hmn
![Page 24: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/24.jpg)
MV codes: Encoding• Let contain a multiplicative subgroup of
size • Given a matching family• A message: • Consider a polynomial in the ring:
• Encoding is the evaluation of over
),...,( 1 kbb
hmZVU ,
],...,[ 1 hq zzF
k
j
uj
jzbF1
F hC
hC
)()2(2
)1(1 ... hu
huuu jjjj zzzz
.mqF C
![Page 25: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/25.jpg)
Multiplicity codes: local decoding• Concept: For a multiplicative line
through in direction
• Key observation: evaluation of is a evaluation of a univariate polynomial whose term determines
• To recover – Pick a multiplicative line – Do polynomial interpolation
phm
h ZvCp ,:v }|{, CxxpM v
vp
ivp
M , CF.ib
hCibivp
M ,
),(
,
ijj
vp
j vuujM
uj xpbzb
![Page 26: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/26.jpg)
RM codes vs. Multiplicity codes
Reed Muller codes Multiplicity codes
Codewords
Evaluations of low degree
polynomials
Evaluations of polynomials with specific monomial
degreesEvaluation domain
All of the domain A subset of the domain
Decoding Along a random affine line
Along a random multiplicative line
Locally correctable
Yes No
![Page 27: Csr2011 june17 09_30_yekhanin](https://reader033.vdocuments.pub/reader033/viewer/2022052819/5445e736b1af9f29098b45b5/html5/thumbnails/27.jpg)
Summary
• Despite progress, the true trade-off between codeword length and locality is still a mystery.– Are there codes of positive rate with ?– Are there codes of polynomial length and
?
• A technical question: what is the size of the largest family of subsets of such that– For all modulo six; – For all modulo six.
)(logkOr )1(okr
},...,{ 1 kuu ][n,i
,ji 0|| iu
0|| ji uu