Locally Decodable Codes Sergey Yekhanin Microsoft Research.

Post on 16-Dec-2015

230 views 1 download

Tags:

Transcript of Locally Decodable Codes Sergey Yekhanin Microsoft Research.

Locally Decodable Codes

Sergey Yekhanin

Microsoft Research

Data storage

• Store data reliably• Keep it readily available for

users

Data storage: Replication

• Store data reliably• Keep it readily available for

users

• Very large overhead• Moderate reliability

• Local recovery: Loose one machine, access one

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

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

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

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

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

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.

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

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

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:

State of the art: constructions

Matching vector codes Reed Muller codes Multiplicity codes

kr ck

kr

)log(log

log

2r kr log2

Plan

• Reed Muller codes

• Multiplicity codes

• Matching vector codes

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

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

Multiplicity codes

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

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

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

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

Matching vector codes

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

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

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

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

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