Distributed Computing Through Combinatorial Topology

Distributed Computing Through Combinatorial Topology

1st Edition - November 30, 2013

Write a review

  • Authors: Maurice Herlihy, Dmitry Kozlov, Sergio Rajsbaum
  • Paperback ISBN: 9780124045781
  • eBook ISBN: 9780124047280

Purchase options

Purchase options
DRM-free (PDF, Mobi, EPub)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Distributed Computing Through Combinatorial Topology describes techniques for analyzing distributed algorithms based on award winning combinatorial topology research. The authors present a solid theoretical foundation relevant to many real systems reliant on parallelism with unpredictable delays, such as multicore microprocessors, wireless networks, distributed systems, and Internet protocols. Today, a new student or researcher must assemble a collection of scattered conference publications, which are typically terse and commonly use different notations and terminologies. This book provides a self-contained explanation of the mathematics to readers with computer science backgrounds, as well as explaining computer science concepts to readers with backgrounds in applied mathematics. The first section presents mathematical notions and models, including message passing and shared-memory systems, failures, and timing models. The next section presents core concepts in two chapters each: first, proving a simple result that lends itself to examples and pictures that will build up readers' intuition; then generalizing the concept to prove a more sophisticated result. The overall result weaves together and develops the basic concepts of the field, presenting them in a gradual and intuitively appealing way. The book's final section discusses advanced topics typically found in a graduate-level course for those who wish to explore further.

Key Features

  • Named a 2013 Notable Computer Book for Computing Methodologies by Computing Reviews
  • Gathers knowledge otherwise spread across research and conference papers using consistent notations and a standard approach to facilitate understanding
  • Presents unique insights applicable to multiple computing fields, including multicore microprocessors, wireless networks, distributed systems, and Internet protocols
  • Synthesizes and distills material into a simple, unified presentation with examples, illustrations, and exercises


Grad / undergrad students in CS or Math; as well as working researchers or computer engineers.

Table of Contents

  • Dedication



    Companion Site

    Part 1: Fundamentals

    Chapter 1. Introduction


    1.1 Concurrency everywhere

    1.2 Distributed computing

    1.3 Two classic distributed computing problems

    1.4 Chapter notes

    1.5 Exercises

    Chapter 2. Two-Process Systems


    2.1 Elementary graph theory

    2.2 Tasks

    2.3 Models of computation

    2.4 Approximate agreement

    2.5 Two-process task solvability

    2.6 Chapter notes

    2.7 Exercises

    Chapter 3. Elements of Combinatorial Topology


    3.1 Basic concepts

    3.2 Simplicial complexes

    3.3 Standard constructions

    3.4 Carrier maps

    3.5 Connectivity

    3.6 Subdivisions

    3.7 Simplicial and continuous approximations

    3.8 Chapter notes

    3.9 Exercises

    Part 2: Colorless Tasks

    Chapter 4. Colorless Wait-Free Computation


    4.1 Operational model

    4.2 Combinatorial model

    4.3 The computational power of wait-free colorless immediate snapshots

    4.4 Chapter notes

    4.5 Exercises

    Chapter 5. Solvability of Colorless Tasks in Different Models


    5.1 Overview of models

    5.2 t-Resilient layered snapshot protocols

    5.3 Layered snapshots with k-set agreement

    5.4 Adversaries

    5.5 Message-passing protocols

    5.6 Decidability

    5.7 Chapter notes

    5.8 Exercises

    Chapter 6. Byzantine-Resilient Colorless Computation


    6.1 Byzantine failures

    6.2 Byzantine communication abstractions

    6.3 Byzantine set agreement

    6.4 Byzantine barycentric agreement

    6.5 Byzantine task solvability

    6.6 Byzantine shared memory

    6.7 Chapter notes

    6.8 Exercises

    Chapter 7. Simulations and Reductions


    7.1 Motivation

    7.2 Combinatorial setting

    7.3 Applications

    7.4 BG simulation

    7.5 Conclusions

    7.6 Chapter notes

    7.7 Exercises

    Part 3: General Tasks

    Chapter 8. Read-Write Protocols for General Tasks


    8.1 Overview

    8.2 Tasks

    8.3 Examples of tasks

    8.4 Protocols

    8.5 Chapter notes

    8.6 Exercises

    Chapter 9. Manifold Protocols


    9.1 Manifold protocols

    9.2 Layered immediate snapshot protocols

    9.3 No set agreement from manifold protocols

    9.4 Set agreement vs. weak symmetry breaking

    9.5 Chapter notes

    9.6 Exercises

    Chapter 10. Connectivity


    10.1 Consensus and path connectivity

    10.2 Immediate snapshot model and connectivity

    10.3 k-Set agreement and image-connectivity

    10.4 Immediate snapshot model and k-connectivity

    10.5 Chapter notes

    10.6 Exercises

    Chapter 11. Wait-Free Computability for General Tasks


    11.1 Inherently colored tasks: the hourglass task

    11.2 Solvability for colored tasks

    11.3 Algorithm implies map

    11.4 Map implies algorithm

    11.5 A sufficient topological condition

    11.6 Chapter notes

    11.7 Exercises

    Part 4: Advanced Topics

    Chapter 12. Renaming and Oriented Manifolds


    12.1 An upper bound: renaming with image names

    12.2 Weak symmetry breaking

    12.3 The index lemma

    12.4 Binary colorings

    12.5 A lower bound for image -renaming

    12.6 Chapter notes

    12.7 Exercises

    Chapter 13. Task Solvability in Different Models


    13.1 Shellability

    13.2 Examples

    13.3 Pseudospheres

    13.4 Carrier maps and shellable complexes

    13.5 Applications

    13.6 Chapter notes

    13.7 Exercises

    Chapter 14. Simulations and Reductions for Colored Tasks


    14.1 Model

    14.2 Shared-memory models

    14.3 Trivial reductions

    14.4 Layered snapshot from read-write

    14.5 Immediate snapshot from snapshot

    14.6 Immediate snapshot from layered immediate snapshot

    14.7 Snapshot from layered snapshot

    14.8 Chapter Notes

    14.9 Exercises

    Chapter 15. Classifying Loop Agreement Tasks


    15.1 The fundamental group

    15.2 Algebraic signatures

    15.3 Main theorem

    15.4 Applications

    15.5 Torsion classes

    15.6 Conclusions

    15.7 Chapter notes

    15.8 Exercises

    Chapter 16. Immediate Snapshot Subdivisions


    16.1 A glimpse of discrete geometry

    16.2 Chapter notes

    16.3 Exercises



Product details

  • No. of pages: 336
  • Language: English
  • Copyright: © Morgan Kaufmann 2013
  • Published: November 30, 2013
  • Imprint: Morgan Kaufmann
  • Paperback ISBN: 9780124045781
  • eBook ISBN: 9780124047280

About the Authors

Maurice Herlihy

Maurice Herlihy received an A.B. in Mathematics from Harvard University, and a Ph.D. in Computer Science from M.I.T. He has served on the faculty of Carnegie Mellon University, on the staff of DEC Cambridge Research Lab, and is currently a Professor in the Computer Science Department at Brown University. Dr. Herlihy is an ACM Fellow, and is the recipient of the 2003 Dijkstra Prize in Distributed Computing. He shared the 2004 Gödel Prize with Nir Shavit, with whom he also shared the 2012 Edsger W. Dijkstra Prize In Distributed Computing.

Affiliations and Expertise

Brown University, Providence, RI, USA

Dmitry Kozlov

Prof. Dmitry Kozlov is recipient of the Wallenberg Prize of the Swedish Mathematics Society (2003), the Gustafsson Prize of the Goran Gustafsson Foundation (2004), and the European Prize in Combinatorics (2005). He has been a Senior Lecturer at the Royal Institute of Technology, Stockholm, and an Assistant Professor at ETH Zurich. Currently he holds the Chair of Algebra and Geometry at the University of Bremen, Germany. He is the author of the book Combinatorial Algebraic Topology published by Springer Verlag in 2008.

Affiliations and Expertise

University of Bremen, Germany

Sergio Rajsbaum

Prof. Sergio Rajsbaum is a member of the Institute of Mathematics at UNAM, where he is now a Full Professor. He has spent postdoctoral and sabbatical stays at the Massachusetts Institute of Technology and HP Research Labs. His main research interests are in the theory of distributed computing, and has about 100 publications in prestigious conferences and journals, and has been Program Committee member, and Program Chair of main forums in the area, such as the ACM Principles of Distributed Computing.

Affiliations and Expertise

Instituto de Matemáticas, Universidad Nacional Autónoma de México

Ratings and Reviews

Write a review

There are currently no reviews for "Distributed Computing Through Combinatorial Topology"