38
Lecture 11: Fourier Basics for Boolean functions. Linearity testing. Lecturer: Ronitt Rubinfeld Spring 2014 6.842: Randomness and Computation

Lecture 11: Fourier Basics for Boolean functions

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Lecture 11: Fourier Basics for Boolean functions

Lecture 11: Fourier Basics for Boolean functions.Linearity testing.

Lecturer: Ronitt RubinfeldSpring 2014

6.842: Randomness and Computation

Page 2: Lecture 11: Fourier Basics for Boolean functions

Why all the fuss about Boolean functions?

§ Truth table of a function (complexity theory)

§ Concept to be learned (machine learning)

§ Subset of the Boolean cube (coding theory, combinatorics,…)

§ Etc.

Page 3: Lecture 11: Fourier Basics for Boolean functions

Why Fourier/Harmonic Analysis?

§ Study “structural properties” of Boolean functions§ Low complexity

§ Depends on few inputs (dictator, junta)

§ “fair” (no variable has too much influence)

§ Homomorphism

§ Spread out/concentrated

Page 4: Lecture 11: Fourier Basics for Boolean functions

The Boolean function

§ A “new”

repres

entation!

Page 5: Lecture 11: Fourier Basics for Boolean functions

§

The slick (notational) trick:

Page 6: Lecture 11: Fourier Basics for Boolean functions

The set of functions and inner product§

Page 7: Lecture 11: Fourier Basics for Boolean functions

Which basis?§

Page 8: Lecture 11: Fourier Basics for Boolean functions

A very useful basis:§

Page 9: Lecture 11: Fourier Basics for Boolean functions

A useful property:

§

Page 10: Lecture 11: Fourier Basics for Boolean functions

Inner product

§

correlatio

n –

not same a

s in

probability theory

Page 11: Lecture 11: Fourier Basics for Boolean functions

Orthogonal:

§

Page 12: Lecture 11: Fourier Basics for Boolean functions

So we have an orthonormal basis!

§

Page 13: Lecture 11: Fourier Basics for Boolean functions

Some examples:

§

Page 14: Lecture 11: Fourier Basics for Boolean functions

Fourier coefficients of parity functions:

§

Page 15: Lecture 11: Fourier Basics for Boolean functions

Agreement with parity function vs. max Fourier coefficient

§

Page 16: Lecture 11: Fourier Basics for Boolean functions

Distance between parity functions

§

Page 17: Lecture 11: Fourier Basics for Boolean functions

Plancherel’s Theorem

§

Page 18: Lecture 11: Fourier Basics for Boolean functions

Parseval’s Theorem

§

Page 19: Lecture 11: Fourier Basics for Boolean functions

More useful facts:

§

Page 20: Lecture 11: Fourier Basics for Boolean functions

Linearity (homomorphism) testing

∀ x,y f(x) + f(y) = f(x+y)

Page 21: Lecture 11: Fourier Basics for Boolean functions

Linearity Property§ Want to quickly test if a function over a group is

linear , that is ∀ x,y f(x) + f(y) = f(x+y)

§ Useful for§ Checking correctness of programs computing matrix,

algebraic, trigonometric functions

§ Probabilistically Checkable Proofs Is the proof of the right format?

§ In these cases, enough for f to be close to homomorphism

Page 22: Lecture 11: Fourier Basics for Boolean functions

What do we mean by ``close’’?

Definition: f, over domain of size N, is ε-close to linear if can change at most εN

values to turn it into one.Otherwise, ε-far.

Page 23: Lecture 11: Fourier Basics for Boolean functions

What do we mean by ``quick’’?

§ query complexity measured in terms of domain size N

§ Our goal (if possible): § constant independent of N?

Page 24: Lecture 11: Fourier Basics for Boolean functions

Linearity Testing

§ If f is linear (i.e., ∀ x,y f(x) + f(y) = f(x+y) ) then test should PASS with probability >2/3

§ If f is ε-far from linear then test should FAIL with probability >2/3

§ Note: If f not linear, but ε-close, then either output is ok

Page 25: Lecture 11: Fourier Basics for Boolean functions

§

Page 26: Lecture 11: Fourier Basics for Boolean functions

§

Page 27: Lecture 11: Fourier Basics for Boolean functions

Proposed Tester:

§

Page 28: Lecture 11: Fourier Basics for Boolean functions

Characterizing “close” to linear

§

Page 29: Lecture 11: Fourier Basics for Boolean functions

Nontriviality [Coppersmith]:

§ f: Z3kà Z3k-1

§ f(3h+d)=h, for h < 3k , d ∈{-1,0,1}

§ f satisfies f(x)+f(y) ≠ f(x+y) for only 2/9 of choices of x,y (i.e. δf = 2/9)§ f is 2/3-far from a linear!

Page 30: Lecture 11: Fourier Basics for Boolean functions

Our goal:

§

Page 31: Lecture 11: Fourier Basics for Boolean functions

Lemma à Theorem§

Page 32: Lecture 11: Fourier Basics for Boolean functions

Before the main lemma:

§

Page 33: Lecture 11: Fourier Basics for Boolean functions

§

Focus here

What is this?

Page 34: Lecture 11: Fourier Basics for Boolean functions

A final calculation:§

Page 35: Lecture 11: Fourier Basics for Boolean functions

§

Focus here

0 otherwise

Page 36: Lecture 11: Fourier Basics for Boolean functions

Linearity tests over other domains

§ Still constant, even for general nonabelian groups

§ Slightly weaker relationship between parameters

Page 37: Lecture 11: Fourier Basics for Boolean functions

Self-correction

§ Given program P computing linear f that is correct on at least 7/8 of the inputs (BUT YOU DON’T KNOW WHICH ONES!)

§ Can you correctly compute f on each input?§ To compute f(x), can’t just call P on x…

Page 38: Lecture 11: Fourier Basics for Boolean functions

Self-corrector:

§