129
Fourier analysis of Boolean functions: Some beautiful examples Ronald de Wolf Centrum voor Wiskunde en Informatica Amsterdam Fourier analysis of Boolean functions: Some beautiful examples – p.1/13

Fourier analysis of Boolean functions: Some beautiful examples

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis of Boolean functions:Some beautiful examples

Ronald de Wolf

Centrum voor Wiskunde en Informatica

Amsterdam

Fourier analysis of Boolean functions: Some beautiful examples – p.1/13

Page 2: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 3: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 4: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 5: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science:

Signal processing

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 6: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science:

Signal processing

Data compression

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 7: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science:

Signal processing

Data compression

Multiplying two polynomials

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 8: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science:

Signal processing

Data compression

Multiplying two polynomials

These examples use Fourier analysis over cyclic groups

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 9: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science:

Signal processing

Data compression

Multiplying two polynomials

These examples use Fourier analysis over cyclic groups

We will focus on Fourier analysis over the Boolean cube

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 10: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis

Many applications in math, physics, engineering,

. . . and in computer science:

Signal processing

Data compression

Multiplying two polynomials

These examples use Fourier analysis over cyclic groups

We will focus on Fourier analysis over the Boolean cube= 0, 1n, set of all n-bit strings

Fourier analysis of Boolean functions: Some beautiful examples – p.2/13

Page 11: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 12: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 13: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 14: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 15: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 16: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 17: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

PCPs, NP-hardness of approximation

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 18: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

PCPs, NP-hardness of approximation

Cryptography

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 19: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

PCPs, NP-hardness of approximation

Cryptography

Lower bounds on communication complexity

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 20: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

PCPs, NP-hardness of approximation

Cryptography

Lower bounds on communication complexity

Threshold phenomena in random graphs

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 21: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

PCPs, NP-hardness of approximation

Cryptography

Lower bounds on communication complexity

Threshold phenomena in random graphs

Quantum computing

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 22: Fourier analysis of Boolean functions: Some beautiful examples

This has been very useful in CS

Fourier coefficients measure correlations with parities

Analysis of error-correcting codes

Learning a function from examples

The influence of variables on a function

Sensitivity of a function to noise on the inputs

PCPs, NP-hardness of approximation

Cryptography

Lower bounds on communication complexity

Threshold phenomena in random graphs

Quantum computing. . .

Fourier analysis of Boolean functions: Some beautiful examples – p.3/13

Page 23: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 24: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 25: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R, with

normalized inner product 〈f, g〉 =1

2n

x∈0,1n

f(x)g(x)

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 26: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R, with

normalized inner product 〈f, g〉 =1

2n

x∈0,1n

f(x)g(x)

The parity-functions χs(x) = (−1)x·s =∏

i:si=1(−1)xi

form an orthonormal basis of this space

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 27: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R, with

normalized inner product 〈f, g〉 =1

2n

x∈0,1n

f(x)g(x)

The parity-functions χs(x) = (−1)x·s =∏

i:si=1(−1)xi

form an orthonormal basis of this space

Hence we can write f =∑

s∈0,1n

f(s)χs

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 28: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R, with

normalized inner product 〈f, g〉 =1

2n

x∈0,1n

f(x)g(x)

The parity-functions χs(x) = (−1)x·s =∏

i:si=1(−1)xi

form an orthonormal basis of this space

Hence we can write f =∑

s∈0,1n

f(s)χs

with f(s) = 〈f, χs〉 =1

2n

x∈0,1n

f(x)χs(x)

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 29: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R, with

normalized inner product 〈f, g〉 =1

2n

x∈0,1n

f(x)g(x)

The parity-functions χs(x) = (−1)x·s =∏

i:si=1(−1)xi

form an orthonormal basis of this space

Hence we can write f =∑

s∈0,1n

f(s)χs

with f(s) = 〈f, χs〉 =1

2n

x∈0,1n

f(x)χs(x)

Map f 7→ f is proportional to unitary (length-preserving)

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 30: Fourier analysis of Boolean functions: Some beautiful examples

Fourier analysis over the Boolean cube

Consider the space of functions f : 0, 1n → R, with

normalized inner product 〈f, g〉 =1

2n

x∈0,1n

f(x)g(x)

The parity-functions χs(x) = (−1)x·s =∏

i:si=1(−1)xi

form an orthonormal basis of this space

Hence we can write f =∑

s∈0,1n

f(s)χs

with f(s) = 〈f, χs〉 =1

2n

x∈0,1n

f(x)χs(x)

Map f 7→ f is proportional to unitary (length-preserving)

⇒1

2n

x

f(x)2 =∑

s

f(s)2 (Parseval’s identity)

Fourier analysis of Boolean functions: Some beautiful examples – p.4/13

Page 31: Fourier analysis of Boolean functions: Some beautiful examples

Examples

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 32: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 33: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 34: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00)

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 35: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x)

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 36: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1)

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 37: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 38: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 ,

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 39: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 ,

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 40: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 41: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)]

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 42: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 43: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 44: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 45: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 46: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

PARITY on n bits

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 47: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

PARITY on n bits, with TRUE= −1, FALSE= +1:

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 48: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

PARITY on n bits, with TRUE= −1, FALSE= +1:

f(x)

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 49: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

PARITY on n bits, with TRUE= −1, FALSE= +1:

f(x) = χ1n(x) = (−1)|x|

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 50: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

PARITY on n bits, with TRUE= −1, FALSE= +1:

f(x) = χ1n(x) = (−1)|x|, so f(1n) = 1

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 51: Fourier analysis of Boolean functions: Some beautiful examples

Examples

OR on 2 bits:

f(x1, x2) = OR(x1, x2) ∈ 0, 1

f(00) = 14

∑x∈0,1n f(x)χ00(x) = 1

4(0 + 1 + 1 + 1) = 34

f(01) = −14 , f(10) = −1

4 , f(11) = −14

Note: f(00) = Expx[f(x)], and f(00) =∑

s f(s)

Parseval:1

4

x

f(x)2 =3

4=

s

f(s)2

PARITY on n bits, with TRUE= −1, FALSE= +1:

f(x) = χ1n(x) = (−1)|x|, so f(1n) = 1

all other f(s) are 0

Fourier analysis of Boolean functions: Some beautiful examples – p.5/13

Page 52: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 53: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 54: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 55: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 56: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 57: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 58: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2 =1

2n

x∈0,1n

f(x)2 = 1 (Parseval).

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 59: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2 =1

2n

x∈0,1n

f(x)2 = 1 (Parseval).

This is a sum over ≤ nd terms.

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 60: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2 =1

2n

x∈0,1n

f(x)2 = 1 (Parseval).

This is a sum over ≤ nd terms. Hence ∃s with

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 61: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2 =1

2n

x∈0,1n

f(x)2 = 1 (Parseval).

This is a sum over ≤ nd terms. Hence ∃s with1

nd≤ f(s)2

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 62: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2 =1

2n

x∈0,1n

f(x)2 = 1 (Parseval).

This is a sum over ≤ nd terms. Hence ∃s with1

nd≤ f(s)2 = |

1

2n

x∈0,1n

f(x)χs(x)|2

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 63: Fourier analysis of Boolean functions: Some beautiful examples

(1) Approximating functions with parities

Suppose f : 0, 1n → ±1 has small Fourier degree d:

f =∑

s:|s|≤d

f(s)χs

Then there exists a parity-function on at most d bits thathas non-trivial correlation with f

Why?∑

s:|s|≤d

f(s)2 =1

2n

x∈0,1n

f(x)2 = 1 (Parseval).

This is a sum over ≤ nd terms. Hence ∃s with1

nd≤ f(s)2 = |

1

2n

x∈0,1n

f(x)χs(x)|2

So χs (or its negation) has non-trivial correlation with f

Fourier analysis of Boolean functions: Some beautiful examples – p.6/13

Page 64: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 65: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 66: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x)

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 67: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 68: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

We can approximate this given uniformly randomexamples (x1, f(x1)), . . . , (xm, f(xm)):

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 69: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

We can approximate this given uniformly randomexamples (x1, f(x1)), . . . , (xm, f(xm)):1

m

m∑

i=1

f(xi)χs(xi)

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 70: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

We can approximate this given uniformly randomexamples (x1, f(x1)), . . . , (xm, f(xm)):1

m

m∑

i=1

f(xi)χs(xi) → f(s)

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 71: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

We can approximate this given uniformly randomexamples (x1, f(x1)), . . . , (xm, f(xm)):1

m

m∑

i=1

f(xi)χs(xi) → f(s)

Converges fast if |f(s)| is not too small (Chernoff)

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 72: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

We can approximate this given uniformly randomexamples (x1, f(x1)), . . . , (xm, f(xm)):1

m

m∑

i=1

f(xi)χs(xi) → f(s)

Converges fast if |f(s)| is not too small (Chernoff)

Hence we can quickly learn (approximate) an unknownfunction f that is dominated by a few large coefficients

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 73: Fourier analysis of Boolean functions: Some beautiful examples

(2) Learning from uniform examples

A Fourier coefficient is just a uniform expectation:

f(s) =1

2n

x∈0,1n

f(x)χs(x) = Expx[f(x)χs(x)]

We can approximate this given uniformly randomexamples (x1, f(x1)), . . . , (xm, f(xm)):1

m

m∑

i=1

f(xi)χs(xi) → f(s)

Converges fast if |f(s)| is not too small (Chernoff)

Hence we can quickly learn (approximate) an unknownfunction f that is dominated by a few large coefficients(example from LMN 89: AC0-circuits)

Fourier analysis of Boolean functions: Some beautiful examples – p.7/13

Page 74: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 75: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 76: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 77: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 78: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n):

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 79: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n): E(x)y = x · y mod 2

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 80: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n): E(x)y = x · y mod 2

All codewords are at distance m/2

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 81: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n): E(x)y = x · y mod 2

All codewords are at distance m/2 ⇒ given w withe < m/4 errors, there is a unique x with d(w,E(x)) ≤ e

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 82: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n): E(x)y = x · y mod 2

All codewords are at distance m/2 ⇒ given w withe < m/4 errors, there is a unique x with d(w,E(x)) ≤ e

Problem: if e ≥ m/4 errors, then there may be manydifferent x with d(w,E(x)) ≤ e

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 83: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n): E(x)y = x · y mod 2

All codewords are at distance m/2 ⇒ given w withe < m/4 errors, there is a unique x with d(w,E(x)) ≤ e

Problem: if e ≥ m/4 errors, then there may be manydifferent x with d(w,E(x)) ≤ e

Example: w = 03m/41m/4 could’ve come from codewordsE(0n) = 0m or E(10n−1) = 0m/21m/2

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 84: Fourier analysis of Boolean functions: Some beautiful examples

(3) List-decoding of Hadamard code

Error-correcting code: E : 0, 1n → 0, 1m

If all codewords have distance d(E(x), E(y)) ≥ 2e + 1,then we can uniquely recover x from corruptedcodeword w ∈ 0, 1m with e errors (d(w,E(x)) = e)

Hadamard code (m = 2n): E(x)y = x · y mod 2

All codewords are at distance m/2 ⇒ given w withe < m/4 errors, there is a unique x with d(w,E(x)) ≤ e

Problem: if e ≥ m/4 errors, then there may be manydifferent x with d(w,E(x)) ≤ e

Example: w = 03m/41m/4 could’ve come from codewordsE(0n) = 0m or E(10n−1) = 0m/21m/2

List-decoding: output the whole list (hopefully small)

Fourier analysis of Boolean functions: Some beautiful examples – p.8/13

Page 85: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 86: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 87: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 88: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why?

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 89: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 90: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 91: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

2. If d(w,E(s)) ≤ (1/2 − ε)m, then w(s) ≥ 2ε

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 92: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

2. If d(w,E(s)) ≤ (1/2 − ε)m, then w(s) ≥ 2ε

3.∑

s w(s)2 = 1 (by Parseval)

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 93: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

2. If d(w,E(s)) ≤ (1/2 − ε)m, then w(s) ≥ 2ε

3.∑

s w(s)2 = 1 (by Parseval),hence at most 1

4ε2 different s satisfy w(s) ≥ 2ε

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 94: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

2. If d(w,E(s)) ≤ (1/2 − ε)m, then w(s) ≥ 2ε

3.∑

s w(s)2 = 1 (by Parseval),hence at most 1

4ε2 different s satisfy w(s) ≥ 2ε

Goldreich and Levin show how to find this list efficiently

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 95: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

2. If d(w,E(s)) ≤ (1/2 − ε)m, then w(s) ≥ 2ε

3.∑

s w(s)2 = 1 (by Parseval),hence at most 1

4ε2 different s satisfy w(s) ≥ 2ε

Goldreich and Levin show how to find this list efficiently

There are codes with much better rate that are stillefficiently list-decodable

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 96: Fourier analysis of Boolean functions: Some beautiful examples

List-decoding of Hadamard code (cntd)

List-decoding: given corrupted codeword w ∈ 0, 1m

and error bound e, output list x : d(w,E(x)) ≤ e

For Hadamard code: if e ≤ (1/2 − ε)m,then this list has only O(1/ε2) elements!

Why? Fourier analysis!1. View w as function w : 0, 1n → ±1, and E(s) = χs

2. If d(w,E(s)) ≤ (1/2 − ε)m, then w(s) ≥ 2ε

3.∑

s w(s)2 = 1 (by Parseval),hence at most 1

4ε2 different s satisfy w(s) ≥ 2ε

Goldreich and Levin show how to find this list efficiently

There are codes with much better rate that are stillefficiently list-decodable (e.g. Reed-Solomon)

Fourier analysis of Boolean functions: Some beautiful examples – p.9/13

Page 97: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 98: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Consider a Boolean function f : 0, 1n → 0, 1

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 99: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Consider a Boolean function f : 0, 1n → 0, 1

The influence of variable i is the probability that xi

determines the function value

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 100: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Consider a Boolean function f : 0, 1n → 0, 1

The influence of variable i is the probability that xi

determines the function value:

Inff (i) = Prx∈0,1n

[f(x) 6= f(x ⊕ ei)]

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 101: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Consider a Boolean function f : 0, 1n → 0, 1

The influence of variable i is the probability that xi

determines the function value:

Inff (i) = Prx∈0,1n

[f(x) 6= f(x ⊕ ei)]

For things like voting and distributed coin-flipping:would like to find a balanced f where each Inff (i) ≈ 1/n

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 102: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Consider a Boolean function f : 0, 1n → 0, 1

The influence of variable i is the probability that xi

determines the function value:

Inff (i) = Prx∈0,1n

[f(x) 6= f(x ⊕ ei)]

For things like voting and distributed coin-flipping:would like to find a balanced f where each Inff (i) ≈ 1/n

KKL 88: if f is balanced, thenthere always is an i with Inff (i) ≥ log(n)/n

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 103: Fourier analysis of Boolean functions: Some beautiful examples

(4) Influence of variables

Consider a Boolean function f : 0, 1n → 0, 1

The influence of variable i is the probability that xi

determines the function value:

Inff (i) = Prx∈0,1n

[f(x) 6= f(x ⊕ ei)]

For things like voting and distributed coin-flipping:would like to find a balanced f where each Inff (i) ≈ 1/n

KKL 88: if f is balanced, thenthere always is an i with Inff (i) ≥ log(n)/n

This implies there is a set of O(n/ log(n)) variables thatcontrols f with high probability

Fourier analysis of Boolean functions: Some beautiful examples – p.10/13

Page 104: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 105: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 106: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 107: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 108: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 109: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 110: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0]

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 111: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ]

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 112: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 113: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 114: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 115: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 116: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

= 4∑

s |s|f(s)2

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 117: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

= 4∑

s |s|f(s)2 ≥ Ω(log n)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 118: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

= 4∑

s |s|f(s)2 ≥ Ω(log n) ⇒ maxi Inff (i) ≥ Ω(log(n)/n)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 119: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

= 4∑

s |s|f(s)2 ≥ Ω(log n) ⇒ maxi Inff (i) ≥ Ω(log(n)/n)

If L < 1/3, then use KKL inequality (special case ofBonami-Beckner):

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 120: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

= 4∑

s |s|f(s)2 ≥ Ω(log n) ⇒ maxi Inff (i) ≥ Ω(log(n)/n)

If L < 1/3, then use KKL inequality (special case ofBonami-Beckner): ∀g : 0, 1n → −1, 0,+1, δ ∈ [0, 1]

s∈0,1n

δ|s|g(s)2 ≤ Pr[g 6= 0]2/(1+δ)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 121: Fourier analysis of Boolean functions: Some beautiful examples

The KKL proof

Define fi(x) = f(x) − f(x ⊕ ei) ∈ −1, 0,+1

Then fi(s) = 2f(s) if si = 1 , and fi(s) = 0 if si = 0

Inff (i) = Pr[fi 6= 0] = Exp[f2i ] =

s

fi(s)2 = 4

s:si=1

f(s)2

If L =∑

s:|s|>log n f(s)2 ≥ 1/3, then∑n

i=1 Inff (i)

= 4∑

s |s|f(s)2 ≥ Ω(log n) ⇒ maxi Inff (i) ≥ Ω(log(n)/n)

If L < 1/3, then use KKL inequality (special case ofBonami-Beckner): ∀g : 0, 1n → −1, 0,+1, δ ∈ [0, 1]

s∈0,1n

δ|s|g(s)2 ≤ Pr[g 6= 0]2/(1+δ)

A calculation shows maxi Inff (i) ≥ Ω(log(n)/n)

Fourier analysis of Boolean functions: Some beautiful examples – p.11/13

Page 122: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 123: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions is an increasinglyprominent tool in theoretical computer science

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 124: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions is an increasinglyprominent tool in theoretical computer science

We showed a few simple but beautiful examples:

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 125: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions is an increasinglyprominent tool in theoretical computer science

We showed a few simple but beautiful examples:

1. Approximating low-degree functions by parities

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 126: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions is an increasinglyprominent tool in theoretical computer science

We showed a few simple but beautiful examples:

1. Approximating low-degree functions by parities

2. List-decoding of Hadamard codes

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 127: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions is an increasinglyprominent tool in theoretical computer science

We showed a few simple but beautiful examples:

1. Approximating low-degree functions by parities

2. List-decoding of Hadamard codes

3. Learning under the uniform distribution

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 128: Fourier analysis of Boolean functions: Some beautiful examples

Summary

Fourier analysis of Boolean functions is an increasinglyprominent tool in theoretical computer science

We showed a few simple but beautiful examples:

1. Approximating low-degree functions by parities

2. List-decoding of Hadamard codes

3. Learning under the uniform distribution

4. The influence of variables on Boolean functions

Fourier analysis of Boolean functions: Some beautiful examples – p.12/13

Page 129: Fourier analysis of Boolean functions: Some beautiful examples

Warning: these are powerful techniques!

Fourier analysis of Boolean functions: Some beautiful examples – p.13/13