Calendar
| LECĀ # | TOPICS | KEY DATES |
|---|---|---|
| 1 | Course Overview Synchronous Networks Leader Election in Synchronous Ring Networks |
|
| 2 | Basic Computational Tasks in Synchronous Networks: Leader Election Breadth-first Search Shortest Paths Broadcast and Convergecast |
|
| 3 | Breadth-first Search (cont.) Shortest Paths (cont.) Broadcast and Convergecast (cont.) Spanning Trees Minimum Spanning Trees |
|
| 4 | Fault-tolerant Consensus Link Failures: The Two Generals Problem Process Failures (Stopping, Byzantine) Algorithms for Agreement with Stopping Failures |
|
| 5 | Exponential Information Gathering Algorithms for Agreement with Byzantine Failures |
Homework assignment 1 due |
| 6 | Number-of-processes Lower Bounds for Byzantine Agreement Weak Byzantine Agreement Time Bounds for Consensus Problems |
|
| 7 | Other Kinds of Consensus Problems: $k$-agreement Approximate Agreement Distributed Commit |
|
| 8 | Asynchronous Distributed Computing Formal Modeling of Asynchronous Systems using I/O Automata |
|
| 9 | Proof Methods Non-fault-tolerant Algorithms for Asynchronous Networks Leader Election, Breadth-first Search, Shortest Paths, Broadcast and Convergecast |
Homework assignment 2 due |
| 10 | Non-fault-tolerant Algorithms for Asynchronous Networks (cont.) Leader Election, Breadth-first Search, Shortest Paths, Broadcast and Convergecast (cont.) |
|
| 11 | Spanning Trees Gallager et al. Minimum Spanning Tree Algorithm |
|
| 12 | Synchronizers | Homework assignment 3 due |
| 13 | Synchronizer Applications Time, Clocks, and the Ordering of Events Vector Timestamps |
|
| 14 | State-machine Simulation Synchronous vs. Asynchronous Distributed Systems Stable Property Detection Distributed Termination Global Snapshots Deadlock Detection Asynchronous Shared-memory Systems |
|
| 15 | Mutual Exclusion Mutual Exclusion Algorithms |
|
| 16 | Mutual Exclusion Algorithms (cont.) | Homework assignment 4 due |
| 17 | Bounds on Shared-memory for Mutual Exclusion | |
| 18 | Impossibility of Consensus in Asynchronous, Fault-prone, Shared-memory Systems | |
| 19 | Atomic Objects Atomic Snapshot Algorithms |
|
| 20 | Atomic Read/Write Register Algorithms Wait-free Computability The Wait-free Consensus Hierarchy |
Homework assignment 5 due |
| 21 | The Wait-free Consensus Hierarchy (cont.) | |
| 22 | Wait-free vs. $f$-fault-tolerant Atomic Objects | |
| 23 | Asynchronous Network Model vs. Asynchronous Shared-memory Model Impossibility of Consensus in Asynchronous Networks Failure Detectors and Consensus |
Homework assignment 6 due |
| 24 | Paxos Consensus Algorithm Reliable Communication using Unreliable Channels |
|
| 25 | Reliable Communication using Unreliable Channels (cont.) Self-stabilizing Algorithms |
|
| 26 | Atomic Memory Algorithms for Dynamic Networks Rambo |
Homework assignment 7 due |
