Boolean Fourier Analysis and Complexity Measures of Boolean Functions
Stub. Representing a Boolean function as its Fourier expansion over characters of the hypercube, and using it to analyze error-correcting codes: local testability and the BLR linearity test; local correctability and local decodability; the Boolean hypercube as a Cayley graph with explicit eigenvectors/eigenvalues; and the standard complexity measures of a Boolean function (sensitivity, degree, decision-tree complexity).
Corresponds to advanced course, Lecture 2 Part 2 — Lecture 4. Every Boolean function has a unique expansion in the characters — its Fourier expansion — which turns combinatorial questions about into analytic/linear-algebraic ones. Applies this immediately to coding theory: the BLR (Blum-Luby-Rubinfeld) linearity test checks whether a function is close to linear using only a few queries, via a slick Fourier-analytic proof — the prototype for local testability (checking a huge structure is almost-correct from a handful of samples) and, in the next note, for the PCP theorem itself. Local correctability and decodability push further: recovering a single coordinate (or a full message) correctly even from a corrupted codeword, using few queries. The Boolean hypercube , viewed as a graph (a specific Cayley graph), has explicit eigenvectors (the same Fourier characters) and eigenvalues, linking this analytic machinery directly to the spectral-graph-theory view of expanders in expander-graphs-fundamentals. Closes with the standard combinatorial complexity measures of a Boolean function — sensitivity, (Fourier) degree, and decision-tree complexity — and the (largely Fourier-driven) results relating them.
Outline (TODO — flesh out each)
- Introduction to Boolean Fourier analysis
- Codes, local testability, and the BLR linearity test
- Local correctability and local decodability
- Cayley graphs; the Boolean hypercube, its eigenvectors and eigenvalues
- Complexity measures of Boolean functions — sensitivity, degree, decision-tree complexity