33
Multiplicity Codes Swastik Kopparty (Rutgers) (based on [K-Saraf-Yekhanin ’11], [K ‘12], [K ‘14])

Multiplicity Codes

  • Upload
    thi

  • View
    39

  • Download
    1

Embed Size (px)

DESCRIPTION

Multiplicity Codes. Swastik Kopparty (Rutgers) (based on [K- Saraf - Yekhanin ’11], [K ‘12], [K ‘14]). This talk. Multiplicity codes Generalize polynomial-evaluation codes Based on evaluating polynomials & derivatives Local decoding Gave first locally decodable codes with rate  1 - PowerPoint PPT Presentation

Citation preview

PowerPoint Presentation

Multiplicity CodesSwastik Kopparty (Rutgers)

(based on [K-Saraf-Yekhanin 11], [K 12], [K 14])

This talkMultiplicity codesGeneralize polynomial-evaluation codesBased on evaluating polynomials & derivatives

Local decodingGave first locally decodable codes with rate 1

List-decodingAttain list-decoding capacity

BeyondLocal list-decoding, pseudorandom constructions,

Error-correcting codesCodewordscrLocal decoding/correctionEncodingRaw dataCodeword

CorruptedDecodingCorrupted CodewordOriginal data

What if we want to see the original data?DecoderWhat if we are only interested in one bit(or a few bits)of the original data?Decoding 1 bitCorrupted Codeword

Message bit number iWhat if we want only message bit number i?DecoderLocally Decoding 1 bitCorrupted CodewordOriginal bit number iLocally Decoding 1 bit(slow motion)Corrupted CodewordOriginal bit number iA multivariate polynomial codeLarge finite field Fq of size q > 0

Interpret original data as a polynomial P(X,Y) degree(P) d = (1-) q

Encoding:Evaluate P at each point of Fq2

Rate (d2/2)/q2 = (1-)2/2Distance = Two low degree polynomials cannotagree on many points of Fq2Fq2Locally correcting polynomial codesMain idea:Restricting a low-degree multivariate polynomial to a line gives a low-degree univariate polynomial

So:The value of P(a,b) can be recovered from the values of P on any line L through (a,b)Even if there are errorsPicking the line L at randomLess than /2 errors on the line(univariate polynomial decoding)

Decoding queries: # points on a line = q k0.5Fq2(a,b)LMore variablesGeneralization:m variablesNow m-variate polynomials with degree (1-) q = d

Distance = Rate (dm/m!)/qm = (1-)m/m!

Local correction via lines againDecoding time q O(k1/m)

Multiplicity codes[KSY 11]DerivativesGiven a polynomial P(X, Y) 2 F[X,Y]Define PX = dP/dX, PY = dP/dY, PXX, PXY , Everything formally

If F has small characteristic:then use Hasse derivatives

MultiplicityP(X,Y) vanishes at (a,b) with mult sif for all i,j with i+j < s, PXi Yj(a,b) = 0

Notation: Mult(P, (a,b))

Mult(P, (a,b)) 1 , P(a,b) = 0

Agreement multiplicityDefn: If all derivatives of P and Q of order < s agree on (a,b)then P and Q agree on (a,b) with multiplicity s.Mult(P-Q, (a,b)) sMultiplicity codesFq2Distance of multiplicity codesHow many (a,b) s.t.P(a,b) = Q(a,b), PX(a,b) = QX(a,b), PY(a,b) = QY(a,b)P and Q have a multiplicity 2 agreement at (a,b)

Lemma (see [Dvir-K-Saraf-Sudan 09]):Even high degree polynomials cannot have too many high-multiplicity zeroes

For every P of degree at most d:Ex 2 Fm[ mult(P, x) ] d/q

) two polynomials P and Q cannot agree with multiplicity s in more than d/sq fraction of the points of Fq2

) the previous multiplicity code has distance Locally correcting multiplicity codesMain idea:Restricting a multivariate polynomial along with its derivatives to a line gives a univariate polynomial along with its derivative

As before:Pick random line L through (a,b)Looking at P, PX, PY restricted to L is enough to give the univariate polyP|LEven if there are errorsUnivariate multiplicity decoding!Nielsen, Rosenbloom-Tsfasman

This gives P(a,b) and dP/dL (a,b)

We want P(a,b), PX(a,b), PY(a,b)

Pick another random line LdP/dL and dP/.dL are enough to give PX and PY

Fq2(a,b)LHigher multiplicitiesConsider 2-variable polynomials of degree s(1-)qEvaluate all derivatives upto order s

Rate = s/(s+1) (1-)2This approaches 1 !

Decoding: s random lines through (a,b)Decoding time s q O(k0.5)More variables, many derivativesMore variables, many derivativesLxLocal decodability of multiplicity codes[KSY 11]List-Decoding Multiplicity Codes[K12]List-Decoding Multiplicity CodesCodewordscrTwo theorems on list-decoding multiplicity codesList-Decoding Univariate Multiplicity CodesList-Decoding Univariate Polynomial Codes [Sudan, Guruswami-Sudan]Given r: Fq Fq,find f(X) of degree at most d which is close to r.

Based on Interpolation + Root-finding

Step 1: Interpolation: find Q(X,Y) s.t.Q(x, r(x)) = 0 for each x

Claim: any f(X) which is close to r satisfies Q(X, f(X)) = 0

Step 2: Solving a polynomial equation:Solve Q(X, f(X)) = 0 (as a formal polynomial equation)Find all such f with degree at most d.(can be done by standard algorithms)List-Decoding Univariate Multiplicity CodesList-Decoding Multivariate Multiplicity CodesList-decoding multivariate multiplicity codesOther resultsSummary and QuestionsCodes of rate approaching 1Decodable in O(k) timeList-decodable beyond half the minimum distance in O(k) timeAlternative construction of codes achieving list-decoding capacity

For all we know, there exist codes with:Rate approaching 1Decodable in polylog(k) time

List-decoding upto capacity with constant list-size?

Use multiplicity codes in practice?Already theoretically practical

Further applications/generalizations?