# CS6170 Randomized Algorithms

## Aug-Nov 2021

The lecture videos and notes written during the lectures are available in the links below.

- Lectures
- Scribbles and Notes (from Aug 9), from Sep 29

- Lecture 27, Oct 14
- FPRAS for #SAT (contd.); Connection between sampling and counting: FPAUS implies FPRAS.
- References: [MU] - Chapter 11

- Lecture 26, Oct 13
- FPRAS for #DNF; FPRAS for #SAT with black-box access to SAT.
- References: [MU] - Chapter 11

- Lecture 25, Oct 11
- Monte-Carlo method; FPRAS for #DNF; Importance sampling.
- References: [MU] - Chapter 11

- Lecture 24, Oct 7
- Random walks on expander; Probability amplification using expander random walks; Counting problems.
- References: Pseudorandomness by Vadhan - Sections 4.1, 4.2

- Lecture 23, Oct 6
- Random walks on undirected graphs - s-t connectivity; convergence of random walks - connections with spectrum of a graph.
- References: [MU] - Chapter 7, Pseudorandomness by Vadhan - Section 2.4

- Lecture 22, Oct 4
- Markov chains - more definitions, properties, stationary distributions; Random walks on undirected graphs.
- References: [MU] - Chapter 7

- Lecture 21, Sep 30
- Randomized 3-SAT - extending the idea of the 2-SAT algorithm, Modifications and a better analysis - Schoening’s algorithm.
- References: [MU] - Chapter 7

- Lecture 20, Sep 29
- Randomized 2-SAT, Markov chains - definition and basics, Randomized 3-SAT.
- References: [MU] - Chapter 7

- Lecture 19, Sep 27
- Random-walk based algorithm for 2-SAT.
- References: [MU] - Chapter 7

- Tutorial, Sep 22
- Discussion of Pset 2
- Lecture 18, Sep 20
- Cuckoo hashing - analysis (contd.) and bounds.
- References: [MU] - Chapter 17
- Additional reading - Cuckoo Hashing - Pagh and Rodler.

- Lecture 17, Sep 16
- Cuckoo hashing - bounds and analysis using random graphs.
- References: [MU] - Chapter 17

- Lecture 16, Sep 13
- FKS hashing - construction and bounds; Hashing with open addressing - linear probing.
- References: [MU] - Chapter 15, [MR] - Chapter 8.5
- Additional reading: Knuth’s note on the analysis of linear probing

- Lecture 15, Sep 9
- Universal hash families - constructions, applications, bounds; Perfect hash families.
- References: [MU] - Chapter 15

- Lecture 14, Sep 8
- Bloom filters - false positives; Negatively associated random variables and their properties - concentration bounds and application to analyzing the Bloom filter.
- References: [MU] - Chapter 5; [DP] - Chapter 3.1

- Lecture 13, Sep 6
- Poisson approximation - Coupon collector problem.
- References: [MU] - Chapter 5

- Lecture 12, Sep 2
- Balls and bins - Poisson approximation; lower bound on the maximum load.
- References: [MU] - Chapter 5

- Lecture 11, Sep 1
- Balls and bins - birthday paradox, maximum load, Poisson approximation.
- References: [MU] - Chapter 5
- Additional reading: Tight bounds for balls and bins for different values of \(m\) and \(n\)

- Tutorial, Aug 30
- Discussion of Pset 1
- Lecture 10, Aug 26
- Probability amplification of one-sided error algorithms; Chernoff-Hoeffding bounds - outline of the proof and applications.
- References: [MU] - Chapter 4, [DP] - Chapters 1, 2

- Lecture 9, Aug 25
- Chebyshev’s inequality - probability amplification of one-sided error algorithms; pairwise independent hash families.
- References: Salil Vadhan’s notes - Section 3.5, [MU] - Chapter 3

- Lecture 8, Aug 19
- Analysis of the Coupon-collector problem; Markov’s inequality - analyis of randomized Quicksort.
- References: [MU] - Chapters 2, 3

- Lecture 7, Aug 16
- Random variables - Bernoulli, Binomial, Geometric; Probability Mass functions; Coupon-collector problem.
- References: [MU] - Chapter 2

- Lecture 6, Aug 12
- Randomized Maxcut - pairwise independent random bits and derandomization; Randomized Quicksort and its analysis.
- References: [MU] - Chapter 2

- Lecture 5, Aug 11
- Randomized Maxcut - analysis of the algorithm, properties of the random variables.
- References: [MU] - Chapter 2

- Lecture 4, Aug 9
- Mincut - Karger’s algorithm and analysis.
- References: [MU] - Chapter 1

- Lecture 3, Aug 5
- Proof of DeMillo-Lipton-Schwartz-Zippel lemma - recall of basic probability definitions and concepts; Verifying matrix multiplication - Frievald’s algorithm.
- References: [MU] - Chapter 1

- Lecture 2, Aug 4
- Polynomial Identity Testing - connections to perfect matching in graphs; statement of the DeMillo-Lipton-Schwartz-Zippel lemma.
- References: [MU] - Chapter 1

- Lecture 1, Aug 2
- Introduction to the course; Toy example - verifying polynomial factorization; extending the idea to multivariate polynomials - Polynomial identity testing.
- References: [MU] - Chapter 1