27
Locally Decodable Codes Sergey Yekhanin Microsoft Research

Locally Decodable Codes Sergey Yekhanin Microsoft Research

Embed Size (px)

Citation preview

Page 1: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Locally Decodable Codes

Sergey Yekhanin

Microsoft Research

Page 2: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Data storage

• Store data reliably• Keep it readily available for

users

Page 3: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Parameters

Ideally:– 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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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

.3rk

nlog22

)(log kr

)/1(1 rkn Length lower bound:

Locality lower bound:

Page 13: Locally Decodable Codes Sergey Yekhanin Microsoft Research

State of the art: constructions

Matching vector codes Reed Muller codes Multiplicity codes

kr ck

kr

)log(log

log

2r kr log2

Page 14: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Plan

• Reed Muller codes

• Multiplicity codes

• Matching vector codes

Page 15: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Reed Muller codes

• Parameters: • Code: Evaluations of degree polynomials

over • Set: • Polynomial yields a codeword:

• Parameters:

.,, dmq

d .mqF

.)1(,2 qdm

,

2

1

2

1/

2

2 22

q

d

n

k.kqr ,2qn

],[ 21 zzFf q

2)(qFx

xf

Page 16: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Multiplicity codes

Page 18: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Multiplicity codes

• Parameters: • Code: Evaluations of degree polynomials

over and their partial derivatives.

• Set:• Polynomial yields a codeword:

• Parameters:

.,, dmq

d mqF

2

)(),(),(21

qFx

xz

fx

z

fxf

.)1(2,2 qdm ],[ 21 zzFf q

.22 kqr ,3/2

6

143/

2

2 22

q

d

n

k,3 2qn

qd

Page 19: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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

Lf .d

f

Page 20: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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

xz

fx

z

fxf1L

f2L

f

:x

xx

Page 21: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

Matching vector codes

Page 23: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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

FhC

hC

)()2(2

)1(1 ... hu

huuu jjjj zzzz

.mqF C

Page 25: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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 vvp

ivp

M , CF.ib

hCib

ivpM ,

),(

,

ijj

vp

j vuuj

M

uj xpbzb

Page 26: Locally Decodable Codes Sergey Yekhanin Microsoft Research

RM codes vs. Multiplicity codes

Reed Muller codes Multiplicity codes

Codewords

Evaluations of low degree

polynomials

Evaluations of polynomials with specific monomial

degrees

Evaluation 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: Locally Decodable Codes Sergey Yekhanin Microsoft Research

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