CS367 -- Algebraic Graph Algorithms -- Fall 2015
- Instructor: Virginia Vassilevska Williams
TA: Anthony Kim
- Time: Fridays 12:30pm--3:20pm, Building 460, Room 334
- Office Hours: By appointment/email
Description:
This graduate course will explore topics around matrix multiplication and its use in the design of graph algorithms.
We will focus on problems such as transitive closure, shortest paths, graph matching, and many other classical graph problems.
Workload for this course:
- Three problem sets, about one and a half weeks apart.
- In-class presentation on a topic of interest related to the course, or on your own research!
- Edit the scribe notes for at least one lecture:
we have lecture notes from a previous incarnation of this course; your job would be to take your own notes during class, fix any typos or inaccuracies in the old notes and potentially complete them if some new things are covered. The original notes were written in LaTeX so that you'd need to modify some LaTeX code. Please submit the fixed-up scribe notes
within a week of the lecture.
Prerequisites: This is an advanced course, meant for graduate students, but it is open to anyone.
Good familiarity with algorithmic concepts and good mathematical maturity is necessary. We will try to recall the concepts needed along the way.
Having taken courses in algorithms such as CS161 and CS261 is particularly useful, otherwise it may be tough to follow the material.
There is no textbook for the course, but we will catalogue some reading material found on the web as we go.
Announcements:
- 11/4 Edited Lecture 4 Notes: Part 1 and Part 2 (coming soon)
- 11/4 Edited Lecture 5 Notes: Part 1 and Part 2
- 11/4 Edited Lecture 3 Notes: [pdf]
- 11/3 Paper List is out: LIST . Claim your paper by email to cs367stanford@gmail.com. First Come First Served!
- 10/28 Homework 3 is out: HW3
- 10/15 Homework 2 is out: HW2
- 10/15 Edited Lecture 2 Notes: Part 1, Part 2
- 10/4 A link to the unedited lecture notes: old lectures
- 10/4 Edited Lecture 1 Notes: [pdf]
- 10/2 Homework 1 is out: HW1
- 9/24 Look here for fun stuff to happen!
Upcoming topics (the rough plan: subject to change!)
- 9/25: Introduction to matrix multiplication. Equivalences with other linear algebraic operations.
- 9/25: Four-Russians alg. Graph transitive closure is equivalent to Boolean matrix multiplication
- 10/2: Seidel's algorithm for APSP
- 10/2: Zwick's algorithm for APSP
- 10/9: Yuster/Zwick's Distance oracle; APSP in node-weighted graphs
- 10/9: All pairs earliest arrivals, bottleneck paths and the dominance product
- 10/16: Successor and witness matrices; computing actual paths
- 10/16: Equivalences between APSP and other problems
- 10/23: Perfect matching: Rabin-Vazirani algorithm
- 10/23: Perfect matching: Harvey's algorithm
- 10/30: The Baur-Strassen theorem and graph algorithms
- 10/30, 11/6: Matrix multiplication algorithms
- 11/13: Coppersmith-Winograd and beyond
- 11/20,12/4: Presentations.