adaptivity helps for testing juntas
play

Adaptivity helps for testing juntas Rocco Servedio, Li-Yang Tan, - PowerPoint PPT Presentation

Adaptivity helps for testing juntas Rocco Servedio, Li-Yang Tan, John Wright Columbia TTIC CMU Adaptivity helps for testing juntas Rocco Servedio, Li-Yang Tan, John Wright Columbia TTIC CMU (work done while I was visiting Columbia)


  1. Main result Any nonadaptive algorithm requires k log( k ) q ≥ ɛ c log(log( k )/ ɛ c ) queries (for any 0 < c < 1).

  2. Main result Any nonadaptive algorithm requires k log( k ) q ≥ ɛ c log(log( k )/ ɛ c ) queries (for any 0 < c < 1). Set ɛ = 1/log( k ).

  3. Main result Any nonadaptive algorithm requires k log( k ) q ≥ ɛ c log(log( k )/ ɛ c ) queries (for any 0 < c < 1). Set ɛ = 1/log( k ). Adaptive UB = O( k log( k ) + k / ɛ )

  4. Main result Any nonadaptive algorithm requires k log( k ) q ≥ ɛ c log(log( k )/ ɛ c ) queries (for any 0 < c < 1). Set ɛ = 1/log( k ). Adaptive UB = O( k log( k ) + k / ɛ ) = O( k log( k ))

  5. Main result Any nonadaptive algorithm requires k log( k ) q ≥ ɛ c log(log( k )/ ɛ c ) queries (for any 0 < c < 1). Set ɛ = 1/log( k ). Adaptive UB = O( k log( k ) + k / ɛ ) = O( k log( k )) Our nonadapt LB = k log( k ) 1+c /log(log( k ))

  6. Our techniques ● Basic ideas come from [CG04] ’s � ( k ) adaptive lower bound

  7. Our techniques ● Basic ideas come from [CG04] ’s � ( k ) adaptive lower bound ● [Bla08] ’s � ( k /( ɛ log( k / ɛ )) nonadaptive lower bound based on [CG04] ’s lower bound

  8. Our techniques ● Basic ideas come from [CG04] ’s � ( k ) adaptive lower bound ● [Bla08] ’s � ( k /( ɛ log( k / ɛ )) nonadaptive lower bound based on [CG04] ’s lower bound ● We give a new analysis of [Bla08] ’s LB .

  9. Our techniques ● Basic ideas come from [CG04] ’s � ( k ) adaptive lower bound ● [Bla08] ’s � ( k /( ɛ log( k / ɛ )) nonadaptive lower bound based on [CG04] ’s lower bound ● We give a new analysis of [Bla08] ’s LB .

  10. [CG04] considers two distributions on n = ( k+1 )-variable functions:

  11. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar.

  12. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i .

  13. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . f yes (x 1 ,..., 0 ,…,x k+1 ) = f yes (x 1 ,..., 1 ,…,x k+1 ) i i

  14. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . f yes (x 1 ,..., 0 ,…,x k+1 ) = f yes (x 1 ,..., 1 ,…,x k+1 ) = random { 0,1 } i i

  15. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . f yes (x 1 ,..., 0 ,…,x k+1 ) = f yes (x 1 ,..., 1 ,…,x k+1 ) = random { 0,1 } i i (for all x 1 ,...,x k+1 )

  16. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . f yes (x 1 ,..., 0 ,…,x k+1 ) = f yes (x 1 ,..., 1 ,…,x k+1 ) = random { 0,1 } i i (for all x 1 ,...,x k+1 )

  17. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i .

  18. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . D no : ● Set f no :{0,1} k+1 → {0,1} uar.

  19. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . (a k -junta) D no : ● Set f no :{0,1} k+1 → {0,1} uar.

  20. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . (a k -junta) ● Set f no :{0,1} k+1 → {0,1} uar. D no : ( usually far from a k -junta)

  21. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . (a k -junta) ● Set f no :{0,1} k+1 → {0,1} uar. D no : ( usually far from a k -junta)

  22. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . D no : ● Set f no :{0,1} k+1 → {0,1} uar.

  23. [CG04] considers two distributions on n = ( k+1 )-variable functions: D yes : ● Pick i ~ { 1 ,..., k+1 } uar. ● Set f yes :{0,1} k+1 → {0,1} uar subject to not depending on coordinate i . D no : ● Set f no :{0,1} k+1 → {0,1} uar. [CG04 THM] : Need � ( k ) queries to distinguish these distributions

  24. Given f, how to tell if from D yes or D no ?

  25. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords.

  26. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i :

  27. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar.

  28. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i .

  29. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i . Differ only on coord i .

  30. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i . Differ only on coord i . Def: x and x ⊕ i form an i-twin .

  31. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i . Differ only on coord i . Def: x and x ⊕ i form an i-twin .

  32. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i .

  33. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i . ● If f( x ) ≠ f( x ⊕ i ), output relevant .

  34. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i . ● If f( x ) ≠ f( x ⊕ i ), output relevant . ● Repeat 10 log( k ) times.

  35. Given f, how to tell if from D yes or D no ? Idea: See if it has any irrelevant coords. For coord i : ● Pick x uar. ● Query f on x and x ⊕ i . ● If f( x ) ≠ f( x ⊕ i ), output relevant . ● Repeat 10 log( k ) times. ● Output irrelevant .

  36. If i is relevant :

  37. If i is relevant : f( x ) f( x ⊕ i )

  38. If i is relevant : f( x ) f( x ⊕ i ) uar { 0 , 1 }

  39. If i is relevant : f( x ) f( x ⊕ i ) uar { 0 , 1 } uar { 0 , 1 }

  40. If i is relevant : f( x ) f( x ⊕ i ) uar { 0 , 1 } uar { 0 , 1 }

Recommend


More recommend