CS 672 Theory of Distributed Computation

16:198:672 Theory of Distributed Computation

Prof. Rebecca Wright
Fall 2007

Time: Mondays, 3:20pm - 6:20pm
Location: Hill Center, Room 254
Teaching Assisant: Imdadullah Khan
TA's Office hours: Wednesdays 4-6pm in Hill 405
Professor's Office hours: e-mail to set up an appointment

Course description

Go to: Syllabus | Textbook | Grading

This course coveres the design and analysis of distributed algorithms, including investigation of impossibility results showing when some problems are unsolvable. Topics covered include: models of synchronous and asynchronous distributed computing; fault models including crash failures and malicious failures, and communication models including message passing and shared memory systems; distributed algorithms and impossiblity results for problems such as distributed consensus, Byzantine agreement, the Dining Philosophers problem, and mutual exclusion. If time permits, additional topics may include clock synchronization and secure multiparty computation.

Prerequisite: 16:198:513 Design and Analysis of Data Structures and Algorithms.


Nancy Lynch, Distributed Algorithms, 1st Edition, Morgan Kaufmann Publishers, 1996.

Grading and Late Policy

There are four problem sets, a midterm exam, and a final exam. The lowest homework score is dropped.

Top 3 homework assignments 40%
Midterm exam 25%
Final exam 25%
Class participation 10%

Assignments are due at the start of class on their due dates. Late assignments will not be accepted. All exceptions must be cleared in advance.


All reading refers to the Lynch text unless otherwise specified.

Date Topics Assigned Reading Material
Mon, Sept 10 Introduction, Synchronous networks: Leader Election Chapters 1-3
Mon, Sept 17 Synchronous networks: Distributed Consensus Chapter 6
Mon, Sept 24 Guest lecturer: Michael Engling
Synchronous networks: Distributed Consensus, cont'd.
Homework 1 due
Mon, Oct 1 Asynchronous shared memory model: Mutual Exclusion Chapters 8-10
Mon, Oct 8 Asynchronous shared memory model: Resource Allocation
(The Dining Philosopher's Problem)
Chapter 11
Mon, Oct 15 Asynchronous shared memory model: Distributed Consensus
Homework 2 due
Chapter 12
Mon, Oct 22 MIDTERM EXAM (closed book)  
Mon, Oct 29 Asynchronous shared memory model: Distributed Consensus, cont'd.  
Mon, Nov 5 Asynchronous shared memory model: Atomic Objects Chapter 13
Mon, Nov 12 Asynchronous shared memory model: Atomic Objects, cont'd.
Homework 3 due
Mon, Nov 19 Asynchronous distributed computing: Shared Memory vs. Networks Chapters 14 and 17
Mon, Nov 26 Asynchronous networks with process failures Chapter 21, sections 21.1-21.3 only
Mon, Dec 3 Additional topics if time permits
Homework 4 due
Reading TBD
Mon, Dec 10 FINAL EXAM (open book)  

Last updated 9/21/07 by
rebecca.wright (*a*t*) rutgers.edu
Copyright © 2007 Rebecca N. Wright