Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Csr2011 june18 14_00_sudan


Published on

  • Be the first to comment

  • Be the first to like this

Csr2011 june18 14_00_sudan

  1. 1. The Method of Multiplicities<br />Madhu Sudan<br />Microsoft New England/MIT<br />Based on joint works with:<br /><ul><li> V. Guruswami ‘98
  2. 2. S. Saraf ‘08
  3. 3. Z. Dvir, S. Kopparty, S. Saraf ‘09</li></ul>June 13-18, 2011<br />Mutliplicities @ CSR<br />TexPoint fonts used in EMF. <br />Read the TexPoint manual before you delete this box.: AAA<br />1<br />
  4. 4. Agenda<br />A technique for combinatorics, via algebra:<br />Polynomial (Interpolation) Method + Multiplicity method<br />List-decoding of Reed-Solomon Codes<br />Bounding size of Kakeya Sets<br />Extractor constructions<br />(won’t cover) Locally decodable codes<br />June 13-18, 2011<br />2<br />Mutliplicities @ CSR<br />
  5. 5. Part I: Decoding Reed-Solomon Codes<br />Reed-Solomon Codes:<br />Commonly used codes to store information (on CDs, DVDs etc.)<br />Message: C0, C1, …, Cdє F (finite field)<br />Encoding: <br />View message as polynomial: M(x) = i=0dCixi<br />Encoding = evaluations: { M(®) }_{ ®є F }<br />Decoding Problem:<br />Given: (x1,y1) … (xn,yn) є F x F; integers t,d; <br />Find: deg. dpoly through t of the n points.<br />June 13-18, 2011<br />3<br />Mutliplicities @ CSR<br />
  6. 6. List-decoding?<br />If #errors (n-t) very large, then several polynomials may agree with t of n points.<br />List-decoding problem: <br />Report all such polynomials.<br />Combinatorial obstacle: <br />There may be too many such polynomials. <br />Hope – can’t happen. <br />To analyze: Focus on polynomials P1,…, PLand set of agreements S1 … SL.<br />Combinatorial question: Can S1, … SLbe large, while n = | [jSj | is small? <br />June 13-18, 2011<br />4<br />Mutliplicities @ CSR<br />
  7. 7. List-decoding of Reed-Solomon codes<br />Given L polynomials P1,…,PLof degree d;and sets S1,…,SL½ F £ F s.t.<br />|Si| = t<br />Si½ {(x,Pi(x)) | x 2 F}<br />How small can n = |S| be, where S = [iSi ?<br />Algebraic analysis from [S. ‘96, GuruswamiS ’98] basis of decoding algorithms.<br />June 13-18, 2011<br />5<br />Mutliplicities @ CSR<br />
  8. 8. List-decoding analysis [S ‘96]<br />Construct Q(x,y) ≠ 0 s.t.<br />Degy(Q) < L<br />Degx(Q) < n/L <br />Q(x,y) = 0 for every (x,y) 2 S = [iSi<br />Can Show: <br />Such a Q exists (interpolation/counting).<br />Implies: t > n/L + dL) (y – Pi(x)) | Q<br />Conclude: n ¸ L¢ (t – dL).<br />(Can be proved combinatorially also;<br /> using inclusion-exclusion)<br />If L > t/(2d), yield n ¸t2/(4d)<br />June 13-18, 2011<br />6<br />Mutliplicities @ CSR<br />
  9. 9. Focus: The Polynomial Method<br />To analyze size of “algebraically nice” set S:<br />Find polynomial Q vanishing on S;<br />(Can prove existence of Q by counting coefficients … degree Q grows with |S|.)<br />Use “algebraic niceness” of S to prove Q vanishes at other places as well.<br />(In our case whenever y = Pi(x) ).<br />Conclude Q zero too often (unless S large).<br />… (abstraction based on [Dvir]’s work)<br />June 13-18, 2011<br />7<br />Mutliplicities @ CSR<br />
  10. 10. Improved L-D. Analysis [G.+S. ‘98]<br />Can we improve on the inclusion-exclusion bound? One that works when n > t2/(4d)?<br />Idea: Try fitting a polynomial Q that passesthrough each point with “multiplicity” 2.<br />Can find with Degy < L, Degx < 3n/L.<br />If 2t > 3n/L + dLthen (y-Pi(x)) | Q.<br />Yields n ¸ (L/3).(2t – dL)<br />If L>t/d, then n ¸t2/(3d).<br />Optimizing Q; letting mult. 1, get n ¸t2/d<br />June 13-18, 2011<br />8<br />Mutliplicities @ CSR<br />
  11. 11. Aside: Is the factor of 2 important?<br />Results in some improvement in [GS] (allowed us to improve list-decoding for codes of high rate) …<br />But crucial to subsequent work <br />[Guruswami-Rudra] construction of rate-optimal codes: Couldn’t afford to lose this factor of 2 (or any constant > 1).<br />June 13-18, 2011<br />9<br />Mutliplicities @ CSR<br />
  12. 12. Focus: The Multiplicity Method<br />To analyze size of “algebraically nice” set S:<br />Find poly Q zero on S (w. high multiplicity);<br />(Can prove existence of Q by counting coefficients … degree Q grows with |S|.)<br />Use “algebraic niceness” of S to prove Q vanishes at other places as well.<br />(In our case whenever y = Pi(x) ).<br />Conclude Q zero too often (unless S large).<br />June 13-18, 2011<br />10<br />Mutliplicities @ CSR<br />
  13. 13. Multiplicity = ?<br />Over reals: Q(x,y) has root of multiplicity m+1 at (a,b) if every partial derivative of order up to m vanishes at 0.<br />Over finite fields? <br />Derivatives don’t work; but “Hasse derivatives” do. What are these? Later…<br />There are {m+n choose n} such derivatives, for n-variate polynomials; <br />Each is a linear function of coefficients of f.<br />June 13-18, 2011<br />11<br />Mutliplicities @ CSR<br />
  14. 14. Part II: Kakeya Sets<br />June 13-18, 2011<br />12<br />Mutliplicities @ CSR<br />
  15. 15. Kakeya Sets<br />K ½Fn is a Kakeya set if it has a line in every direction.<br />I.e., 8 y 2Fn9 x 2Fns.t. {x + t.y | t 2 F} ½ K<br />F is a field (could be Reals, Rationals, Finite).<br />Our Interest:<br />F = Fq(finite field of cardinality q).<br />Lower bounds.<br />Simple/Obvious: qn/2· K ·qn<br />Do better? Mostly open till [Dvir 2008].<br />June 13-18, 2011<br />13<br />Mutliplicities @ CSR<br />
  16. 16. Kakeya Set analysis [Dvir ‘08]<br />Find Q(x1,…,xn) ≠ 0 s.t.<br />Total deg. of Q < q (let deg. = d)<br />Q(x) = 0 for every x 2 K. (exists if |K| < qn/n!)<br />Prove that (homogenous deg. d part of) Q vanishes on y, if there exists a line in direction y that is contained in K.<br />Line L ½ K )Q|L = 0. <br />Highest degree coefficient of Q|L is homogenous part of Q evaluated at y.<br />Conclude: homogenous part of Q = 0. ><.<br />Yields |K| ¸qn/n!.<br />June 13-18, 2011<br />14<br />Mutliplicities @ CSR<br />
  17. 17. Multiplicities in Kakeya [Saraf, S ’08]<br />Fit Q that vanishes often?<br />Good choice: #multiplicity m = n<br />Can find Q ≠ 0 of individual degree < q,that vanishes at each point in K with multiplicity n, provided |K| 4n < qn<br />Q|Lis of degree < qn.<br />But it vanishes with multiplicity n at q points!<br />So it is identically zero ) its highest degree coeff. is zero. ><<br />Conclude: |K| ¸ (q/4)n<br />June 13-18, 2011<br />15<br />Mutliplicities @ CSR<br />
  18. 18. Comparing the bounds<br />Simple: |K| ¸qn/2<br />[Dvir]: |K| ¸qn/n!<br />[SS]: |K| ¸qn/4n<br />[SS] improves Simple even when q (large) constant and n 1 (in particular, allows q < n)<br />[MockenhauptTao, Dvir]: <br />9 K s.t. |K| ·qn/2n-1 + O(qn-1)<br />Can we do even better?<br />June 13-18, 2011<br />16<br />Mutliplicities @ CSR<br />
  19. 19. Part III: Randomness Mergers & Extractors<br />June 13-18, 2011<br />17<br />Mutliplicities @ CSR<br />
  20. 20. Context<br />One of the motivations for Dvir’s work:<br />Build better “randomness extractors”<br />Approach proposed in [Dvir-Shpilka]<br />Following [Dvir] , new “randomness merger” and analysis given by [Dvir-Wigderson]<br />Led to “extractors” matching known constructions, but not improving them …<br />What are Extractors? Mergers? … can we improve them?<br />June 13-18, 2011<br />18<br />Mutliplicities @ CSR<br />
  21. 21. Randomness in Computation<br />Readily available randomness<br />Support industry:<br />F(X)<br />X<br />Alg<br />Random<br />Distribution A<br />Uniform<br />Randomness Processors<br />Prgs, (seeded) extractors, limited independence generators, epsilon-biased generators,<br />Condensers, mergers, <br />Distribution B<br />June 13-18, 2011<br />19<br />Mutliplicities @ CSR<br />
  22. 22. Randomness Extractors and Mergers<br />Extractors: <br />Dirty randomness  Pure randomness<br />Mergers: General primitive useful in the context of manipulating randomness.<br />k random variables  1 random variable<br />June 13-18, 2011<br />20<br />Mutliplicities @ CSR<br />(Uniform, independent … nearly)<br />(Biased, correlated)<br />+ small pure seed<br />(One of them uniform)<br />(high entropy)<br />(Don’t know which, others <br />potentially correlated)<br />+ small pure seed<br />
  23. 23. Merger Analysis Problem <br />Merger(X1,…,Xk; s) = f(s),<br />where X1, …, Xk2Fqn; s 2Fq<br /> andfis deg. k-1function mapping F Fn<br />s.t.f(i) = Xi.<br />(fis the curve through X1,…,Xk)<br />Question: For what choices of q, n, k isMerger’soutput close to uniform?<br />Arises from [DvirShpilka’05, DvirWigderson’08].<br />“Statistical high-deg. version” of Kakeya problem.<br />June 13-18, 2011<br />21<br />Mutliplicities @ CSR<br />
  24. 24. Concerns from Merger Analysis<br />[DW] Analysis: Worked only if q > n.<br />So seed length = log2 q > log2 n<br />Not good enough for setting where k = O(1), and n 1. <br />(Would like seed length to be O(log k)).<br />Multiplicity technique:<br /> seems bottlenecked at mult= n.<br />June 13-18, 2011<br />22<br />Mutliplicities @ CSR<br />
  25. 25. General obstacle in multiplicity method<br />Can’t force polynomial Q to vanish with too high a multiplicity. Gives no benefit.<br />E.g. Kakeya problem: Why stop at mult= n?<br />Most we can hope from Q is that it vanishes on all of qn; <br />Once this happens, Q = 0, if its degree is < q in each variable. <br />So Q|Lis of degree at most qn, so multn suffices. Using larger multiplicity can’t help!<br />Or can it?<br />June 13-18, 2011<br />23<br />Mutliplicities @ CSR<br />
  26. 26. Extended method of multiplicities<br />(In Kakeya context):<br />Perhaps vanishing of Q with high multiplicity at each point shows higher degree polynomials (deg > q in each variable) are identically zero?<br />(Needed: Condition on multiplicity of zeroes of multivariate polynomials .)<br />Perhaps Q can be shown to vanish with high multiplicity at each point in Fn.<br />(Technical question: How?)<br />June 13-18, 2011<br />24<br />Mutliplicities @ CSR<br />
  27. 27. Vanishing of high-degree polynomials<br />Mult(Q,a) = multiplicity of zeroes of Qata.<br />I(Q,a) = 1 if mult(Q,a) > 0and0 o.w. <br /> =min{1, mult(Q,a)}<br />Schwartz-Zippel: for any S ½ F <br /> I(Q,a) · d. |S|n-1 where sum is overa 2Sn<br />Can we replace Iwithmult above? Would strengthen S-Z, and be useful in our case.<br />[DKSS ‘09]: Yes … (simple inductive proof <br />… that I can never remember)<br />June 13-18, 2011<br />25<br />Mutliplicities @ CSR<br />
  28. 28. Multiplicities?<br />Q(X1,…,Xn) has zero of mult. m at a = (a1,…,an)if all (Hasse) derivatives of order < m vanish.<br />Hasse derivative = ?<br />Formally defined in terms of coefficients of Q, various multinomial coefficients and a.<br />But really …<br />The i = (i1,…, in)thderivative is the coefficient of z1i1…znin in Q(z + a).<br />Even better … coeff. of zi in Q(z+x) <br />(defines ith derivative Qi as a function of x; can evaluate at x = a).<br />June 13-18, 2011<br />26<br />Mutliplicities @ CSR<br />
  29. 29. Key Properties<br />Each derivative is a linear function of coefficients of Q. [Used in [GS’98], [SS’09] .] (Q+R)i = Qi + Ri<br />Q has zero of multm ata, and S is a curve that passes through a, then Q|Shas zero of multmat a. [Used for lines in prior work.]<br />Qiis a polynomial of degree deg(Q) - jii (not used in prior works)<br />(Qi)j ≠ Qi+j, but Qi+j(a) = 0 ) (Qi)j(a) = 0<br />Qvanishes with multmata<br />)Qivanishes with multm - j iiat a.<br />June 13-18, 2011<br />27<br />Mutliplicities @ CSR<br />
  30. 30. Propagating multiplicities (in Kakeya)<br />FindQthat vanishes with multmonK<br />For everyiof order m/2, Q_ivanishes with multm/2on K.<br />Conclude: Q, as well as all derivatives of Q of order m/2 vanish on Fn<br />) Qvanishes with multiplicity m/2 onFn<br />Next Question: When is a polynomial (of deg >qn, or even qn) that vanishes with high multiplicity onqnidentically zero?<br />June 13-18, 2011<br />28<br />Mutliplicities @ CSR<br />
  31. 31. Back to Kakeya<br />Find Q of degree d vanishing on K with multm. (can do if (m/n)n |K| < (d/n)n,dn > mn |K| )<br />Conclude Q vanishes on Fn with mult. m/2.<br />Apply Extended-Schwartz-Zippel to conclude<br /> (m/2) qn < d qn-1<br />, (m/2) q < d<br />, (m/2)nqn < dn = mn |K| <br />Conclude: |K| ¸ (q/2)n<br />Tight to within 2+o(1) factor!<br />June 13-18, 2011<br />29<br />Mutliplicities @ CSR<br />
  32. 32. Consequences for Mergers<br />Can analyze [DW] merger when q > k very small, n growing; <br />Analysis similar, more calculations.<br />Yields: Seed length log q (independent of n).<br />By combining it with every other ingredient in extractor construction: <br />Extract all but vanishing entropy (k – o(k) bits of randomness from (n,k) sources) using O(log n) seed (for the first time).<br />June 13-18, 2011<br />30<br />Mutliplicities @ CSR<br />
  33. 33. Conclusions<br />Combinatorics does have many “techniques” …<br />Polynomial method + Multiplicity method adds to the body<br />Supporting evidence:<br />List decoding<br />Kakeya sets<br />Extractors/Mergers<br />Others …<br />June 13-18, 2011<br />31<br />Mutliplicities @ CSR<br />
  34. 34. Other applications<br />[Woodruff-Yekhanin ‘05]: An elegant construction of novel “LDCs (locally decodable codes)”. [Outclassed by more recent Yekhanin/Efremenko constructions.]<br />[Kopparty-Lev-Saraf-S. ‘09]: Higher dimensional Kakeya problems.<br />[Kopparty-Saraf-Yekhanin‘2011]: Locally decodable codes with Rate  1.<br />June 13-18, 2011<br />32<br />Mutliplicities @ CSR<br />
  35. 35. Conclusions<br />New (?) technique in combinatorics …<br />Polynomial method + Multiplicity method<br />Supporting evidence:<br />List decoding<br />Kakeya sets<br />Extractors/Mergers<br />Locally decodable codes …<br />More?<br />June 13-18, 2011<br />33<br />Mutliplicities @ CSR<br />
  36. 36. Thank You<br />June 13-18, 2011<br />Mutliplicities @ CSR<br />34<br />
  37. 37. Mutliplicity = ?<br />Q vanishes with multiplicity 2 at (a,b):<br />Q(a,b) = 0; del Q/del x(a,b) = 0; del Q/del y(a,b) = 0.<br />del Q/del x? <br />Hasse derivative;<br />Linear function of coefficients of Q;<br />Q zero with multiplicity m at (a,b) and C=(x(t),y(t)) is curve passing through (a,b), then Q|C has zero of multiplity m at (a,b).<br />June 13-18, 2011<br />35<br />Mutliplicities @ CSR<br />
  38. 38. Concerns from Merger Analysis<br />Recall Merger(X1,…,Xk; s) = f(s),<br />whereX1, …, Xk2Fqn; s 2Fq<br />and f is deg. k-1 curves.t. f(i) = Xi.<br />[DW08] Say X1random; Let Kbe such that ²fraction of choices of X1,…,Xk lead to “bad” curves such that²fraction of s’s such that Merger outputs value in Kwith high probability.<br />Build low-deg. poly Qvanishing on K; Prove for “bad” curves,Q vanishes on curve; and so Q vanishes on ²-fraction of X1’s (and so ²-fraction of domain). <br />Apply Schwartz-Zippel. ><<br />June 13-18, 2011<br />36<br />Mutliplicities @ CSR<br />
  39. 39. What is common?<br />Given a set in Fqn with nice algebraic properties, want to understand its size.<br />Kakeya Problem: <br />The Kakeya Set.<br />Merger Problem: <br />Any set T ½Fnthat contains ²-fraction of points on ²-fraction of merger curves.<br />If T small, then output is non-uniform; else output is uniform.<br />List-decoding problem: <br />The union of the sets.<br />June 13-18, 2011<br />37<br />Mutliplicities @ CSR<br />
  40. 40. Randomness Extractors and Mergers<br />Extractors: <br />Dirty randomness  Pure randomness<br />Mergers: General primitive useful in the context of manipulating randomness.<br />Given: k (dependent) random variables <br /> X1 … Xk, such that one is uniform.<br />Add: small seed s (Additional randomness)<br />Output: a uniform random variable Y.<br />June 13-18, 2011<br />38<br />Mutliplicities @ CSR<br />(Uniform, independent … nearly)<br />(Biased, correlated)<br />+ small pure seed<br />