# Plan for Lectures

## Topics to be Covered

- Amortized Analysis & Splay Trees (2 lectures)
- Randomized Algorithms: balls and bins, hashing, concentration inequalities, graph sparsification (4 lectures)
- Randomized Algorithms: polynomial identity testing, randomized algorithms for matching problems (1 lecture)
- Randomized Algorithms: random walks, mixing time & page rank (2 lectures)
- Linear programming & duality theorems (2 lectures)
- Approximation Algorithms: linear programming relaxation algorithms (1 lecture)
- Semidefinite Programming & duality theorems (2 lectures)
- Approximation Algorithms: semidefinite relaxation for max cut (1 lecture)
- Hardness of approximation (1 lecture)
- Multiplicative weights update method (1 lecture).
- Data streaming (1 lecture)
- Sublinear time algorithms (1 lecture)
- Online algorithms (2 Lectures)
- Distributed computing (1 lecture)

## Lecture Schedule

A compiled (and really well edited) version of the lecture notes, written by Keven Qiu, can be found here.

Date | Topics | Slides | |
---|---|---|---|

Lecture 0 | May 6th | Introduction & Overview of Course | |

Lecture 1 | May 6th | Introduction to Amortized Analysis | |

Lecture 2 | May 8th | Amortized Analysis: Splay Trees | |

Lecture 3 | May 10th | Concentration Inequalities | |

Lecture 4 | May 13th | Balls and Bins | |

Lecture 5 | May 15th | Hashing | |

Lecture 6 | May 17th | Graph Sparsification | |

Lecture 7 | May 21st | Verifying Polynomial Identities, Matchings, Isolation Lemma | |

Lecture 8 | May 22nd | Sublinear Time Algorithms | |

Lecture 9 | May 24th | Random Walks, Mixing Time | |

Lecture 10 | May 27th | Fundamental Theorem of Markov Chains, Page Rank | |

Lecture 11 | May 29th | Linear Programming & Duality Theorems | |

Lecture 12 | May 31st | Applications of Duality Theorems | |

Lecture 13 | June 10th | Linear Programming Relaxation and Rounding | |

Lecture 14 | June 12th | Positive Semidefinite Matrices & Semidefinite Programming (SDP) | |

Lecture 15 | June 14th | Semidefinite Programming, Duality Theorems & SDP relaxations | |

Lecture 16 | June 17th | SDP Relaxations & Max Cut | |

Lecture 17 | June 19th | Online Algorithms: Paging | |

Lecture 18 | June 21st | Multiplicative Weights Update Method (MWU) | |

Lecture 19 | July 3rd | Data Streaming | |

Lecture 20 | July 5th | Matrix Multiplication & Exponent of Linear Algebra | |

Lecture 21 | July 8th | Distributed Algorithms: Consensus | |

Lecture 22 | July 10th | Hardness of Approximation | |

Lecture 23 | July 12th | Zero Knowledge Proofs | |

Lecture 24 | July 15th | Conclusion |

## Suggested Reading

Topics | Suggested Reading | |
---|---|---|

Lecture 1 | Introduction to Amortized Analysis | Jeff Erickson’s notes |

Lecture 2 | Amortized Analysis: Splay Trees | Anna’s notes |

Lecture 3 | Concentration Inequalities | Lap Chi’s notes |

Lecture 4 | Balls and Bins | Lap Chi’s notes |

Lecture 5 | Hashing | Lap Chi’s notes |

Lecture 6 | Graph Sparsification | Lap Chi’s notes, Ghaffari’s notes |

Lecture 7 | Verifying Polynomial Identities, Matchings, Isolation Lemma | Lap Chi’s notes |

Lecture 8 | Sublinear Time Algorithms | Ronitt’s notes |

Lecture 9 | Random Walks, Mixing Time | Lap Chi’s notes & Lap Chi’s notes |

Lecture 10 | Fundamental Theorem of Markov Chains, Page Rank | Lap Chi’s notes & Lap Chi’s notes & Hannah Cairns notes |

Lecture 11 | Linear Programming & Duality Theorems | Lap Chi’s notes |

Lecture 12 | Applications of Duality Theorems | Slides only |

Lecture 13 | Linear Programming Relaxation and Rounding | |

Lecture 14 | Positive Semidefinite Matrices & Semidefinite Programming | |

Lecture 15 | Semidefinite Programming & Duality Theorems | Notes |

Lecture 16 | SDP Relaxations & Max Cut | Notes |

Lecture 17 | Online Algorithms: Paging | Karger’s notes |

Lecture 18 | Multiplicative Updates Method (MWU) | Yaron’s notes & Lap Chi’s notes, Lec 20 |

Lecture 19 | Data Streaming | Woodruff’s notes & Lap Chi’s notes |

Lecture 20 | Matrix Multiplication & Exponent of Linear Algebra | |

Lecture 21 | Distributed Algorithms: Consensus | Nancy Lynch’s course notes |

Lecture 22 | Hardness of Approximation | Luca’s survey |

Lecture 23 | Zero Knowledge Proofs | Resources in slides |