Chapter 10

Connectivity

Abstract

In Chapter 9, we considered models of computation in which, for any protocol image and any input simplex image, the subcomplex image is a manifold. We saw that any such protocol cannot solve image-set agreement for image. In this chapter, we investigate another important topological property of the complex image: having no “holes” in dimensions image and below, a property called image-connectivity. We will see that if every image is image-connected, then image cannot solve image-set agreement. We will see later that there are natural models of computation for which protocol complexes are not manifolds, but they are image-connected for some image. We will also use this notion of connectivity in later chapters to characterize when protocols exist for certain tasks.

Keywords

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 image and any input simplex image, the subcomplex image is a manifold. We saw that any such protocol cannot solve image-set agreement for image. In this chapter, we investigate another important topological property of the complex image: having no “holes” in dimensions image and below, a property called image-connectivity. We will see that if every image is image-connected, then image cannot solve image-set agreement. We will see later that there are natural models of computation for which protocol complexes are not manifolds, but they are image-connected for some image. We will also use this notion of connectivity in later chapters to characterize when protocols exist for certain tasks.

10.1 Consensus and path connectivity

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 image 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 image 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 image 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 image is path-connected if there is an edge path linking any two vertices of image. 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.

Theorem 10.1.1

Let image be a nondegenerate input complex for consensus. If image is an image-process consensus task, and image is a protocol such that image is path-connected for all simplices image in image, then image cannot solve the consensus task image.

Proof

Assume otherwise. Because image is not degenerate, it contains an edge image such that image. (That is, there is an initial configuration where two processes have distinct inputs.) By hypothesis, image is path-connected, and by Proposition 3.5.3, image is path-connected as well and lies in a single path-connected components of image. But each path-connected component of the consensus output complex image is a single simplex whose vertices are all labeled with the same output value, so image is contained in one of these simplices, image.

Because image is a carrier map, image. Similarly, image. It follows that image and image are both vertices of image; hence they must be labeled with the same value.

Because the protocol image solves the task image is a vertex of image, and image is a vertex of image. Consensus defines image to be a single vertex labeled with image, and therefore image is also labeled with image. By a similar argument, image is labeled with image. It follows that image and image must be labeled with distinct values, a contradiction.  image

This impossibility result is model-independent: It requires only that each image 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 image or fewer rounds, where image 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 image or fewer rounds.

• In semisynchronous models, the adversary can typically enforce these conditions for every protocol that runs in less than a particular time image, where image 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 image.

In the next section, we show that layered immediate snapshot protocol complexes are path-connected.

10.2 Immediate snapshot model and connectivity

We now show that if image is a layered immediate snapshot protocol, then image is path-connected for every simplex image.

10.2.1 Critical configurations

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 image-simplex image encodes a possible initial configuration, the protocol complex image encodes all possible protocol executions starting from image, and each facet of image 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 image) for initial and final configurations, since they correspond to simplices of the input and protocol complexes. We use Latin letters for transient intermediate configurations (image).

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 image be an input image-simplex, image, and let image be a configuration reached during an execution of the protocol image starting from image. A simplex image of image is reachable from image if there is an execution starting from configuration image and ending in final configuration image. The subcomplex of the protocol complex image consisting of all simplices that are reachable from intermediate configuration image is called the reachable complex from image and is denoted image.

Definition 10.2.1

Formally, a property image is a predicate on isomorphism classes of simplicial complexes. A property is eventual if it holds for any complex consisting of a single image-simplex and its faces.

For brevity, we say that a property image holds in configuration image if image holds for image, the reachable complex from image.

Definition 10.2.2

A configuration image is critical for an eventual property image if image does not hold in image but does hold for every configuration reachable from image.

Informally, a critical configuration is a last configuration where image fails to hold.

Lemma 10.2.3

Every eventual property image either holds in every initial configuration or it has a critical configuration.

Proof

Starting from an initial configuration where image does not hold, construct an execution by repeatedly choosing a step that carries the protocol to another configuration where image does not hold. Because the protocol must eventually terminate in a configuration where image holds, advancing in this way will eventually lead to a configuration image where image does not hold, but every possible next step produces a configuration where image holds. The configuration image is the desired critical configuration.  image

10.2.2 The nerve graph

We need a way to reason about the path connectivity of a complex from the path connectivity of its subcomplexes.

Definition 10.2.4

Let image be a finite index set. A set of simplicial complexes image is called a cover for a simplicial complex image, if image.

Definition 10.2.5

The nerve graph image is the 1-dimensional complex (often called a graph) whose vertices are the components image and whose edges are the pairs of components image where image, which have non-empty intersections.

Note that the nerve graph is defined in terms of the cover, not just the complex image.

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.

Lemma 10.2.6

If each image is path-connected and the nerve graph image is path-connected, then image is also path-connected.

Proof

We will construct a path between two arbitrary vertices image and image for image. By hypothesis, the nerve graph contains a path image, for image, where image.

We argue by induction on image, the number of edges in this path. When image are both in image, and they can be connected by a path because image is path-connected by hypothesis.

Assume the claim for paths with fewer than image edges, and let image. By construction, image is non-empty. Pick a vertex image in image. By the induction hypothesis, image is path-connected, so there is a path image from image to image in image. By hypothesis, image is path-connected, so there is a path image from image to image in image. Together, image and image form a path linking image and image.  image

10.2.3 Reasoning about layered executions

To reason about the connectivity of layered protocol complexes, we need some basic lemmas about their structure. Assume image is a configuration, image is a subset of process names, and image is a protocol. We introduce the following notations:

• Let image denote the configuration obtained from image by running the processes in image in the next layer.

• Let image denote the complex of executions that can be reached starting from image; we call image the reachable complex from image.

• Let image denote the complex of executions where, starting from image, the processes in image halt without taking further steps, and the rest finish the protocol.

In the special case image.

These notations may be combined to produce expressions like image, the complex of executions in which, starting from configuration image, the processes in image simultaneously take immediate snapshots (write then read), the processes in image then halt, and the remaining processes run to completion.

For future reference we note that for all image, and all configurations image, we have

image (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 image and image be sets of process names, where image.

Lemma 10.2.7

If image, then configurations image and image agree on the memory state and on the states of processes not in image, but they disagree on the states of processes in image.

Proof

Starting in image, we reach image by letting the processes in image take immediate snapshot in a single layer. Each process in image reads the values written by the processes in image.

Starting in image, we reach image by letting the processes in image write, then read in the first layer, and we reach image by then letting the processes in image but not in image write, then read in the second layer. Each process in image reads the values written by the processes in image, but each process in image reads the values written by image.

Both executions leave the memory in the same state, and both leave each process not in image in the same state, but they leave each process in image in different states.

Figure 10.1 shows an example where there are four processes, image, and image, where image and image. The initial configuration image is shown on the left. The top part of the figure shows an execution in which image writes 0 to its memory element and then reads the array to reach image, and then image writes 1 and reads to reach image. The bottom part shows an alternative execution in which image and image write 0 and 1, respectively, and then read the array to reach image.       image

image

Figure 10.1 Proof of Lemma 10.2.7: The starting configuration image is shown on the left, where image, and each memory element is initialized to image. Two alternative executions appear at the top and bottom of the figure. The top shows an execution where image writes and reads first, followed by image. The bottom shows an execution where image writes and reads first. In both executions, if we halt the processes in image, then we end up at the same configuration shown on the right.

Lemma 10.2.8

If image and image, configurations image and image agree on the memory state and on the states of processes not in image, but they disagree on the states of processes in image.

Proof

Starting in image, we reach image by letting the processes in image write, then read in the first layer, and we reach image by letting the process in image write, then read in the second layer. Each process in the first layer reads the states written by image, and each process in the second layer reads the states written by image. Similarly, starting in image, we reach image by first running image, then image. Each process in the first layer reads the states written by image, and each process in the second layer reads the states written by image. Both configurations agree on the memory state and on states of processes not in image, but they disagree on the states of processes in image.

Figure 10.2 shows an example where there are four processes, image, and image, where image and image. The initial configuration image is shown on the left. The top part of the figure shows an execution in which image write 0 and 1, respectively, read the array to reach image, and then image writes 2 and reads to reach image. The bottom part shows an alternative execution in which image write 0 and 1, respectively, read the array to reach image, and then image writes 0 and reads to reach image.  image

image

Figure 10.2 Proof of Lemma 10.2.8: The starting configuration image is shown on the left, where image, and each memory element is initialized to an arbitrary value image. Two alternative executions appear at the top and bottom of the figure. The top shows an execution where image writes and reads first, followed by image. The bottom shows an execution where image writes and reads first, followed by image. In both executions, if we halt the processes in image, then we end up at the same configuration, shown on the right.

Proposition 10.2.9

Assume that image is a configuration and image; then we have

image

where image, the set of processes that take no further steps, satisfies

image

Proof

There are two cases. For the first case, suppose image. For inclusion in one direction, Lemma 10.2.7 states that configurations image and image disagree on the states of processes in image, implying that every execution in image is an execution in image where no process in image takes a step:

image

For inclusion in the other direction, Lemma 10.2.7 also states that configurations image and image agree on the memory and on states of processes not in image, implying that every execution starting from image in which the processes in image take no steps is also an execution starting from image:

image

The case image is settled analogously.

For the second case, suppose image and image. For inclusion in one direction, Lemma 10.2.8 states that in image and image, the processes in image have distinct states, implying that every execution in image is an execution in image where no process in image takes a step:

image

For inclusion in the other direction, Lemma 10.2.8 also states that in image and image, the processes not in image have the same states, as does the memory, implying that every execution starting from image in which the processes in image take no steps is also an execution starting from image or from image:

image

  image

10.2.4 Application

For each configuration image, the reachable complexes image cover image, as image ranges over the non-empty subsets of image, defining a nerve graph image. The vertices of this complex are the reachable complexes image, and the edges are pairs image, where

image

We know from Proposition 10.2.9 that

image

which is non-empty if and only if we do not halt every process: image.

Lemma 10.2.10

The nerve graph image is path-connected.

Proof

We claim there is an edge from every nerve graph vertex to the vertex image. By Proposition 10.2.9,

image

Because image, this intersection is non-empty, implying that the nerve graph has an edge from every vertex to image. It follows that the nerve graph is path-connected.  image

Theorem 10.2.11

For every wait-free layered immediate snapshot protocol and every input simplex image, the subcomplex image is path-connected.

Proof

We argue by induction on image. For the base case, when image, the complex image is a single vertex, which is trivially path-connected.

For the induction step, assume the claim for image processes. Consider image, where image. Being path-connected is an eventual property, so it has a critical configuration image such that image is not path-connected, but image is path-connected for every configuration image reachable from image. In particular, for each set of process names image, each image is path connected.

Moreover, the subcomplexes image cover the simplicial complex image, and Lemma 10.2.10 states that the nerve graph of this covering is path-connected. Finally, Lemma 10.2.6 states that these conditions ensure that image is itself path-connected, contradicting the hypothesis that image is a critical state for path connectivity.  image

Theorem 10.2.11 provides an alternate, more general proof that consensus is impossible in asynchronous read-write memory.

10.3 k-Set agreement and image-connectivity

We consider the image-set agreement task image with arbitrary inputs, meaning we allow image to consist of an arbitrary collection of initial configurations. An input complex is said to be degenerate for image-set agreement if, in every input configuration, at most image distinct values are assigned to processes. Clearly, image-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 image-connectivity, then that protocol cannot solve image-set agreement for any nondegenerate input complex.

Theorem 10.3.1

Let image be a nondegenerate input complex for image-set agreement. If image is an image-process image-set agreement task, and image is a protocol such that image is image-connected for all simplices image in image, then image cannot solve the image-set agreement task image.

Proof

Because image is not degenerate, it contains a image-simplex image labeled with image distinct values. Let image denote the image-simplex whose vertices are labeled with the input values from image, and let image be its image-skeleton. Let image denote the simplicial map that takes every vertex image to its value in image. Since each vertex of image is labeled with a value from a vertex of image and since the protocol image solves image-set agreement, the simplicial map image is well-defined.

Since the subcomplexes image are image-connected for all simplices image, Theorem 3.7.5(2) tells us that the carrier map image has a simplicial approximation. In other words, there exists a subdivision image of image, together with a simplicial map image, such that for every simplex image, we have image.

The composition simplicial map

image

can be viewed as a coloring of the vertices of image by the vertex values in image. Clearly, for every image, the set of values in image is contained in the set of input values of image, satisfying the conditions of Sperner’s lemma. It follows that there exists a image-simplex image in image colored with all image colors. This is a contradiction, because image is mapped to all of image, which is not contained in the domain complex image.  image

10.4 Immediate snapshot model and k-connectivity

In this section we show that if image is a layered immediate snapshot protocol, then image is image-connected for every simplex image.

10.4.1 The nerve lemma

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.

Definition 10.4.1

Assume that image is a simplicial complex and image is a family of non-empty subcomplexes covering image, i.e., image. The cover’s nerve complex image is the abstract simplicial complex whose vertices are the components image and whose simplices are sets of components image, of which the intersection image is non-empty.

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.

Lemma 10.4.2

Nerve Lemma

Let image be a cover for a simplicial complex image, and let image be some fixed integer. For any index set image, define image. Assume that image is either image-connected or empty, for all image. Then image is image-connected if and only if the nerve complex image is image-connected.

The following special case of the nerve lemma is often useful:

Corollary 10.4.3

If image and image are image-connected simplicial complexes, such that image is image-connected, then the simplicial complex image is also image-connected.

10.4.2 Reachable complexes and critical configurations

To compute higher-dimensional connectivity, we need to generalize Proposition 10.2.9 to multiple sets.

Lemma 10.4.4

Let image be sets of process names indexed so that image.

image

where image, the set of processes that take no further steps, satisfies

image

Proof

We argue by induction on image. For the base case, when image is image, the claim follows from Proposition 10.2.9.

For the induction step, assume the claim for image sets. Because the image are indexed so that image, we can apply the induction hypothesis

image

where

image

Since no process in image takes a step in the intersection,

image

Applying Proposition 10.2.9 and Equation (10.2.1) yields

image

image

We now compute image, the combined set of processes to halt. First, suppose that image. It follows that image, and image, so image.

Suppose instead that image. If image, then image, and image. If image, then image, so image, and image. Substituting image yields

image

where image, the set of processes that take no further steps, satisfies

image

  image

For each configuration image, the reachable complexes image cover image. They define a nerve complex image. The vertices of this complex are the reachable complexes image, and the image-simplices are the sets image such that

image

We know from Lemma 10.4.4 that

image

where image, the set of processes that halt, depends on image and image. This complex is non-empty if and only if image.

Lemma 10.4.5

If image but each image, then image.

Proof

By hypothesis, image, so by Lemma 10.4.4,

image

which is empty because every process halts.  image

Lemma 10.4.6

The nerve complex image is image-connected.

Proof

We show that the nerve complex is a cone with an apex image; in other words, if image is an non-empty simplex in the nerve complex, so is image. Let image.

If image for some image in image, there is nothing to prove. Otherwise, assume image, for image. The simplex image is non-empty if

image

Applying Lemma 10.4.4,

image

Because each image, and image is non-empty, Lemma 10.4.5 implies that image, so the simplex image is non-empty.

It follows that every facet of the nerve complex contains the vertex image, so the nerve complex is a cone, which is image-connected because it is contractible (see Section 3.5.3).

Theorem 10.4.7

For every wait-free layered immediate snapshot protocol and every input simplex image, the complex image is image-connected.

Proof

We argue by induction on image. For the base case, when image, the complex image is a single vertex, which is trivially image-connected.

For the induction step, assume the claim for image processes. Consider image, where image. Being image-connected is an eventual property, so it has a critical configuration image such that image is not image-connected, but image is image-connected for every configuration reachable from image. In particular, for each set of process names image, each image is image-connected. Moreover, the image cover image.

Lemma 10.4.4 states that

image

for image. Because image, this complex is the wait-free protocol complex for image processes, which is either empty or image-connected by the induction hypothesis.

Lemma 10.4.6 states that the nerve complex is image-connected, hence image-connected.

It follows from the nerve lemma that image was already image-connected, contradicting the assumption that image was a critical configuration for image-connectivity.  image

10.5 Chapter notes

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 image-set agreement task. The connection between connectivity and image-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 image-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, image-connectivity is sufficient to prove the image-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 image-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 image 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]).

10.6 Exercises

Exercise 10.1

Prove the following stronger version of Lemma 10.2.6: If each image is path-connected, then image is path-connected if and only if the nerve graph image is path-connected.

Exercise 10.2

Defend or refute the claim that “without loss of generality,” it is enough to prove that image-set agreement is impossible when inputs are taken only from a set of size image.

Exercise 10.3

Use the nerve lemma to prove that if image and image are image-connected, and image is image-connected, then image is image-connected.

Exercise 10.4

Revise the proof of Theorem 10.2.11 to a model in which asynchronous processes share an array of single-writer, multireader registers. The basic outline should be the same except that the critical configuration case analysis must consider individual reads and writes instead of layers.

Exercise 10.5

Let the simplicial map image to be a simplicial approximation to the continuous map image. Show that the continuous map image is homotopic to image.

Exercise 10.6

We have defined a simplicial map image to be a simplicial approximation to the continuous map image if, for every simplex image,

image

An alternative definition is to require that for every vertex image,

image

Show that these definitions are equivalent.

Exercise 10.7

Let image be a configuration, and define

image

the complex of final configurations reachable by executions in which exactly one process participates in the next layer after image. Clearly, image.

Show that image.

Show that the nerve complex image is isomorphic to image, the image-skeleton of image.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset