CS294-180: PARTITION FUNCTIONS: ALGORITHMS & COMPLEXITY, FALL 2023

INSTRUCTOR: Alistair Sinclair (sinclair@cs; 677 Soda)
TIME: Tuesday, Thursday 9:30-11:00
PLACE: 405 Soda
OFFICE HOURS: Thursday 11:00-12:00 & TBA in 677 Soda

RECENT ANNOUNCEMENTS

  • (11/17/23) Lecture Note 19 (the last of the course, covering complex analysis and partition functions) is posted below.

  • (11/14/23) Schedule Update: The last regular lecture is this Thursday, 11/16. There will be no lectures next week (Thanksgiving week). Project presentations start on Tuesday 11/28: the schedule is here. Please be sure to show up to support your fellow students.

  • (11/14/23) Lecture Note 18 (covering the lectures on hardness of the hard-core model) is posted below.

  • (11/7/23) Lecture Note 17 (covering the last couple of lectures on correlation decay) is posted below.


  • COURSE DESCRIPTION

    Partition functions are a class of polynomials with combinatorial coefficients that count weighted combinatorial structures. Originally introduced in statistical physics, they have more recently found widespread application in combinatorics, theoretical computer science, statistics and machine learning, and have become a vibrant research area in their own right. This course will cover algorithmic and complexity theoretic aspects of partition functions, as well as their connections to physical and combinatorial phase transitions. A large portion of the class will be devoted to the Markov chain Monte Carlo method, which remains the most widely applicable algorithmic tool in the area. The course will also cover more recent deterministic algorithms based on correlation decay and geometry of polynomials. The class is open to graduate students and exceptionally well-prepared undergraduates (with the permission of the instructor). Prerequisites include a solid background in algorithms and complexity theory and appropriate mathematical sophistication.

    Tentative List of Topics

  • Counting, partition functions and Markov random fields.
  • The complexity class #P and #P-completeness. Approximate counting and approximating partition functions. Relationship between counting and random sampling.
  • Polynomial time examples: spanning trees and matchings in planar graphs.
  • Basis of the Markov chain Monte Carlo (MCMC) method: ergodicity, stationary distributions, reversibility, mixing times.
  • Coupling of Markov chains; applications to graph colorings and statistical physics. Dobrushin uniqueness condition.
  • Functional analysis for mixing times: spectral gap and log-Sobolev inequalities. Connections to multicommodity flows and high-dimensional expansion. Applications to approximating the permanent, counting the bases of a matroid, and spin systems.
  • Lower bounds: conductance and isoperimetric inequalities.
  • Correlation decay and spatial mixing in statistical physics and MRFs; deterministic approximation algorithms; application to independent sets (hard-core model).
  • Hardness of approximation based on non-uniqueness of the Gibbs measure.
  • Geometry of polynomials: approximation algorithms based on absence of complex zeros. Lee-Yang theorems and connection to phase transitions. Applications to the Ising model, graph colorings etc.

  • MATERIALS

    There is no textbook for the class; most of the material is drawn from research papers, and references will be given as we go along. The primary written resource for the class will be detailed lecture notes, which will be posted on this web page shortly after each class. I will provide most of these, but may ask students to take turns at scribing some of the lectures as necessary (working individually or in pairs).

    ASSESSMENT/ACTIVITIES

    The main requirement of the class is following the lecture material in person in class, and following up by reading the notes and doing the exercises in those notes. The main "deliverable" will be an end-of-semester project, involving presentation of and/or incremental work on a research paper towards the end of the semester. Students may also be asked to submit scribe notes and occasional short homework exercises.

    LECTURE NOTES