Please note! Course description is confirmed for two academic years, which means that in general, e.g. Learning outcomes, assessment methods and key content stays unchanged. However, via course syllabus, it is possible to specify or change the course execution in each realization of the course, such as how the contact sessions are organized, assessment methods weighted or materials used.


After this course, you will be able to design and analyse efficient distributed algorithms for problems that are related to computer networks and other distributed systems. You will also know how to prove that your algorithm is as fast as possible, i.e., the same problem cannot be solved faster with any distributed algorithm.

Credits: 5

Schedule: 05.09.2023 - 07.12.2023

Teacher in charge (valid for whole curriculum period):

Teacher in charge (applies in this implementation): Jukka Suomela

Contact information for the course (applies in this implementation):

CEFR level (valid for whole curriculum period):

Language of instruction and studies (applies in this implementation):

Teaching language: English. Languages of study attainment: English


  • valid for whole curriculum period:

    This course provides an introduction to the theory of distributed algorithms. The topics include algorithmic techniques that can be used to solve graph problems efficiently in very large networks, as well as fundamental impossibility results that set limits to distributed computing.

Assessment Methods and Criteria
  • valid for whole curriculum period:

    Exams and exercises.


Substitutes for Courses


Further Information
  • valid for whole curriculum period:

    Teaching Language : English

    Teaching Period : 2022-2023 Autumn I - II
    2023-2024 Autumn I - II