# Advanced Topics in Algorithms and Complexity

## 198:596, Spring 2020

WARNING:
THIS COURSE IS NOT THE MASTERS LEVEL CS
596 COURSE ON MATHEMATICAL FOUNDATIONS FOR COMPUTER SCIENCE OFFERED IN FALL

This
is an advanced PhD level course that will cover recent results in theoretical
computer science. The required background is what is covered in CS 513/538 and
MATH 581/582.

## Course Info

Instructor: Swastik Kopparty
(swastik.kopparty@gmail.com)

Class Time and Place: Fridays 10:20 am - 1:20 pm, in BBB (Livingston Campus)

Office Hours: Wednesdays 1:30-2:30pm in Hill 432

Prerequisites: graduate level combinatorics/probability,
algorithms and mathematical maturity; undergraduate level linear algebra

No required text book.

## Syllabus

This
course will cover assorted recent results in complexity theory and algorithms.
We will see topics such as:

- Boolean formulas, circuits and lower bounds
- Fourier analysis of Boolean functions and applications
- Data structure lower bounds
- Algebraic methods
- Pseudorandomness
- Communication complexity

There will be 2-3 problem sets. Students will be expected to scribe one or
two lectures.

Latex files for scribes: definitions, main file, guidelines

## Lecture
Schedule

- January 24: Boolean circuits and formulas (notes: part 1, part 2)
- January 31: Nechiporuk's
formula lower bound, certificate complexity, decision trees (notes)
- February 7: degree, approximate degree, sensitivity,
block sensitivity (notes)
- February 14: Fourier basics, learning large Fourier
coefficients, learning decision trees
- February 21: AC0, the switching lemma
- February 28: L2 and pointwise polynomial approximations
of AC0 functions over the reals
- March 6: Data structures, pairwise independent hashing,
set membership
- March 13: (NO CLASS, coronavirus)
- March 20: (NO CLASS, spring break)
- March 27: Set membership, lower bounds for polynomial
evaluation data structures ((notes: part 1,
part 2)
- April 3: Kedlaya Umans data structure for polynomial evaluation (notes)
- April 10: Determinant in NC, Matching in RNC (notes)
- April 17: Matching in deterministic quasi-NC (notes)
- April 24: Long paths in graphs (notes)
- May 1: Learning noisy parities (notes)