Fall 2025-CS 539-ECE 526-Distributed Algorithms
This course covers foundations and recent advances in distributed algorithms. The course studies fundamental problems in distributed computing, including graph algorithms, leader election, synchronization, consensus, broadcast, state machine replication, distributed shared memory, mutual exclusion, shared objects, and distributed cryptography. The course studies foundational models and assumptions regarding shared memory vs. message passing, synchrony vs. asynchrony, reliability of message delivery, crashes and Byzantine faults. The course introduces common algorithm design techniques, including synchronization, cryptographic primitives, leader election, randomization, optimistic cases, simulation, and quorums.
This is a theory/algorithm course that emphasizes formal modeling, rigorous proofs, theoretical analysis, and fundamental limits in the form of lower bounds and impossibility results. While the course also touches on practical aspects whenever applicable, it will not be a priority, and many topics covered in the course will be of theoretical interest primarily at present.
Prerequisite: None required. However, a course on algorithms (like CS/ECE 374) OR distributed systems (like CS 425 / ECE 428) is strongly recommended.
Grading: four problem sets 60%; midterm 15%, final exams 20%; class participation 5%.
Resources: No required textbook. The following textbooks and online resources may be helpful.
- Distributed Computing: Fundamentals, Simulations, and Advanced Topics by Hagit Attiya and Jennifer Welch.
- Notes on Theory of Distributed Systems by James Aspnes.Links to an external site.
- Distributed Algorithms by Nancy Lynch.
- Decentralized ThoughtsLinks to an external site.
Lectures: Monday/Wednesday 3:30 pm -- 4:50 pm in 2406 Siebel Center for Computer Science.
Office Hours: Wednesday 3 to 3:30 pm in 4312 Siebel Center AND after each class in the lecture room.
Tentative Schedule: (subject to change)
This course content is offered under a Public Domain license. Content in this course can be considered under this license unless otherwise noted.