Note.Basics of Boolean Functions [boolean/basics]
2026-08-20
Note.Basics of Boolean Functions [boolean/basics]
Background [#]
Background [#]
Here are the basics of Boolean functions. The standard reference is O’Donnell, and one should generally start there. This will contain mostly the things I look up myself too often, which is not necessarily the best way for someone else to learn.
Boolean Functions [#]
Boolean Functions [#]
The object of study here are Boolean functions.
Definition.Boolean Function [boolean/def/boolean-function]
2026-08-17
Definition.Boolean Function [boolean/def/boolean-function]
A Boolean function is a real-valued function on the Boolean cube,
When the codomain is a single bit,
we call a Boolean-valued function.
Classically the name “Boolean function” means the Boolean-valued kind, but the Fourier-analytic machinery works at the relaxed generality, so we take that as the default and specialize to Boolean-valued functions when the extra structure matters.
The two-element set can be any set of 2 things. Other natural choices are , , or the two elements of the field (which makes the domain ).
Every Boolean function has a canonical expansion in the parity basis, which gives rise to most of the tools we have.
Theorem.Fourier Expansion [boolean/thm/fourier-exp]
2026-08-26
Theorem.Fourier Expansion [boolean/thm/fourier-exp]
Every Boolean function can be written uniquely as a multilinear polynomial in the functions
where is the Fourier coefficient of on .
The are called parity functions. Where exactly when an odd number of the bits are . Importantly, they form a basis of the -dimensional vector space of functions .
The Inner Product, Plancherel, and Parseval [#]
The Inner Product, Plancherel, and Parseval [#]
Definition.Expectation Inner Product [boolean/def/expec-ip]
2026-08-26
Definition.Expectation Inner Product [boolean/def/expec-ip]
For we define the Expectation Inner Product to be
where is drawn uniformly at random from the cube. We write .
We will generally use the expectation inner product by default, and so we will assume w/r/t Boolean functions unless otherwise noted.
We do this because the expectation inner product plays very nicely with the character functions. The whole subject rests on one fact: under this inner product the parities are orthonormal.
Lemma.Orthonormality of the characters [#]
Lemma.Orthonormality of the characters [#]
For all ,
Proof. [#]
Proof. [#]
Since for every coordinate,
where is the symmetric difference. So it suffices to compute for .
If then , so the expectation is .
Otherwise, since the coordinates are independent and uniform on ,
Taking , which is empty exactly when , gives the claim.
Warning.The standard inner product isn't normalized [#]
Warning.The standard inner product isn't normalized [#]
Definition. [#]
Definition. [#]
The standard inner product on functions is
This differs from the expectation inner product by exactly the constant :
The characters are still orthogonal under it but they are not orthonormal: . Averaging instead of summing is exactly what fixes the norm.
Orthonormality identifies the Fourier coefficients as the coordinates of in this basis, and yields the two workhorse identities of the theory.
Fourier coefficients are just inner products against the characters, so Plancherel’s theorem is immediate from their orthonormality.
Theorem.Plancherel's Theorem [boolean/thm/plancherel]
2026-08-26
Theorem.Plancherel's Theorem [boolean/thm/plancherel]
For all ,
Note that taking recovers Parseval’s identity.
Proof. [#]
Proof. [#]
Expand both functions in the Fourier basis and apply orthonormality of the characters (see the expectation inner product):
Specializing to gives Parseval: the squared Fourier coefficients of a Boolean-valued function form a probability distribution.
Theorem.Parseval's Theorem [boolean/thm/parseval]
2026-08-26
Theorem.Parseval's Theorem [boolean/thm/parseval]
For all ,
If is Boolean-valued then everywhere, so : the squared coefficients of a -valued function form a probability distribution over subsets .
“Probabilistic” Boolean Formulas [#]
“Probabilistic” Boolean Formulas [#]
We can relate the coefficients of the Fourier expansion to properties of the function. Thinking of as a real-valued random variable, two important definitions are the mean and variance.
Definition.Mean [boolean/def/mean]
2026-08-27
Definition.Mean [boolean/def/mean]
The mean of a function is ; i.e.,
the average value of .
In particular, when we have a Boolean-valued function , then
If has a mean of , we call unbiased or balanced.
Definition.Variance [boolean/def/var]
2026-08-27
Definition.Variance [boolean/def/var]
The variance of a function is
Note. [#]
Note. [#]
For ,
By Parseval, , and by the Fourier coefficient of the mean, . Subtracting leaves the sum over nonempty .
To match variance, we may also define covariance.
Definition.Covariance [boolean/def/covar]
2026-08-27
Definition.Covariance [boolean/def/covar]
The covariance of is
Note. [#]
Note. [#]
For ,
By Plancherel, , and by the Fourier coefficient of the mean, . Subtracting leaves the sum over nonempty .
Fourier Weight Distribution [#]
Fourier Weight Distribution [#]
Something that comes up (surprisingly?) often is considering distributions on the subsets of . For this one we consider the weight of a function.
Definition.Fourier weight [boolean/def/weight]
2026-08-27
Definition.Fourier weight [boolean/def/weight]
The (Fourier) weight of a Boolean function on the set is the squared Fourier coefficient, .
Using the weight of a function, we may consider the following distribution.
Definition.Spectral Sample [boolean/def/spec-sample]
2026-08-27
Definition.Spectral Sample [boolean/def/spec-sample]
For , the spectral sample for , notated , is the probability distribution on subsets of in which .
We write for a set drawn from this distribution.
We do sometimes want to consider the weight on (or up to) a certain degree of the function.
Definition.Weight at Degree [boolean/def/weight-at-deg]
2026-08-27
Definition.Weight at Degree [boolean/def/weight-at-deg]
For and , the (Fourier) weight of at degree is
By Parseval's Theorem, we have , where
is the degree part of .
If is Boolean-valued, then equivalently we have
Analogously, the weight below degree and weight at or above degree are
As before, these are and , where is the low-degree part of (below ) and is its high-degree part (from on).
In particular , which is when is Boolean-valued.
Influences [#]
Influences [#]
A general question we then may ask is how much the th bit affects the outcome of the function, which we call the influence of coordinate . A natural way to tackle this is to see how much the function changes (on average) when we toggle a bit. This leads us to a discrete version of the derivative.
Definition.(Discrete) Derivative [boolean/def/derivative]
2026-09-08
Definition.(Discrete) Derivative [boolean/def/derivative]
For and a coordinate , the (discrete) derivative of in direction is
where is with its th coordinate set to .
Proposition.Fourier Formula of the Derivative [#]
Proposition.Fourier Formula of the Derivative [#]
For with expansion , the th derivative of is given by
Now we can define the influence of a coordinate.
Definition.Influence [boolean/def/influence]
2026-09-03
Definition.Influence [boolean/def/influence]
For a Boolean-valued function , the influence of coordinate on is the probability that flipping the th bit changes the output of ;
where
When flipping the bit changes the output, , we say coordinate is pivotal for .
Using the (discrete) derivative operator, we may generalize the definition of influence to any Boolean function. For , the influence of coordinate on is defined to be
Note. [#]
Note. [#]
Note that for ,
This means is a 0–1 indicator for whether is pivotal for a given , and so
the right-hand side of which we simply take to be the definition in the real-valued case.
Summing influence over every coordinate gives a single number measuring how sensitive is overall.
Definition.Total Influence [boolean/def/total-inf]
2026-09-08
Definition.Total Influence [boolean/def/total-inf]
The total influence of a function is the sum of its influences over every coordinate,
As is often the case, when we restrict to Boolean-valued functions we get a few extra properties. First though, we define the sensitivity of a function at a point .
Definition.Sensitivity [boolean/def/sensitivity]
Definition.Sensitivity [boolean/def/sensitivity]
The sensitivity of at is defined as the number of pivotal coordinates of a given input for function ; i.e.,
This allows us to state the fact that, for Boolean-valued functions, total influence is the average sensitivity of .
Proposition.Influence is Average Sensitivity [#]
Proposition.Influence is Average Sensitivity [#]
For we have
Restrictions [#]
Restrictions [#]
A common (and surprisingly useful) thing to do to a Boolean function is to consider restrictions of the function to subcubes of the domain.
Definition.Restriction [boolean/def/restriction]
2026-09-22
Definition.Restriction [boolean/def/restriction]
Let and take to be a partition of . Take . Then the restriction of to using is
the subfunction of given by fixing the coordinates in to .
When the partition is clear, we will often write the restriction as .
Warning. [#]
Warning. [#]
Even though we write
remember that we (generally) are not working with the literal concatenation of and .
For a given has Fourier coefficients indexed by now, and, as always, we want to know about the Fourier coefficients.
Proposition.Fourier Expansion of the Restriction [boolean/thm/restriction-fourier]
2026-09-24
Proposition.Fourier Expansion of the Restriction [boolean/thm/restriction-fourier]
Let , be a partition of , and . Then for the restriction function the Fourier coefficient associated to is given by
This gives us that the Fourier expansion of the restriction is
Proof. [#]
Proof. [#]
Split each index set in the Fourier expansion of as with and . Since and are disjoint, the character factors across the partition:
Hence,
and grouping by gives the expansion above. Reading off the coefficient of is the claim, by uniqueness of the Fourier expansion.
It is worth noting that since the character of occurs, we may also view this as a function of , the restriction’s dependence on the fixed coordinates. This leads to considering such a function more directly.
Note.As a function of 𝑧 [#]
Note.As a function of 𝑧 [#]
O’Donnell defines in §3.3, with things as above, a function
giving us a function in terms of . In particular it itself is a Boolean function , and the proposition above is precisely its Fourier expansion, so we can read off its coefficients: for ,
This helps us when we want to know what happens as is what varies, as in the following corollary.
Corollary.Expectation of restrictions w/r/t 𝑧 [boolean/thm/restriction-exp]
Corollary.Expectation of restrictions w/r/t 𝑧 [boolean/thm/restriction-exp]
Let , be a partition of , and fix . Then if we choose uniformly at random, we have