Chapter 3 notes

The fact that the Fourier characters $\chi_{\gamma} : {\mathbb F}_2^n \to \{-1,1\}$ form a group isomorphic to ${\mathbb F}_2^n$ is not a coincidence; the analogous result holds for any finite abelian group and is a special case of the theory of Pontryagin duality in harmonic analysis. We will see further examples of this in Chapter [...]

Chapter 3 exercises

[...]

§3.5: Highlight: the Goldreich–Levin Algorithm

We close this chapter by briefly describing a topic which is in some sense the “opposite” of learning theory: cryptography. At the highest level, cryptography is concerned with constructing functions which are computationally easy to compute but computationally difficult to invert. Intuitively, think about the task of encrypting secret messages: you would like a [...]

§3.4: Learning theory

Computational learning theory is an area of algorithms research devoted to the following task: given a source of “examples” $(x, f(x))$ from an unknown function $f$, compute a “hypothesis” function $h$ which is good at predicting $f(y)$ on future inputs $y$. We will focus on just one possible formulation of the task:

[...]

§3.3: Restrictions

A common operation on boolean functions $f : \{-1,1\}^n \to {\mathbb R}$ is restriction to subcubes. Suppose $[n]$ is partitioned into two sets, $J$ and $\overline{J} = [n] \setminus J$. If the inputs bits in $\overline{J}$ are fixed to constants, the result is a function $\{-1,1\}^J \to {\mathbb R}$. For example, if we [...]

§3.2: Subspaces and decision trees

In this section we treat the domain of a boolean function as ${\mathbb F}_2^n$, an $n$-dimensional vector space over the field ${\mathbb F}_2$. As mentioned earlier, it can be natural to index the Fourier characters $\chi_S : {\mathbb F}_2^n \to \{-1,1\}$ not by subsets $S \subseteq [n]$ but by their $0$-$1$ indicator vectors $\gamma [...]

§3.1: Low-degree spectral concentration

One way a boolean function’s Fourier spectrum can be “simple” is for it to be mostly concentrated at small degree.

[...]

Chapter 3: Spectral structure and learning

One reasonable way to assess the “complexity” of a boolean function is in terms how complex its Fourier spectrum is. For example, functions with sufficiently simple Fourier spectra can be efficiently learned from examples. This chapter will be concerned with understanding the location, magnitude, and structure of a boolean function’s Fourier spectrum.