Course description
This is a graduate level/advanced undergraduate course intended to introduce students to some exciting research directions in theoretical CS. We will cover a broad selection of areas, tentatively including topics on interconnections between:
- sublinear models of computation
- error-correcting codes
- expander graphs
- additive combinatorics.
We will introduce proof techniques such as discrete Fourier analysis, the probabilistic method, Yao’s principle, and more.
 
Prerequisites: There are no specific course requirements other than some mathematical maturity. Some familiarity with discrete math and algorithms would be useful.