Spring 2022

Distributed Algorithms

Listed in: Computer Science, as COSC-373

Moodle site: Course


Will Rosenbaum (Section 01)


A distributed system consists of a network of processors that communicate by exchanging messages. No processor has a global view of the network, so neighboring processors must communicate in order for the system to perform a given task. In this course, we will study the theory of distributed systems. We will consider fundamental algorithmic tasks---for example, finding spanning trees, maximal independent sets, and graph coloring---in several models of distributed computing. Our goal is to understand under what conditions these tasks can be performed efficiently, if at all. While this course is primarily theoretical, we will discuss applications of the theory to modern computing paradigms (e.g., MapReduce).

Requisite: COSC 311. Limited to 30 students. Spring semester. Professor Rosenbaum.

If Overenrolled: Priority will be given to Junior and Senior computer science majors


Quantitative Reasoning


2022-23: Not offered
Other years: Offered in Spring 2022