Course Meeting Times

Lectures: 2 sessions / week, 1.5 hours / session


Permission of instructor

Course Description

In this course, we will mostly be studying Fourier analysis of Boolean functions, which is a useful tool in theoretical computer science, combinatorics, and more. We will start with basic concepts such as influences, noise sensitivity, and hypercontractivity and some basic results in the area. 

Depending on time, we will also discuss applications in fields such as hardness of approximation and extremal combinatorics, as well as more recent developments. 


  • Fundamentals of discrete Fourier analysis. We will begin the course by presenting basic definitions and notions, such as the Fourier decomposition and influences of variables. Throughout the course, we will present basic tools and results in the area, such as the hypercontractive inequality, the KKL theorem, Junta theorems by Friedgut and Bourgain, sharp thresholds, and the invariance principle.
  • Applications of Fourier analysis in various areas in TCS. We will discuss several applications of Fourier analysis in areas such as property testing and learning theory.
  • Applications of Fourier analysis in hardness of approximation. We will briefly discuss a prominent outstanding conjecture in theoretical computer science known as the Unique-Games Conjecture. We will use some basic results from Fourier analysis to show several consequences of this conjecture, such as the (conditional) optimality of the Goemans-Williamson algorithm for Max-Cut, and (conditional) hardness of the Vertex-Cover problem.
  • Applications of Fourier analysis in extremal combinatorics. Extremal combinatorics is an area which roughly speaking asks how large a collection of specific objects can be if it satisfies a certain constraint. For example, how large can a collection of subsets of [n] be provided any two intersect non-trivially? We will see how results in analysis play an important role in giving detailed answers to some of these questions.
  • Advanced Topics. Towards the end of the course we will discuss more advanced topics, which are advances in the area achieved only recently. These includes the resolution of the sensitivity conjecture, an extension of the hypercontractive inequality referred to in the literature as “global hypercontractivity,” and the Fourier entropy conjecture.

Textbook and Readings

Most of the course will be based on a book by Ryan O’Donnell, which is available to purchase but also has a free online version (PDF - 3.5 MB):  

           O’Donnell, Ryan. Analysis of Boolean Functions. Cambridge University Press, New York, NY, 2014. ISBN: ‎9781107038325. 

Similar courses have been given in:

Requirements and Grading

The final grade in the course will be composed of the grades in the problem sets given throughout the semester (50%) and a final project (50%).  

The final project in the course will involve reading a research-level paper and either summarizing it or giving a short presentation, depending on the amount of students that will take the course for credit. This may include linking out to related open research directions and making some progress along them.

Course Info

As Taught In
Spring 2021
Learning Resource Types
Lecture Notes
Problem Sets