FOURIER ANALYSIS of BOOLEAN FUNCTIONS Contents 1. Introduction 1 2. the Fourier Expansion 2 3. Arrow's Impossibility Theorem 5

FOURIER ANALYSIS of BOOLEAN FUNCTIONS Contents 1. Introduction 1 2. the Fourier Expansion 2 3. Arrow's Impossibility Theorem 5

FOURIER ANALYSIS OF BOOLEAN FUNCTIONS SAM SPIRO Abstract. This paper introduces the technique of Fourier analysis applied to Boolean functions. We use this technique to illustrate proofs of both Arrow's Impossibility Theorem and H˚astad's3-bit Theorem. Contents 1. Introduction1 2. The Fourier Expansion2 3. Arrow's Impossibility Theorem5 4. Probabilistically Checkable Proofs 10 5. H˚astad's3-bit theorem 12 Acknowledgments 19 References 19 1. Introduction Classical Fourier analysis is a powerful tool in studying and understanding func- tions of a continuous variable. Similarly, the discrete analogs of these techniques prove useful for the study of Boolean functions. There are many equivalent ways to define Boolean functions, and the definition one choses often reflects the kind of problems one is trying to solve with them. Two of the most common definitions are as functions of the form f : f0; 1gn ! f0; 1g or as functions of the form f : {−1; 1gn ! {−1; 1g. For our purposes, we shall use the latter as the definition of Boolean functions. Note that one can move between these two viewpoints by using the bijection φ(b) = (−1)b for b 2 f0; 1g, which has the nice property of transforming addition into multiplication, that is, φ(x + y) = φ(x)φ(y), where the addition takes place mod 2. Initially, such functions may seem fairly simple to analyze. After all, their do- mains and ranges are rather narrow. However, one finds that the category of Boolean functions is quite rich. For instance, one might think of a Boolean function f : {−1; 1gn ! {−1; 1g as an election of two candidates labeled −1 and 1, where n for x 2 {−1; 1g , xi represents the ith voter's preference and f(x) represents the n election's outcome. In another setting, an x 2 {−1; 1g(2) could represent the edges of some n vertex graph, where xi = 1 indicates that the graph has an edge between n some vertices j; k. We could then define the function g : {−1; 1g(2) ! {−1; 1g by g(x) = 1 if the corresponding graph of x is connected, and g(x) = −1 otherwise. Such a function is easy to state, but it may be difficult to analyze, and hence more 1 2 SAM SPIRO sophisticated tools must be developed to analyze its behavior. Briefly, we describe some of the notation used throughout the paper. For n n x; y 2 {−1; 1g , the string xy 2 {−1; 1g is defined coordinate-wise as (xy)i = xiyi. The term \bit" may refer either to a value in f0; 1g or in {−1; 1g, depending on the context. We write [n] to denote the set f1; : : : ; ng. We will write x ∼ S, where S is a set (most often {−1; 1gn) to indicate that x is drawn uniformly at random from the set S. When the probability distribution of a random variable x is understood, we will write Ex or even E to denote its expectation under this measure. The outline for the paper is as follows. Section 2 defines the Fourier expansion of a Boolean function and then explores fundamental definitions and tools in their analysis. We then use these tools to prove theorems from two very distinct areas of study: Arrow's Impossibility Theorem from social choice theory, and H˚astad's 3-bit Theorem from the theory of probabilistically checkable proofs. In Section 3 we prove Arrow's Impossibility Theorem after introducing some additional Fourier analytic tools. In Section 4 we introduce the terminology necessary to understand- ing H˚astad'sTheorem, such as PCPs and CSPs. We then formally state and prove H˚astad'sTheorem in Section 5. 2. The Fourier Expansion Before introducing the Fourier expansion of a Boolean function, we introduce a standard way of expressing arbitrary Boolean functions by indicator functions. For any fixed y 2 {−1; 1gn, one can define the corresponding indicator function n 1y : {−1; 1g ! f0; 1g by n Y 1 + yixi 1 x = y 1 (x) = = : y 2 0 otherwise i=1 From this definition, it is clear that any Boolean function f can be written as X f(x) = f(y)1y(x): y∈{−1;1gn Example 2.1. Consider the indicator function 1f(1;−1)g. By expanding its product, we can write this as 1 + x 1 − x 1 1 1 1 1 (x) = 1 2 = + x − x − x x f(1;−1)g 2 2 4 4 1 4 2 4 1 2 and one can check that this evaluates to 1 if x = (1; −1) and to 0 otherwise. In Example 2.1, one observes that the indicator function (upon expanding its product) is in fact a multilinear polynomial, and this is true of all indicator func- tions. As all Boolean functions are the linear combination of indicator functions, we conclude the following. Remark 2.2. All Boolean functions can be written as multilinear polynomials. Delving into this idea, we note that any monomial term of a multilinear polyno- Q mial will be of the form c xi for some S ⊂ [n]; c 2 R. Motivated by this, we i2S Q define the Boolean function χS for every S ⊂ [n] by χS(x) = i2S xi (where we FOURIER ANALYSIS OF BOOLEAN FUNCTIONS 3 define the empty product to be equal to 1, so that χ; ≡ 1). We call these functions characters. 1 1 1 1 Example 2.3. We can rewrite the multilinear polynomial 4 + 4 x1 − 4 x2 − 4 x1x2 which represents 1(1;−1) in terms of characters: 1 1 1 1 χ (x) + χ (x) − χ (x) − χ (x): 4 ; 4 f1g 4 f2g 4 f1;2g Using similar logic, it is clear that we can rewrite any multilinear polynomial as a linear combination of characters. By Remark 2.2, we conclude that any Boolean function f can be written as the linear combination of characters. Moreover, these functions will turn out to be an orthonormal basis of a certain vector space. We shall temporarily expand our study to consider all functions of the form f : {−1; 1gn ! R, which we shall call real-valued Boolean functions. It should be noted that using the same logic as before, we can derive that such functions can be written as the linear combination of indicator functions, and hence as the linear combination of characters. Real-valued Boolean functions naturally form a vector space over R by defining (f + g)(x) = f(x) + g(x) and (cf)(x) = cf(x) for c 2 R. It is also clear that 1 n the indicator functions (now thought of as y : {−1; 1g ! R) form a basis for this vector space, and hence the dimension of this space is 2n. Because we know that the set fχSg spans the space of real-valued Boolean functions, and because its (finite) cardinality equals the dimension of the vector space, we conclude that the characters forms a basis for the space (and hence we conclude that the multilinear expansion of f is unique). Now we introduce an inner-product. The simplest inner-product for real-valued P Boolean functions f; g would be x∈{−1;1gn f(x)g(x). The problem is that for Boolean functions f; g (which is ultimately what we wish to return to), this sum can never equal 1, so there is no hope in creating an orthonormal basis of Boolean functions from this inner-product. To remedy this, we scale our sum by a factor of 2−n, in essence turning our sum into an average. We thus define the inner-product for the space as follows: X hf; gi = 2−nf(x)g(x) = E[f(x)g(x)]: x∈{−1;1gn We now verify that under this inner product, the set of χS do in fact form an orthonormal basis. We first note that χSχT = χS∆T , where S∆T is the symmetric difference of S and T . Indeed, Y Y Y Y 2 Y (2.4) χS(x)χT (x) = xi xj = xi xj = xi = χS∆T (x) i2S j2T i2S∆T j2S\T i2S∆T 2 where we used the fact that xk = 1 for any xk 2 {−1; 1g. We will also prove that (1 S = ; E[χ (x)] = : S 0 S 6= ; Because χ; ≡ 1, the first case is clear. If S 6= ; we have " # Y Y E[χS(x)] = E xi = E [xi] i2S i2S 4 SAM SPIRO where we use the fact that choosing an x ∼ {−1; 1gn is equivalent to choosing each coordinate xi ∼ {−1; 1g independently of one another. We then have E[xi] = 0 for all i, so this (non-empty) product will be 0. As hχS; χT i = E[χS(x)χT (x)] = E[χS∆T (x)], we conclude that this evaluates to 1 if S = T and to 0 otherwise. Hence, under this inner-product, the characters form an orthonormal basis. We can now write the Fourier expansion of f: X ^ (2.5) f = f(S)χS S⊂[n] ^ where f(S) = hf; χSi is the Fourier coefficient of f at S. Example 2.6. Define NAE : {−1; 1g3 ! R (the \not all equal" function) as NAE(1; 1; 1) = NAE(−1; −1; −1) = 0, with the function equaling 1 on all other inputs. One can verify (either by expanding the indicator functions, computing the inner product of NAE with χS for each S ⊂ [3], or simply be verifying the correct output for each input value) that its Fourier expansion is 3 1 1 1 NAE(x ; x ; x ) = − x x − x x − x x : 1 2 3 4 4 1 2 4 1 3 4 2 3 Writing NAE out as its expansion will be a critical step in our proof of Arrow's Theorem.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    19 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us