Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Distributed computing through combinatorial topology
Herlihy M., Kozlov D., Rajsbaum S., Morgan Kaufmann Publishers Inc., Waltham, MA, 2014. 336 pp. Type: Book (978-0-124045-78-1)
Date Reviewed: Jul 24 2014

Topology is a relatively new branch of mathematics, growing and maturing since the early 20th century, though its roots can probably be traced to much earlier. Some basic concepts from topology, like topological invariance (often expressed by saying “a mug is homeomorphic to a doughnut”), are fairly well known to a large number of scientifically literate amateurs, and the subject has had a variety of applications, which are perhaps less well known. It has developed strong bonds with other branches of mathematics, including set theory, knot theory, geometry, and analysis.

It is claimed by some that the impetus for using topology in distributed computing arose from Fischer et al.’s seminal paper [1], which used a topological line of reasoning for a problem space described as a hypercube to arrive at an important impossibility result. While this result itself was of great interest, it also spurred on some researchers working in distributed computing to explore further connections and apply topological arguments to prove results in distributed computing [2,3,4].

Somewhat roughly speaking, the idea is to reduce the space of some problem in distributed computing to a topological structure (a simplicial complex, or a manifold), with a solution to the problem corresponding to some valid transformation of the structure. If it is known (or can be shown) based on the theory and results of topology that such a transformation is not possible, it then follows that the distributed computing problem has no solution either. Thus, this is a newer tool for impossibility results in distributed computing, and many such results previously proved otherwise have later been recast to use topology.

Until recently, there has not been a monograph that comprehensively covers the intersection of topology and distributed computing, with some books [5,6] having no coverage. This book thus finds its place for filling precisely this niche, and will be welcomed by readers who are thankful for not having to pore through the literature in hopes of attaining a modicum of comprehension. It covers its subject essentially from the first principles (though a prior understanding of the basics of distributed algorithms, and of algebraic topology, would serve the reader well).

The book consists of four parts. Part 1, “Fundamentals,” covers in three chapters the bare essentials of distributed algorithms and algebraic topology (which the authors refer to by its older name, combinatorial topology, and describe as “a higher-dimensional version of graph theory,” which may or may not be a description that satisfies most mathematicians). Part 2, “Colorless Tasks,” contains four chapters and covers the basics of wait-free algorithms (called “colorless” because only the input values of the processors are important, not which processors had what values) for consensus/agreement under shared memory as well as message passing.

Part 3, “General Tasks,” covers general--that is, “colored”--tasks over four chapters. Some advanced topics, mainly recent advances by the authors and others, are covered in Part 4, “Advanced Topics.”

While the authors’ writing is quite lucid and should invite few serious complaints from either computer scientists or mathematicians, it is probably true that relatively few computer scientists will find it easy to go through (mathematicians will, in all likelihood, fare much better, even if they know little of distributed computing to begin with). Computer science students and established researchers alike will probably find it easier to understand this work if they have taken a basic class in topology at the advanced undergraduate or basic graduate level, or at least have spent some time studying a standard textbook [7,8].

Reviewer:  Shrisha Rao Review #: CR142544 (1410-0808)
1) Fischer, M. J.; Lynch, N. A.; Paterson, M. S. Impossibility of distributed consensus with one faulty process. Journal of the ACM 32, 2(1985), 374–382.
2) Herlihy, M. Encyclopedia of algorithms. Springer, New York, NY, 2008.
3) Herlihy, M.; Shavit, N. The topological structure of asynchronous computability. Journal of the ACM 46, 6(1999), 858–923.
4) Herlihy, M.; Rajsbaum, S. Computer science today (LNCS 1000). Springer, New York, NY, 1995.
5) Lynch, N. A. Distributed algorithms. Morgan Kaufmann, San Francisco, CA, 1996.
6) Attiya, H.; Welch, J. Distributed computing: fundamentals, simulations, and advanced topics (2nd ed.). Wiley, Hoboken, NJ, 2004.
7) Hatcher, A. Algebraic topology. Cambridge University Press, Cambridge, MA, 2002.
8) Vick, J. W. Homology theory: an introduction to algebraic topology (2nd ed.). Springer-Verlag, New York, NY, 1994.
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Network Topology (C.2.1 ... )
 
 
Combinatorics (G.2.1 )
 
Would you recommend this review?
yes
no
Other reviews under "Network Topology": Date
A protocol-less scheme for bridging between IEEE 802 local area networks
Kummer P., Tasker R., Linge N., Ball E. Computer Networks and ISDN Systems 12(2): 81-87, 1987. Type: Article
Jul 1 1988
Packet, circuit, and virtual circuit switching
Gerla M., Prentice-Hall, Inc., Upper Saddle River, NJ, 1986. Type: Book (9789780131650503)
Feb 1 1987
Distributed algorithms for finding centers and medians in networks
Korach E., Rotem D., Santoro N. ACM Transactions on Programming Languages and Systems 6(3): 380-401, 1984. Type: Article
Mar 1 1985
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy