Analysis of Boolean functions

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In mathematics and theoretical computer science, analysis of Boolean functions[1] is the study of real-valued functions on or from a spectral perspective (such functions are sometimes known as pseudo-Boolean functions). The functions studied are often, but not always, Boolean-valued, making them Boolean functions. The area has found many applications in combinatorics, social choice theory, random graphs, and theoretical computer science, especially in hardness of approximation, property testing and PAC learning.

Basic concepts[edit]

We will mostly consider functions defined on the domain . Sometimes it is more convenient to work with the domain instead. If is defined on , then the corresponding function defined on is

Similarly, for us a Boolean function is a -valued function, though often it is more convenient to consider -valued functions instead.

Fourier expansion[edit]

Every real-valued function has a unique expansion as a multilinear polynomial:

This is the Hadamard transform of the function , which is the Fourier transform in the group . The coefficients are known as Fourier coefficients, and the entire sum is known as the Fourier expansion of . The functions are known as Fourier characters, and they form an orthonormal basis for the space of all functions over , with respect to the inner product .

The Fourier coefficients can be calculated using an inner product:

In particular, this shows that Parseval's identity states that

If we skip , then we get the variance of :

Fourier degree and Fourier levels[edit]

The degree of a function is the maximum such that for some set of size . In other words, the degree of is its degree as a multilinear polynomial.

It is convenient to decompose the Fourier expansion into levels: the Fourier coefficient is on level .

The degree part of is

It is obtained from by zeroing out all Fourier coefficients not on level .

We similarly define .


The 'th influence of a function can be defined in two equivalent ways:

If is Boolean then is the probability that flipping the 'th coordinate flips the value of the function:

If then doesn't depend on the 'th coordinate.

The total influence of is the sum of all of its influences:

The total influence of a Boolean function is also the average sensitivity of the function. The sensitivity of a Boolean function at a given point is the number of coordinates such that if we flip the 'th coordinate, the value of the function changes. The average value of this quantity is exactly the total influence.

The total influence can also be defined using the discrete Laplacian of the Hamming graph, suitably normalized: .

Noise stability[edit]

Given , we say that two random vectors are -correlated if the marginal distributions of are uniform, and . Concretely, we can generate a pair of -correlated random variables by first choosing uniformly at random, and then choosing according to one of the following two equivalent rules, applied independently to each coordinate:

We denote this distribution by .

The noise stability of a function at can be defined in two equivalent ways:

For , the noise sensitivity of at is

If is Boolean, then this is the probability that the value of changes if we flip each coordinate with probability , independently.

Noise operator[edit]

The noise operator is an operator taking a function and returning another function given by

When , the noise operator can also be defined using a continuous-time Markov chain in which each bit is flipped independently with rate 1. The operator corresponds to running this Markov chain for steps starting at , and taking the average value of at the final state. This Markov chain is generated by the Laplacian of the Hamming graph, and this relates total influence to the noise operator.

Noise stability can be defined in terms of the noise operator: .


For , the -norm of a function is defined by

We also define

The hypercontractivity theorem states that for any and ,

Hypercontractivity is closely related to the logarithmic Sobolev inequalities of functional analysis.[2]

A similar result for is known as reverse hypercontractivity.[3]

p-Biased analysis[edit]

In many situations the input to the function is not uniformly distributed over , but instead has a bias toward or . In these situations it is customary to consider functions over the domain . For , the p-biased measure is given by

This measure can be generated by choosing each coordinate independently to be 1 with probability and 0 with probability .

The classical Fourier characters are no longer orthogonal with respect to this measure. Instead, we use the following characters:

The p-biased Fourier expansion of is the expansion of as a linear combination of p-biased characters:

We can extend the definitions of influence and the noise operator to the p-biased setting by using their spectral definitions.


The 's influence is given by

The total influence is the sum of the individual influences:

Noise operator[edit]

A pair of -correlated random variables can be obtained by choosing independently and , where is given by

The noise operator is then given by

Using this we can define the noise stability and the noise sensitivity, as before.

Russo–Margulis formula[edit]

The Russo–Margulis formula states that for monotone Boolean functions ,

Both the influence and the probabilities are taken with respect to , and on the right-hand side we have the average sensitivity of . If we think of as a property, then the formula states that as varies, the derivative of the probability that occurs at equals the average sensitivity at .

The Russo–Margulis formula is key for proving sharp threshold theorems such as Friedgut's.

Gaussian space[edit]

One of the deepest results in the area, the invariance principle, connects the distribution of functions on the Boolean cube to their distribution on Gaussian space, which is the space endowed with the standard -dimensional Gaussian measure.

Many of the basic concepts of Fourier analysis on the Boolean cube have counterparts in Gaussian space:

  • The counterpart of the Fourier expansion in Gaussian space is the Hermite expansion, which is an expansion to an infinite sum (converging in ) of multivariate Hermite polynomials.
  • The counterpart of total influence or average sensitivity for the indicator function of a set is Gaussian surface area, which is the Minkowski content of the boundary of the set.
  • The counterpart of the noise operator is the Ornstein–Uhlenbeck operator (related to the Mehler transform), given by , or alternatively by , where is a pair of -correlated standard Gaussians.
  • Hypercontractivity holds (with appropriate parameters) in Gaussian space as well.

Gaussian space is more symmetric than the Boolean cube (for example, it is rotation invariant), and supports continuous arguments which may be harder to get through in the discrete setting of the Boolean cube. The invariance principle links the two settings, and allows deducing results on the Boolean cube from results on Gaussian space.

Basic results[edit]

Friedgut–Kalai–Naor theorem[edit]

If has degree at most 1, then is either constant, equal to a coordinate, or equal to the negation of a coordinate. In particular, is a dictatorship: a function depending on at most one coordinate.

The Friedgut–Kalai–Naor theorem,[4] also known as the FKN theorem, states that if almost has degree 1 then it is close to a dictatorship. Quantitatively, if and , then is -close to a dictatorship, that is, for some Boolean dictatorship , or equivalently, for some Boolean dictatorship .

Similarly, a Boolean function of degree at most depends on at most coordinates, making it a junta (a function depending on a constant number of coordinates). The Kindler–Safra theorem[5] generalizes the Friedgut–Kalai–Naor theorem to this setting. It states that if satisfies then is -close to a Boolean function of degree at most .

Kahn–Kalai–Linial theorem[edit]

The Poincaré inequality for the Boolean cube (which follows from formulas appearing above) states that for a function ,

This implies that .

The Kahn–Kalai–Linial theorem,[6] also known as the KKL theorem, states that if is Boolean then .

The bound given by the Kahn–Kalai–Linial theorem is tight, and is achieved by the Tribes function of Ben-Or and Linial:[7]

The Kahn–Kalai–Linial theorem was one of the first results in the area, and was the one introducing hypercontractivity into the context of Boolean functions.

Friedgut's junta theorem[edit]

If is an -junta (a function depending on at most coordinates) then according to the Poincaré inequality.

Friedgut's theorem[8] is a converse to this result. It states that for any , the function is -close to a Boolean junta depending on coordinates.

Combined with the Russo–Margulis lemma, Friedgut's junta theorem implies that for every , every monotone function is close to a junta with respect to for some .

Invariance principle[edit]

The invariance principle[9] generalizes the Berry–Esseen theorem to non-linear functions.

The Berry–Esseen theorem states (among else) that if and no is too large compared to the rest, then the distribution of over is close to a normal distribution with the same mean and variance.

The invariance principle (in a special case) informally states that if is a multilinear polynomial of bounded degree over and all influences of are small, then the distribution of under the uniform measure over is close to its distribution in Gaussian space.

More formally, let be a univariate Lipschitz function, let , let , and let . Suppose that . Then

By choosing appropriate , this implies that the distributions of under both measures are close in CDF distance, which is given by .

The invariance principle was the key ingredient in the original proof of the Majority is Stablest theorem.

Some applications[edit]

Linearity testing[edit]

A Boolean function is linear if it satisfies , where . It is not hard to show that the Boolean linear functions are exactly the characters .

In property testing we want to test whether a given function is linear. It is natural to try the following test: choose uniformly at random, and check that . If is linear then it always passes the test. Blum, Luby and Rubinfeld[10] showed that if the test passes with probability then is -close to a Fourier character. Their proof was combinatorial.

Bellare et al.[11] gave an extremely simple Fourier-analytic proof, that also shows that if the test succeeds with probability , then is correlated with a Fourier character. Their proof relies on the following formula for the success probability of the test:

Arrow's theorem[edit]

Arrow's impossibility theorem states that for three and more candidates, the only unanimous voting rule for which there is always a Condorcet winner is a dictatorship.

The usual proof of Arrow's theorem is combinatorial. Kalai[12] gave an alternative proof of this result in the case of three candidates using Fourier analysis. If is the rule that assigns a winner among two candidates given their relative orders in the votes, then the probability that there is a Condorcet winner given a uniformly random vote is , from which the theorem easily follows.

The FKN theorem implies that if is a rule for which there is almost always a Condorcet winner, then is close to a dictatorship.

Sharp thresholds[edit]

A classical result in the theory of random graphs states that the probability that a random graph is connected tends to if . This is an example of a sharp threshold: the width of the "threshold window", which is , is asymptotically smaller than the threshold itself, which is roughly . In contrast, the probability that a graph contains a triangle tends to when . Here both the threshold window and the threshold itself are , and so this is a coarse threshold.

Friedgut's sharp threshold theorem[13] states, roughly speaking, that a monotone graph property (a graph property is a property which doesn't depend on the names of the vertices) has a sharp threshold unless it is correlated with the appearance of small subgraphs. This theorem has been widely applied to analyze random graphs and percolation.

On a related note, the KKL theorem implies that the width of threshold window is always at most .[14]

Majority is Stablest[edit]

Let denote the majority function on coordinates. Sheppard's formula gives the asymptotic noise stability of majority:

This is related to the probability that if we choose uniformly at random and form by flipping each bit of with probability , then the majority stays the same:


There are Boolean functions with larger noise stability. For example, a dictatorship has noise stability .

The Majority is Stablest theorem states, informally, then the only functions having noise stability larger than majority have influential coordinates. Formally, for every there exists such that if has expectation zero and , then .

The first proof of this theorem used the invariance principle in conjunction with an isoperimetric theorem of Borell in Gaussian space; since then more direct proofs were devised.

Majority is Stablest implies that the Goemans–Williamson approximation algorithm for MAX-CUT is optimal, assuming the unique games conjecture. This implication, due to Khot et al.,[15] was the impetus behind proving the theorem.


  1. ^ O'Donnell, Ryan (2014). Analysis of Boolean functions. Cambridge University Press. ISBN 978-1-107-03832-5.
  2. ^ Diaconis, Persi; Saloff-Coste, Laurent (1996). "Logarithmic Sobolev inequalities for finite Markov chains". Ann. Appl. Probab. 6 (3): 695–750. doi:10.1214/aoap/1034968224.
  3. ^ Mossel, Elchanan; Oleszkiewicz, Krzysztof; Sen, Arnab (2013). "On reverse hypercontractivity". GAFA. 23 (3): 1062–1097. arXiv:1108.1210. doi:10.1007/s00039-013-0229-4.
  4. ^ Friedgut, Ehud; Kalai, Gil; Naor, Assaf (2002). "Boolean functions whose Fourier transform is concentrated on the first two levels". Adv. Appl. Math. 29 (3): 427–437. doi:10.1016/S0196-8858(02)00024-6.
  5. ^ Kindler, Guy (2002). "16". Property testing, PCP, and juntas (Thesis). Tel Aviv University.
  6. ^ Kahn, Jeff; Kalai, Gil; Linial, Nati (1988). "The influence of variables on Boolean functions.". Proc. 29th Symp. on Foundations of Computer Science. SFCS'88. White Plains: IEEE. pp. 68–80. doi:10.1109/SFCS.1988.2192.
  7. ^ Ben-Or, Michael; Linial, Nathan (1985). "Collective coin flipping, robust voting schemes and minima of Banzhaf values". Proc. 26th Symp. on Foundations of Computer Science. SFCS'85. Portland, Oregon: IEEE. pp. 408–416. doi:10.1109/SFCS.1985.15.
  8. ^ Friedgut, Ehud (1998). "Boolean functions with low average sensitivity depend on few coordinates". Combinatorica. 18 (1): 474–483. doi:10.1007/PL00009809.
  9. ^ Mossel, Elchanan; O'Donnell, Ryan; Oleszkiewicz, Krzysztof (2010). "Noise stability of functions with low influences: Invariance and optimality". Ann. Math. 171 (1): 295–341. arXiv:math/0503503. doi:10.4007/annals.2010.171.295.
  10. ^ Blum, Manuel; Luby, Michael; Rubinfeld, Ronitt (1993). "Self-testing/correcting with applications to numerical problems". J. Comput. Syst. Sci. 47 (3): 549–595. doi:10.1016/0022-0000(93)90044-W.
  11. ^ Bellare, Mihir; Coppersmith, Don; Håstad, Johan; Kiwi, Marcos; Sudan, Madhu (1995). "Linearity testing in characteristic two". Proc. 36th Symp. on Foundations of Computer Science. FOCS'95.
  12. ^ Kalai, Gil (2002). "A Fourier-theoretic perspective on the Condorcet paradox and Arrow's theorem". Adv. Appl. Math. 29 (3): 412–426. doi:10.1016/S0196-8858(02)00023-4.
  13. ^ Friedgut, Ehud (1999). "Sharp thresholds of graph properties and the k-SAT problem". J. Am. Math. Soc. 12 (4): 1017–1054. doi:10.1090/S0894-0347-99-00305-7.
  14. ^ Friedgut, Ehud; Kalai, Gil (1996). "Every monotone graph property has a sharp threshold". Proc. Am. Math. Soc. 124 (10): 2993–3002. doi:10.1090/S0002-9939-96-03732-X.
  15. ^ Khot, Subhash; Kindler, Guy; Mossel, Elchanan; O'Donnell, Ryan (2007), "Optimal inapproximability results for MAX-CUT and other two-variable CSPs?" (PDF), SIAM Journal on Computing, 37 (1): 319–357, doi:10.1137/S0097539705447372