Investigation of models, principles, and fundamental protocols, including event ordering and global predicate detection, atomic commit, state-machine replication, rollback recovery, primary backup, consensus for synchronous and asynchronous systems, and byzantine fault-tolerance. Three lecture hours a week for one semester. Prerequisite: The following coursework with a grade of at least C- in each: Computer Science 311, 311H, 313H, or 313K; Computer Science 307, 314, 314H, 315, or 315H; Computer Science 310, 310H, 429, or 429H; Computer Science 439, 439H, 352, 352H, 372, or 372H; and Mathematics 408C, 408K, or 408N.

Undergraduate Program