In Chapter 9, we considered models of computation in which, for any protocol and any input simplex , the subcomplex is a manifold. We saw that any such protocol cannot solve -set agreement for . In this chapter, we investigate another important topological property of the complex : having no “holes” in dimensions and below, a property called -connectivity. We will see that if every is -connected, then cannot solve -set agreement. We will see later that there are natural models of computation for which protocol complexes are not manifolds, but they are -connected for some . We will also use this notion of connectivity in later chapters to characterize when protocols exist for certain tasks.
Connected; Critical configuration; Nerve complex; Nerve graph; Nerve lemma; Path connected; Reachable complex
In Chapter 9, we considered models of computation for which for any protocol and any input simplex , the subcomplex is a manifold. We saw that any such protocol cannot solve -set agreement for . In this chapter, we investigate another important topological property of the complex : having no “holes” in dimensions and below, a property called -connectivity. We will see that if every is -connected, then cannot solve -set agreement. We will see later that there are natural models of computation for which protocol complexes are not manifolds, but they are -connected for some . We will also use this notion of connectivity in later chapters to characterize when protocols exist for certain tasks.
We start with the familiar, 1-dimensional notion of connectivity and explore its relation to the consensus task.
Recall from Section 8.3.1 that in the consensus task for processes, each process starts with a private input value and halts with an output value such that (1) all processes choose the same output value, and (2) that value was some process’s input.
Here we consider the consensus task with an arbitrary input complex. In other words, instead of requiring that the input complex contain all possible assignments of values to processes, we allow to consist of an arbitrary collection of initial configurations. There are particular input complexes for which consensus is easily solvable. An input complex is said to be degenerate for consensus if every process has the same input in every configuration. Consensus is easy to solve if the input complex is degenerate; each process simply decides its input. We will see that if a protocol’s carrier map takes each simplex to a path-connected subcomplex of the protocol complex, then that protocol cannot solve consensus for any nondegenerate input complex.
Informally, consensus requires that all participating processes “commit” to a single value. Expressed as a protocol complex, executions in which they all commit to one value must be distinct, in some sense, from executions in which they commit to another value. We now make this notion more precise.
Recall from Section 3.5.1 that a complex is path-connected if there is an edge path linking any two vertices of . In the next theorem, we show that if a protocol carrier map satisfies a local path-connectivity condition, it cannot solve consensus for nondegenerate input complexes.
This impossibility result is model-independent: It requires only that each be path-connected. We will use this theorem and others like it to derive three kinds of lower bounds:
• In asynchronous models, the adversary can typically enforce these conditions for every protocol complex. For these models, we can prove impossibility: Consensus cannot be solved by any protocol.
• In synchronous models, the adversary can typically enforce these conditions for or fewer rounds, where is a property of the specific model. For these models, we can prove lower bounds: Consensus cannot be solved by any protocol that runs in or fewer rounds.
• In semisynchronous models, the adversary can typically enforce these conditions for every protocol that runs in less than a particular time , where is a property of the specific model. For these models, we can prove time lower bounds: Consensus cannot be solved by any protocol that runs in time less than .
In the next section, we show that layered immediate snapshot protocol complexes are path-connected.
We now show that if is a layered immediate snapshot protocol, then is path-connected for every simplex .
Here we introduce a style of proof that we will use several times, called a critical configuration argument. This argument is useful in asynchronous models, in which processes can take steps independently. As noted earlier, we can think of the system as a whole as a state machine where each local process state is a component of the configuration. Each input -simplex encodes a possible initial configuration, the protocol complex encodes all possible protocol executions starting from , and each facet of encodes a possible final configuration. In the beginning, all interleavings are possible, and the entire protocol complex is reachable. At the end, a complete execution has been chosen, and only a single simplex remains reachable. In between, as the execution unfolds, we can think of the reachable part of the protocol complex as shrinking over time as each step renders certain final configurations inaccessible.
We use simplex notation (such as ) for initial and final configurations, since they correspond to simplices of the input and protocol complexes. We use Latin letters for transient intermediate configurations ().
We want to show that a particular property, such as having a path-connected reachable protocol complex, that holds in each final configuration also holds in each initial configuration. We argue by contradiction. We assume that the property does not hold at the start, and we maneuver the protocol into a critical configuration where the property still does not hold, but where any further step by any process will make it hold henceforth (from that point on). We then do a case analysis of each of the process’s possible next steps and use a combination of model-specific reasoning and basic topological properties to show that the property of interest must already hold in the critical configuration, a contradiction.
Let be an input -simplex, , and let be a configuration reached during an execution of the protocol starting from . A simplex of is reachable from if there is an execution starting from configuration and ending in final configuration . The subcomplex of the protocol complex consisting of all simplices that are reachable from intermediate configuration is called the reachable complex from and is denoted .
For brevity, we say that a property holds in configuration if holds for , the reachable complex from .
Informally, a critical configuration is a last configuration where fails to hold.
We need a way to reason about the path connectivity of a complex from the path connectivity of its subcomplexes.
Note that the nerve graph is defined in terms of the cover, not just the complex .
The lemma that follows is a special case of the more powerful nerve lemma (Lemma 10.4.2) used later to reason about higher-dimensional notions of connectivity.
To reason about the connectivity of layered protocol complexes, we need some basic lemmas about their structure. Assume is a configuration, is a subset of process names, and is a protocol. We introduce the following notations:
• Let denote the configuration obtained from by running the processes in in the next layer.
• Let denote the complex of executions that can be reached starting from ; we call the reachable complex from .
• Let denote the complex of executions where, starting from , the processes in halt without taking further steps, and the rest finish the protocol.
In the special case .
These notations may be combined to produce expressions like , the complex of executions in which, starting from configuration , the processes in simultaneously take immediate snapshots (write then read), the processes in then halt, and the remaining processes run to completion.
For future reference we note that for all , and all configurations , we have
(10.2.1)
Recall that each configuration, which describes a system state, has two components: the state of the memory and the states of the individual processes. Let and be sets of process names, where .
For each configuration , the reachable complexes cover , as ranges over the non-empty subsets of , defining a nerve graph . The vertices of this complex are the reachable complexes , and the edges are pairs , where
We know from Proposition 10.2.9 that
which is non-empty if and only if we do not halt every process: .
Theorem 10.2.11 provides an alternate, more general proof that consensus is impossible in asynchronous read-write memory.
We consider the -set agreement task with arbitrary inputs, meaning we allow to consist of an arbitrary collection of initial configurations. An input complex is said to be degenerate for -set agreement if, in every input configuration, at most distinct values are assigned to processes. Clearly, -set agreement has a trivial solution if the input complex is degenerate. We will see that if a protocol’s carrier map satisfies a topological property called -connectivity, then that protocol cannot solve -set agreement for any nondegenerate input complex.
In this section we show that if is a layered immediate snapshot protocol, then is -connected for every simplex .
To compute the connectivity of a complex, we would like to break it down into simpler components, compute the connectivity of each of the components, and then “glue” those components back together in a way that permits us to deduce the connectivity of the original complex from the connectivity of the components.
Informally, the nerve of a cover describes how the elements of the cover “fit together” to form the original complex. Like the nerve graph, the nerve complex is determined by the cover, not the complex. The next lemma is a generalization of Lemma 10.2.6.
The following special case of the nerve lemma is often useful:
To compute higher-dimensional connectivity, we need to generalize Proposition 10.2.9 to multiple sets.
For each configuration , the reachable complexes cover . They define a nerve complex . The vertices of this complex are the reachable complexes , and the -simplices are the sets such that
We know from Lemma 10.4.4 that
where , the set of processes that halt, depends on and . This complex is non-empty if and only if .
Fischer, Lynch, and Paterson [55] were the first to prove that consensus is impossible in a message-passing system where a single thread can halt. They introduced the critical configuration style of impossibility argument. Loui and Abu-Amara [110] and Herlihy [78] extended this result to shared memory. Biran, Moran, and Zaks [18] were the first to draw the connection between path connectivity and consensus.
Chaudhuri [37] was the first to study the -set agreement task. The connection between connectivity and -set agreement appears in Chaudhuri, Herlihy, Lynch, and Tuttle [39], Saks and Zaharoglou [135], Borowsky and Gafni [23], and Herlihy and Shavit [91].
The critical configuration style of argument to show that a protocol complex is highly connected was used by Herlihy and Shavit [91] in the read-write wait-free model. This style of argument is useful to prove connectivity in models where other communication objects are available in addition to read-write objects, as in Herlihy [78] for path connectivity or Herlihy and Rajsbaum [79] for -connectivity. The layered style of argument was used in Chapter 9 to prove connectivity invariants on the sets of configurations after some number of steps of a protocol. It is further explored in Chapter 13. Yet another approach to prove connectivity is in Chapter 7, based on distributed simulations.
As we have seen in this chapter, -connectivity is sufficient to prove the -set agreement impossibility result. However, it is not a necessary property. In Chapter 9 we saw that the weaker property of being a manifold protocol is also sufficient. Theorem 5.1 in Herlihy and Rajsbaum [82] is a model-independent condition that implies set agreement impossibility in the style of Theorem 10.3.1. The condition is based on homology groups instead of homotopy groups (as is -connectivity) and is more combinatorial. In fact, from the manifold protocol property it is quite straightforward to derive the homology condition, as explained by Attiya and Rajsbaum [16].
One of the main ideas in this book is that the power of a distributed computing model is closely related to the connectivity of protocol complexes in the model. For instance, given Theorem 10.3.1, the problem of telling whether set agreement is solvable in a particular model is reduced to the problem of showing that protocol complexes in that model are highly connected. A number of tools exist to show that a space is highly connected, such as subdivisions, homology, the nerve theorem, and others. Matousek [113] describes some of them and discusses their relationship. We refer the interested reader to Kozlov [100, section 15.4] for further information on the nerve lemma; in particular, see [100, Theorem 15.24].
Mostefaoui, Rajsbaum, and Raynal [122] introduced the study of the “condition-based approach” with the aim of characterizing the input complexes for which it is possible to solve consensus in an asynchronous system despite the occurrence of up to process crashes. It was further developed, e.g., for synchronous systems, in Mostefaoui, Rajsbaum, Raynal, and Travers [123] and set agreement in [121].
Obstructions to wait-free solvability of arbitrary tasks based on homology theory were studied by Havlicek [76]. This result is further discussed in Havlicek [75], where it is proved that the wait-free full-information protocol complex (using atomic snapshot memory) is homotopy equivalent to the underlying input complex. The derivation of the homotopy equivalence is based on Theorem 10.4.7 (proved originally in [91]).