Principles of Distributed Computing (FS 2026)
Course catalogue • Previous year • PODC lecture collection
Distributed computing is essential in modern computing and communications systems. Examples are on the one hand large-scale networks such as the Internet, and on the other hand multiprocessors such as your multi-core laptop. This course introduces the principles of distributed computing, emphasizing the fundamental issues underlying the design of distributed systems and networks: communication, coordination, fault-tolerance, locality, parallelism, self-organization, symmetry breaking, synchronization, uncertainty. We explore essential algorithmic ideas and lower bound techniques, basically the "pearls" of distributed computing. We cover a fresh topic every week.
- Course pre-requisites: Interest in algorithmic problems. (No particular course needed.)
- Course language: English
- Lecture by Manuela Fischer (Roger Wattenhofer is currently part-time professor), Wednesdays 8-10: CAB G 61.
- Lectures are in-person only. Recordings from previous years will however be available, and photographs of the blackboards can be found here.
- Exercises organized by Damien Berriaud and Marc Dufay.
Bonus Task
Each week, students will be able to submit an original problem based on a topic from a previous lecture. Students coming up with an interesting problem about the material of this course (possibly containing several subquestions) along with an high-quality solution will be awarded a grade bonus of 0.25 and their problem will be shared with other students.Your problem should be complex enough to take about 20 minutes to solve, and should not merely ask about something that can easily be looked up in the script (definition, algorithm, etc). You may take style inspiration from past exam questions (and solutions), but your question must be original. It takes us at least 20 hours to design an exam question (initial idea, improvements, tuning, testing), so we expect that it will take you a substantial time to produce an interesting question.
There will be 7 submission rounds, each taking place every two weeks and covering the two previous topics. For example, the deadline to submit a problem related to Lectures 1 and 2 will be on the day of Lecture 3 (04.03.26), that for problems related to Lecture 3 and 4 on the day of Lecture 5 (18.03.26), and so on. The problem has to be sent by mail to the TA who organized the exercise session for the corresponding topics, as well a copy to Damien Berriaud. We will review the submissions and provide feedback (pass or fail) one week after each deadline, so that the result is communicated before the next submission deadline. A student may submit multiple problems but will be awarded the grade bonus at most once.
Bonus tasks which have been awarded the bonus grade will be available in this polybox folder.
Exam
- The exam will take place in August.
- You are allowed to bring any written material you like (lecture notes, books, personal notes,...), but no electronic devices whatsoever (no calculator, phone, laptop, headphones,...).
- The exam will last 2 hours and consist of 120 points.
- Here are some old exams from previous years (since 2017 the exams come with solutions): 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025.
- Please be aware that the topics covered in this course have changed several times over the years. Therefore, some questions in these exams don't match the content of this year's course.
Discussion Forum
We have set up a discussion forum on the moodle course homepage. You can use this forum to ask questions about the lecture and the exercises. As this is a discussion forum, feel free to also answer the questions of your colleagues.Lecture Material
| Chapter Title | Lecture | Exercises | Additional Material | ||
|---|---|---|---|---|---|
| Chapter 0 Introduction 18.02.2026 |
Script | [peleg] Preface, Chapter 1 Slides by M.Fischer, ETH Zürich |
|||
| Chapter 1 Vertex Coloring 18.02.2026 |
Script | Supervised by Damien Exercises Solutions |
[peleg] Chapter 7 Slides by S.Schmid, TU Berlin 2023 Recording |
||
| Chapter 2 Tree Algorithms 25.02.2026 |
Script | Supervised by Anton Exercises | [peleg] Chapter 3-5 [hkpru] Chapter 7 Slides by S.Schmid, TU Berlin 2023 Recording |
||
| Chapter 3 Leader Election 04.03.2026 |
Supervised by Mose Deadline Bonus Ch. 1 and 2. |
[hkpru] Chapter 8 Slides by S.Schmid, TU Berlin 2023 Recording |
|||
| Chapter 4 Maximal Independent Set 11.03.2026 |
Supervised by Marc | [peleg] Chapter 8 Slides by R. Wattenhofer Slides by S.Schmid, TU Berlin 2023 Recording |
|||
| Chapter 5 Locality Lower Bounds 18.03.2026 |
Supervised by Anton | 2023 Recording | |||
| Chapter 6 Matching 25.03.2026 |
Supervised by Damien | Original Paper Slides by M. Fischer 2024 Recording |
|||
| Chapter 7 Global Problems 01.04.2026 |
Supervised by Mose |
Slides by R. Wattenhofer Animation of APSP Algorithm by Jukka Suomela 2023 Recording |
|||
| No lecture (Easter Break) 08.04.2026 |
|||||
| Chapter 8 Distributed Sorting 15.04.2026 |
[leighton] Chapter 1.6 & 3.5 [clr] Chapter 28 Slides by S.Schmid, TU Berlin 2023 Recording |
||||
| Chapter 9 Stabilization 22.04.2026 |
2023 Recording | ||||
| Chapter 10 Wireless Protocols 29.04.2026 |
2023 Recording | ||||
| Chapter 11 Graph Neural Networks 06.05.2026 |
Graph Representation Learning by William L. Hamilton, McGill University 2023 Recording |
||||
| Chapter 12 Labeling Schemes 13.05.2026 |
2023 Recording | ||||
| Chapter 13 Minimum Spanning Tree 1 20.05.2026 |
|||||
| Chapter 14 Minimum Spanning Tree 2 27.05.2026 |
References
| [peleg] |
Distributed Computing: A Locality-Sensitive Approach David Peleg. Society for Industrial and Applied Mathematics (SIAM), 2000, ISBN 0-89871-464-8 |
| [aw] |
Distributed Computing: Fundamentals, Simulations and Advanced Topics Hagit Attiya, Jennifer Welch. McGraw-Hill Publishing, 1998, ISBN 0-07-709352 6 |
| [hkpru] |
Dissemination of Information in Communication Networks Juraj Hromkovic, Ralf Klasing, Andrzej Pelc, Peter Ruzicka, Walter Unger. Springer-Verlag, Berlin Heidelberg, 2005, ISBN 3-540-00846-2 |
| [leighton] |
Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes Frank Thomson Leighton. Morgan Kaufmann Publishers Inc., San Francisco, CA, 1991, ISBN 1-55860-117-1 |
| [clr] |
Introduction to Algorithms Thomas Cormen, Charles Leiserson, Ronald Rivest. The MIT Press, 1998, ISBN 0-262-53091-0 oder 0-262-03141-8 |
