A General Class of Reductions and Extension-Based Proofs
Abstract
The concept of extension-based proofs models the idea of a valency argument which is widely used in distributed computing. Extension-based proofs have been shown to be limited in power: there is no extension-based proof of the impossibility of a wait-free protocol for -set agreement among processes.
Previous work used a restricted class of reductions to show that there are no extension-based proofs of the impossibility of wait-free protocols for some other distributed computing problems. It is known that for a restricted class of reductions, if a task reduces to and has an augmented extension-based proof that it is impossible to solve in the NIS model, then so does . We introduce multiple-instance extension-based proofs and show that, if reduces to multiple instances of , instead of just one instance and has an augmented extension-based proof, then has a multiple-instance extension-based proof that it is impossible to solve in the NIIS model. We introduce a new version of extension-based proofs that can further our understanding of extension-based proofs and their limitations.
Keywords and phrases:
Reductions, Impossibility proofs, Extension-based proofCopyright and License:
2012 ACM Subject Classification:
Theory of computation Interactive proof systems ; Theory of computation Distributed algorithms ; Theory of computation Distributed computing models ; Theory of computation Problems, reductions and completenessAcknowledgements:
We would like to thank Faith Ellen and Shihao Liu for helpful discussions and the anonymous reviewers for their comments.Editors:
Silvia Bonomi, Letterio Galletta, Etienne Rivière, and Valerio SchiavoniSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
In 1985, Fischer, Lynch, and Paterson [12] proved one of the most important results in distributed computing: There is no deterministic wait-free protocol for the consensus task in the asynchronous message passing system. The key idea of their proof is called a valency argument, which proves the existence of an infinite execution when the algorithm never outputs an incorrect output. The -set agreement task, which is a generalization of the consensus task where processes can output at most different values, first proposed by Chaudhuri [11], was independently shown to have no wait-free protocol by Borowsky and Gafni [7], Herlihy and Shavit [14], and Saks and Zaharoglou [17]. These papers used topological structures to model tasks and protocols.
In [2, 3], Alistarh, Aspnes, Ellen, Gelashvili and Zhu pointed out the differences between valency arguments and combinatorial or topological techniques. In those proofs using combinatorial or topological techniques, the existence of a bad execution is proved, but not explicitly constructed. In the proof by Fischer, Lynch and Paterson, an infinite execution can be obtained by extending an initial execution infinitely often. Alistarh et al. generalized this type of proof and called it an extension-based proof. An extension-based proof is defined as an interaction between a prover and a protocol that claims to solve a task. Initially, the prover only knows the initial configurations of the protocol. To obtain information about the protocol, the prover proceeds in phases. In each phase, the prover submits queries to the protocol to learn information about this protocol. The prover wins if it discovers any error of the protocol. Otherwise, the protocol wins. If there exists a prover that can win against any protocol that claims to solve a task, we say that this task has an extension-based impossibility proof. The proof of the impossibility of consensus [12] is an example of an extension-based proof. It was shown that there are no extension-based proofs for the impossibility of a wait-free protocol for -set agreement in the non-uniform iterated immediate snapshot (NIIS) model [2] and in the non-uniform iterated snapshot (NIS) model [3].
Do other tasks also have no extension-based impossibility proofs? One possible way to extend existing results is via reductions, which is a widely used technique in the field of theoretical computer science. The composition of two tasks and is a task that can be solved by a protocol that first solves and then solves , where outputs from serve as inputs to . A reduction from task to task is a protocol that solves by using a protocol that solves . Processes may use many instances of and communicate with one another to decide the input values for each instance.
Brusse and Ellen [10] introduced augmented extension-based proofs, which provide an additional type of query, and gave the first result about reductions: if reduces to , and has an augmented extension-based proof that it is impossible to solve in the NIS model, then so does , when the reduction is limited to the use of only one instance of . Such a reduction can be represented by where are solvable tasks in the NIS model. Our goal is to answer the open question proposed in their paper, i.e., whether the extension to reductions that allow multiple instances of is possible. In other words, we will consider the reductions that have the form where are solvable tasks.
Suppose that there is a protocol that claims to solve the task . To make use of the reduction from to , we need to compose multiple copies of this protocol and the protocols that solve to generate a protocol that solves the task . This is not straightforward as in uniform models, such as the IIS model, in which all processes terminate after the same number of rounds during all executions of a protocol.
This paper mainly concerns two topics addressed in [10]: a way to compose non-uniform protocols and the construction of an augmented extension-based prover for from an augmented extension-based prover for . All the discussions in this paper are about the non-uniform iterated immediate snapshot (NIIS) model rather than the non-uniform iterated snapshot (NIS) model. The techniques in the two models are quite similar.
1.1 Our contribution
The way of composing multiple protocols in [10] can be generalized to a larger class of reductions. Note that these protocols are assumed to be transparent which means that the entity that tries to compose the protocols knows everything about these protocols. We present some properties of this composition that are necessary for discussions of the construction of an extension-based prover in both this paper and in [10], but are missing in the previous work. For example, a protocol in an extension-based proof is not a transparent protocol as assumed in the composition of multiple protocols, as the prover can only learn information about it by submitting queries to it. The usage of this composition in the discussions about extension-based proofs must be inspected in a more rigid way.
Next, we prove that if the task reduces to the task using multiple instances of and has an augmented extension-based proof that it is impossible to solve in the NIIS model, then has a multiple-instance extension-based proof that it is impossible to solve in the NIIS model. Our proof is not a trivial generalization of the proof in [10]. A technical difference here is that when the reduction from to involves more than one instance of , we have to discuss a new version of extension-based proofs, called multiple-instance extension-based proofs, where the prover interacts with multiple instances of the protocol (instead of only one instance of the protocol in the original definition). Then, similar to the approach in [10], we describe how to construct a multiple-instance extension-based prover from an extension-based prover . Given a protocol that claims to solve the task , the prover simulates an interaction between the composed protocol and . decides which queries it will submit in its interaction with multiple instances of the protocol that claims to solve , based on the queries it sees in this simulation. We will show that wins in the interaction since wins in its interaction with by assumption.
2 Preliminaries
2.1 NIIS model
A snapshot object consists of an array of elements and supports two types of operation: write and read. In a write operation, a process with id writes a value to the -th cell of the array. In a snapshot operation, a process atomically reads the contents of all the cells of the array. Similarly, the immediate snapshot (IS) object was introduced by Borowsky and Gafni in [8]. An IS object consists of an array of elements and provides writeread operations, where a process with id writes a value to the -th element of the array and returns a snapshot of the array immediately after this write. The writeread operations on a single IS object by multiple processes are said to be concurrent if all their snapshot operations happen after all their writes to the array are finished.
IS objects are the basic building blocks of the iterated immediate snapshot (IIS) model. The IIS model consists of processes and a bounded sequence of IS objects . In the execution of a protocol in the IIS model, each process will terminate after performing a writeread operation on each IS object in ascending order in the sequence. The IIS model has been shown to have computational power equivalent to that of the standard shared memory model in [1, 8].
Hoest and Shavit [15] introduced a new model called the non-uniform iterated snapshot (NIIS) model, a variant of the iterated immediate snapshot (IIS) model. The NIIS model consists of processes and an unbounded sequence of IS objects . Each process starts with a process id and its input value , and performs a writeread operation on each IS object sequentially. By definition, each NIIS protocol is determined by a decision map from a local state to output values (or a special value ). In the execution of an NIIS protocol , each time a process completes a writeread operation, it checks whether it has reached a final state by applying to its local state variable. If returns , the process continues to access the next IS object. Otherwise, the process uses the return value of as its output and terminates. An NIIS protocol is said to be transparent to some entity if this entity knows everything about the function . In this paper, we consider full-information NIIS protocols in which each process uses its current state as an argument to perform a writeread operation. After a writeread operation, its new state consists of its process id and the result of the writeread operation. Note that unlike the IIS model, the NIIS model allows different processes to terminate after accessing a different number of IS objects.
A configuration of a protocol consists of the state of each process and the contents of each IS object. Since each process remembers its entire history and only process can write to the -th component of each IS object, the state of each IS object is included in states of the processes, which means that a configuration is fully determined by the states of processes. A process is active in a configuration if it is not terminated. A configuration is final if it has no active processes. If is a configuration and is a set of processes that are poised to perform writeread operations on the same IS object, then is the configuration that results from when the processes in concurrently take a step in the protocol. A schedule of a protocol from is a finite or infinite sequence of sets of processes such that there is a sequence of configurations where processes in is active in and for all in . A -only schedule from is a schedule in which only processes in appear. Each finite schedule from an initial configuration results in a reachable configuration. A protocol is wait-free if each process is terminated after a finite number of steps.
A task consists of a finite set of input vectors, , a finite set of output vectors, , and a map that represents the task specification. For each input vector , maps to a non-empty set of output vectors. Suppose that is a wait-free protocol that has an initial configuration with input vector for each . We say that a protocol solves if, for each , every final configuration that is reached from the initial configuration of that has input vector has output vector and . If and are tasks with maps and , respectively, their composition is a task that has the same set of input vectors as and the same set of output vectors as . The map of the composed protocol is defined by .
2.2 Extension-based proofs
In [3], Alistarh, Aspnes, Ellen, Gelashvili and Zhu formally defined the class of extension-based proofs that generalizes the impossibility proof technique used in the FLP impossibility result. The proof of impossibility is modeled as an interaction between a prover and a wait-free NIIS protocol that claims to solve the task. The protocol is defined by a map from the process states to the output values or a special value . The prover asks queries to learn information about the protocol, such as the values of states of processes in some reached configuration, in an effort to find a violation of the task specification, or construct an infinite execution.
If there exists a prover that can defeat any protocol that claims to solve the task, we say that the task has an extension-based impossibility proof. But if for each prover, an adversary can adaptively design a protocol based on the queries made by the prover such that the prover cannot win in the interaction, there is no extension-based proof for the impossibility of the task. The adaptive protocol constructed by the adversary will be referred to as an adversarial protocol as in [3].
Three classes of extension-based proofs are defined in [3, 10]. We will first introduce restricted extension-based proofs. The interaction between the prover and a protocol proceeds in phases. In each phase the prover starts with a finite schedule and a set of configurations reached from some initial configurations of the task by which only differ in the input values of processes that are not in the schedule . For , the schedule is the empty schedule and contains all initial configurations. The set of configurations reached in phase is denoted by which is empty at the beginning of phase . The prover queries the protocol by choosing a configuration and a set of processes that are poised to perform writeread operations on the same IS object in . The protocol replies with the value of of each process in in the configuration resulting from the processes in concurrently performing writeread operations, and the prover adds the configuration to . A chain of queries is a (finite or infinite) sequence of queries such that if and are consecutive queries in the chain, then is the configuration resulting from scheduling from . The prover is allowed to construct finitely many chains of queries in a phase.
When the output values from the response of a query are not allowed output values for the task, we say that the prover finds a violation of the task specification. Similarly, if a prover can construct an infinite chain of queries, the protocol must admit that it is not wait-free. If the prover does not find a violation or construct an infinite execution after a finite number of queries or chains of queries, it must end the current phase and choose some configuration . Let be the schedule such that is reached via from some configuration in . The schedule will be used as the initial schedule in the next phase. Suppose that the configuration is reached from an initial configuration . Then consists of all configurations reached by the schedule from initial configurations that only differ from by the input values of the processes that do not appear in .
Extension-based proofs allow for an additional type of query. The prover performs an output query by choosing a configuration , a set of processes that are poised to access the same IS object, and a value . If there is a -only schedule from that results in a configuration in which a process in outputs , the protocol will return some such schedule. Otherwise, the protocol returns . Augmented extension-based proofs provide a more general query, called an assignment query. An assignment query consists of a configuration , a set of processes , and an assignment function from a subset of to the output values. If there is a -only schedule from that results in a configuration in which the output value of each process in is , the protocol will return some such schedule. Otherwise, the protocol will return . It is shown that an output query can be simulated by a sequence of assignment queries for each process in [10]. Therefore, we will discuss only augmented extension-based proofs in subsequent sections.
The tasks which have been proved to have no extension-based proofs of the impossibility are still quite limited. It is proved in [3, 2] that the -set agreement task does not have extension-based proofs of the impossibility in the NIIS and NIS models. Some similar results on the approximate agreement task are proved in [4, 16]. Shi and Liu [18] gave a topological characterization of a colorless task to have no extension-based proofs of impossibility.
Attiya, Castañeda, and Rajsbaum [5] studied the limitations of valency arguments in the IIS model. Note that in the IS and IIS models, extension-based proofs are too powerful. They define the class of local valency impossibility proofs, that cannot show there is no wait-free protocol for -set agreement, weak symmetry breaking or -renaming in the IIS model. Attiya, Fraigniaud, Paz and Rajsbaum [6] introduced an FLP-style impossibility proof which is a simple case of extension-based proofs and local valency impossibility proofs, and showed that there are no FLP-style proofs of the impossibility of any 1-dimensional colorless task if it is not wait-free solvable.
2.3 A class of reductions in the NIIS model
If a task reduces to a task , then there exists a protocol that solves the task where each is a protocol to solve the task and each is an NIIS protocol for some task . We assume that the number of instances of the protocol to solve is a constant. We say that is a reduction from a task to a task .
Previous work[10] used a restricted version of this definition in which only one instance in this composition is a protocol that solves the task . The restricted version of reductions in their paper is enough to prove the non-existence of extension-based proofs for many tasks. But some reductions use multiple instances of , such as the reduction given by [13] from weak symmetry breaking to -set agreement, which uses two instances of -set agreement.
3 Composing NIIS protocols
Let be a reduction from a task to a task . Suppose that some protocol, denoted as , claims that it solve the task . We denote the NIIS protocols that solve by . A difference between and , for each , is that everything about is known, which is not true for . We can assume without loss of generality that all processes will terminate after accessing the same number of IS objects in the execution of . The composed protocol should solve where each is an instance of . Note that each is an NIIS protocol, and we cannot assume that all processes will terminate after accessing the same number of IS objects in the execution of .
We consider the case where there are two NIIS protocols, since a more general composition can be easily obtained if we can compose two NIIS protocols.
3.1 Composing two NIIS protocols
The composition of NIIS protocols is much more complicated than the composition of IIS protocols, as processes can terminate after different rounds during the execution of some NIIS protocol. To compose IIS protocols, we can simply have each process execute IIS protocols sequentially. Since each process ends the execution of a protocol after the same round, the information used in the execution of different IIS protocols will not be mixed together. But this is not true for NIIS protocols, since processes accessing the same IS object in the composed protocol may be running different NIIS protocols. We need a mechanism to separate information from different NIIS protocols.
Let and be NIIS protocols such that each output from is a possible input for . We temporarily assume that everything about and is known (this is not true in the construction of ). In [10], Brusse and Ellen provided an implementation of the composed protocol in the NIS model using estimate vectors introduced by Borowsky and Gafni [9]. The composition of two NIIS protocols in our paper can use almost identical techniques. But since this is quite important in this paper, we have to explain it in detail. Let , and denote the -th IS object accessed by processes in the schedules of , , and , respectively. Each process simulates the steps of in protocol followed by the steps of in protocol . The result of a writeread operation in simulation of can be obtained from some writeread operation of the composed protocol. Since different processes may terminate after different rounds in , the result of a writeread operation in the simulation of cannot be easily obtained. Each process locally maintains an infinite sequence of estimate vectors, each with components. The -th estimate vector of process is a potential output of the writeread operation on in the simulation of .
Let be a schedule of the composed protocol from some initial configuration . Each process updates its estimate vectors during this schedule of the composed protocol , and finalizes its -th estimate vector after collecting enough information. This estimate vector can be proved to be equivalent to the return value of the writeread operation to by the same process in some schedule of the second NIIS protocol. We can call this schedule the restriction of to . A process will apply the function that specifies the second protocol to the finalized estimate vector to decide whether it should end the simulation of (and which value to output if so).
We give some pseudocode in Algorithm 1. The process performs writeread operations to sequentially, with indicating the next IS object to be accessed. The value written to by a process consists of three parts: r (round number), state1 (state in the simulation of ) and state2 (state in the simulation of ). The round number is 0 when the process is simulating , is when simulating the -round of . The attribute is a sequence of estimate vectors.
When a process simulates , it computes the result of the writeread operation on from the result of the writeread operation on by ignoring the attribute . However, a process will update its estimate vectors using the result as described in Algorithm 2. updates the -th component of its -th estimate vector when this component is blank and the result of a writeread operation on contains some estimate vectors from some other process, where the -th component of its -th estimate vector is not blank. After a process has finished simulating , it modifies its first estimate vector to include its output of as the input for and then tries to finalize it. To finalize its -th estimate vector, for any , the process repeatedly performs a writeread operation on the next IS object (to contain its first estimate vectors). The process updates its estimate vectors just as it does when simulating . The process does not finalize its -th estimate vector in two cases. The first case is that it sees some other process accessing when that process was simulating or an earlier round of . This is to avoid process , which is simulating an earlier round, from missing the finalized -th estimate vector of process . The other case is that it changes its -th estimate vector using information from .
Otherwise, the process finalizes its -th estimate vector. When a process finalizes its -th estimate vector, this vector will be used as the output of its writeread operation on in the simulation of . Note that it may take many rounds of the composed protocol for a process to finalize its current estimate vector, i.e. to take a step in the simulated execution. Based on the return values of its -th estimate vector, the process terminates its simulation of or modifies its -th estimate vector to include its new state in the simulation of and continues to finalize its -th estimate vector.
3.2 Some properties of the composition
Now we present some properties that are necessary in Section 4. The first property was shown in [10].
Lemma 1.
The composed protocol is wait-free if both and are wait-free.
The second property is about restrictions. Given an initial configuration of , the composed protocol simulates a schedule of from , followed by a schedule of , where the output of the first schedule serves as input to the second schedule. Let be a schedule of from . The restriction of to is defined as the schedule obtained from by removing all the occurrences of each process after simulating . Each process finishes its simulation of with output during the schedule of from if and only if terminates with output during the schedule of from .
Let be the set of processes that complete their simulation of during and, for each , let be its simulated output from . Let be any initial configuration of in which each process has input . We have to prove that, for each , the -th estimate vectors that have been finalized by the processes in correspond to the responses of the writeread operations in some -only schedule of from . Each process finishes its simulation of with output during the schedule of from if and only if terminates with output during the schedule of from . The restriction of to is defined as the schedule . Note that we are using the same definition as in [10] except that we are using the NIIS model rather than the NIS model.
Lemma 2.
The estimate vectors finalized by the processes during the schedule of from correspond to the responses of the writeread operations during the schedule , which is the restriction of to , starting from .
Proof.
For any simulated IS object of , let denote the set of processes that have finalized their -th estimate vectors after performing writeread operations to of the composed protocol . For any indices , and , if and , then . This is because the value can only be defined on line 40 by the process with id , and other processes are only allowed to copy this value into their estimate vectors on line 9 of Algorithm 2. We can define a partial order on the -th estimate vectors. Given the indices and , if for any , or , then is ordered before (i.e. contains each non-blank value in ). If there is a partial order defined on the set of finalized -th estimate vectors, then these finalized -th estimate vectors can be seen as the result of writeread operations on .
Suppose that the process is in but not in , i.e. finalizes its -th estimate vector after accessing . Consider the response of the writeread operation by a process on . According to our implementation (checks on in Algorithm 1), the -th estimate vector of the process is ordered after or concurrently with the -th estimate vector of if (Line 25 in algorithm 1). For other index where , the process will see the -th finalized estimate vector of before finalizing its -th estimate vector, since always includes in its written value to . This means that the -th finalized estimate vector of is ordered before that of . There exists a total order on the finalized -th estimate vectors.
For each index , we divide the processes that have finalized its -th estimate vector into a sequence of sets, where processes having the same -th estimate vector are in the same set. These sets are ordered using the partial order on the finalized r-th estimate vectors. The restriction of to is defined as the concatenation .
The last property is related to extension-based proofs. An assumption of the algorithm to compose two NIIS protocols is that the two NIIS protocols are transparent i.e. the entity that tries to compose them knows everything about the functions . In the definition of extension-based proofs, the protocol that claims to solve is not transparent. We show that if an entity is allowed to interact with NIIS protocols that are not transparent just as a prover does, this entity can still compose two NIIS protocols.
Lemma 3.
When two NIIS protocols are not transparent protocols, if an entity are allowed to submit queries to the protocols that are not transparent, the information obtained through queries is sufficient for the composition of NIIS protocols.
Proof.
When composing two NIIS protocols , updates and finalization of estimate vectors are independent of the protocols . The functions representing protocols are only used when some estimate vector is finalized to determine whether to terminate the simulation of on line 7, 19 of Algorithm 1. By assumption, this entity can submit queries to the protocol to learn about this information.
3.3 Composing multiple NIIS protocols
The composition of multiple NIIS protocols can be derived from the composition of two NIIS protocols. Inductively, is the composition of and . Let be a schedule of from some initial configuration . Let denote the restriction of to , denote the restriction of to . The restriction of to , where , can be defined inductively as the restriction of to . The properties proved in Section 3.2 also apply to the composition of multiple NIIS protocols.
4 Reductions and extension-based proofs
4.1 Simulation
In the following sections, we extend the proof in [10] to more general reductions. Suppose that reduces to and is an augmented extension-based prover that can win against any protocol that claims to solve . Our goal is to construct an augmented extension-based prover for task that can also win against any protocol that claims to solve .
will simulate an interaction between and the composed protocol , and will use restrictions to interact with multiple copies of , as shown in Figure 1. There is an interaction between and the composed protocol in Figure 1. But at the same time, if we regard the elements within the black frame as a prover , the interaction can be seen to happen between and multiple instances of .
If the prover submits a query in the simulation, the prover will reinterpret this query as queries to some instances of and will use the responses of the instances of the protocol and its knowledge about the protocols to generate a response to the original query. The most important idea of this section is that during the interaction between and the composed protocol, interacts with each instance to resume the logical executions of the NIIS protocols. Since the prover is going to win against the composed protocol, there must be something wrong within the workflow. This can only happen in interactions between and some copy of , which means that wins in the interaction with some copy.
4.2 Multiple-instance extension-based proofs
The prover will independently interact with a constant number of instances of the protocol . Note that we are using a different definition of prover here. In the standard definition, an extension-based prover interacts with a single instance of the protocol. A multiple-instance extension-based prover interacts with multiple instances of the same protocol and maintains a separate set of arguments (i.e. all arguments an extension-based prover will maintain during its interaction with a protocol) recording its interaction with each instance of . For example, and , representing the current phases of interactions with and can be different.
A multiple-instances prover submits queries to each instance individually. It can use the response from any query to decide what to do next (such as how to submit a query in the interaction with another instance of ). But we do not allow a multiple-instance prover to use responses from different instances to produce a conflict even when the protocol responds with different output values for a single schedule in its interaction with different instances. A multiple-instance prover wins if it can win in the interaction with some instance using only the information obtained from this instance. Otherwise, the protocol wins. It is easy to see that a multiple-instance extension-based prover is at least as powerful as an extension-based prover since a multiple-instance extension-based prover can choose to interact with one instance only.
4.3 Construction of
Let be a schedule of the composed protocol from some initial configuration to some configuration . The restriction of to a protocol or is defined in Section 3.3, denoted by and . By Lemma 3, given a schedule of the composed protocol, the prover can compute the restriction of to any or .
An initial configuration of is defined as compatible with some configuration of if the output value of every process terminated in is the input value of the same process in . An initial configuration of is defined to be compatible with some configuration of if the output value of every process terminated in is the input value of the same process in .
In the simulation, maintains the following invariant. Suppose that has reached the configuration of the composed protocol . Then there exist initial configurations of the protocols such that, for all , is compatible with , is compatible with , and has reached configuration in its interaction with . Let denote the current phase of the simulated interaction, and let denote the current phase of for each . is a prefix of for each .
At the beginning of the simulation, starts with an empty schedule and has reached the initial configurations of the composed protocol . For each , the interaction between and also starts with an empty schedule and has reached the initial configurations of . Since every initial configuration of is compatible with every initial configuration of , the invariant holds at the start of phase 1 of the simulated interaction. We will discuss the strategy that the prover will use in interactions with these instances of when submits a query, submits an assignment query, or ends a phase in the simulation.
4.3.1 Responding to queries
Suppose that the prover submits a query in phase of the simulated interaction, where is some configuration and is a set of processes that are poised to access the same IS object. The prover must respond with the values of the processes in in the configuration resulting from scheduling from in the composed protocol. We can express the configuration as where is an initial configuration since the configuration has been reached in phase . Let . The invariant holds before the query: Each interaction instance has reached some configuration where is an initial configuration of compatible with . And is compatible with .
The processes in in the configuration of the composed protocol can be simulating different protocols as described in Section 3.1. For each process in , the NIIS protocol that is simulating can be calculated. Therefore, we can separate the processes in into groups . For example, consists of the processes that simulate . If some process in some group or finalizes its current estimate vector (or is simulating the first protocol ) after accessing the new IS object, takes a step in its current simulated NIIS protocol. Otherwise, it will not take a step in its current simulation. Let and be the set of processes that take a step in the simulated protocol and , respectively. It is easy to see that and . Let be the processes in that are poised to access the -th simulated IS object. And with the same definition, we have . There are several cases, depending on the steps that the processes in or take in the simulation.
If processes in simulate some and do not execute the last step, they still simulate after taking a step. Let be the configuration resulting from scheduling from . No more processes terminate in the simulated execution of , and is compatible with . The invariant continues to hold. returns the states of in to .
If processes in simulate some and execute the last step, each process will output a value and terminate in the simulation of since processes terminate after accessing the same number of IS objects in any execution of (argued in the beginning of Section 3). Let be the configuration resulting from scheduling from . returns the states of in to . has to be changed since more processes have been terminated in the simulation of . We can choose a new initial configuration of in which each newly terminated process will use the output of as input and every other process has the same input as the original . The new initial configuration is compatible with . The newly terminated processes do not appear in , so is a valid schedule from the new initial configuration . Invariant holds in this case.
Suppose that the processes in simulate some . The prover can submit the query to the protocol and return a response to . If no process terminates in the simulation, the invariant holds, since is the new restriction to and will not change the initial values of active processes in the simulation of or . Otherwise, some processes in terminate in the simulation of , and the initial configuration of must be changed. For each terminated process in , the input of is the output of . Let be the configuration resulting from scheduling from . The new initial configuration of is compatible with . The invariant still holds.
The prover may submit multiple queries for different to some protocol . Operations on different simulated IS objects will not affect each other. Therefore, submitting these queries in different orders will not change the response of each query and the internal variables (such as the set of configurations reached in phase ) of the interaction between and . Therefore, the invariant holds after all these queries.
4.3.2 Responding to assignment queries
Suppose that the prover submits an assignment query in phase of the simulated interaction, where is a set of processes and is a function from a subset of to the output values. The prover has to reply to whether there exists a -only schedule from to a configuration in which the output value of each process in is . We will say that this resulting configuration satisfies the requirement of . Since will not reach any new configuration to respond to assignment queries, the invariant will continue to hold.
Let be the schedule from some initial configuration to . By the invariant, for , has reached the configuration in the -th interaction with , for some initial configuration of protocol compatible with , where and are restrictions to and . And is compatible with .
The prover will treat all protocols and as black boxes that allow assignment queries. This is possible for each since the prover can submit assignment queries to protocol . The prover knows everything about the protocol , so assignment queries are also possible for . We regard protocols of both types as black boxes to simplify our proof. At first, the prover computes a set of assignment queries to (note that does not appear), denoted by . The prover repeats this computation by removing the last black box until only one black box remains. We define as the original query .
First, computes , which is the set of assignment queries to . In the following discussions, we emphasize that schedules for different protocols are used. Whenever we talk about a schedule, we explicitly mention the protocol. Let be some initial configuration of the protocol compatible with , where there is a -only schedule of from to a configuration that satisfies the requirement of . Let denote the set of processes obtained from by removing the processes that appear in .
Let be the configuration of the composed protocol (note that is removed here), where the processes in are in the same state as the configuration and the processes in have terminated with their input values in . Intuitively, suppose that the configuration is reached from some initial configuration by a schedule , then is also reached from by , where terminated processes omit the additional steps assigned by the schedule. Now we will prove that there exists a -only schedule of the composed protocol from to some configuration where the output values of are the input values of if and only if there exists a -only schedule of from to some configuration whose output values satisfy .
Suppose that there is a -only schedule of from to a configuration whose output values are the input values of . can be used directly as a schedule of . We cannot concatenate the schedule and , since (a schedule of the protocol ) cannot be used directly as a schedule of . However, we can construct a -only schedule of whose restriction to is . Let , then is defined as such that for each set of processes in , processes in concurrently access IS objects until they all finalize their -th estimate vectors when they are poised to access the -th IS object in the simulation of . Their estimate vectors are the same according to the checks performed when an estimate vector is finalized. is a -only schedule from to a configuration that satisfies the requirement of the function .
If there is a -only schedule from to some configuration that satisfies the requirement of , can be seen as an output configuration of the last protocol . Therefore, there exists an initial configuration of the protocol compatible with , and there is a -only schedule of from to . Consider the -only schedule from to of the composed protocol, where each is a set of processes. We will construct a -only schedule based on by stopping the processes that simulate from taking actions. Let be a sequence, where is the set of processes that simulate in the configuration reached from by the schedule . The processes in already simulate the protocol , so . The schedule is a -only schedule of the composed protocol. Deleting the processes in will not change the estimate vectors finalized by processes that do not simulate , since the processes in write only information about the simulation of , which will not affect the simulation of previous NIIS protocols. Therefore, is a -only schedule from to a configuration where the output values are the input values of .
For each such initial configuration , we can submit an assignment query to the composed protocol in which is defined as a function from the processes in to their output values in configuration . If a -only schedule is returned, there is a -only schedule for the assignment query to . Otherwise, the prover receives the response . consists of all these assignment queries .
We continue to trace back: Suppose that is already calculated. For each assignment query in , the prover computes each initial configuration . has two requirements. It must be compatible with where is the initial configuration (some or in the invariant) of the -th black box and is the restriction (some or in the invariant) to this black box, and there must exist a -only schedule of the -th black box from to a configuration that satisfies the function , where is the restriction of to the -th black box. To decide whether such a -only schedule exists, the prover can submit assignment queries to the -th black box. Let denote the set of processes obtained from by removing the processes in . For each initial configuration , there is an assignment query in which is defined as a function from the processes in to the values in the configuration . As proved in the above example, there is a -only schedule from to a configuration whose output values are the input values of if and only if there is a -only schedule that can serve as a response to the assignment query . consists of all these assignment queries .
This procedure ends when is computed. If is not empty, there exists a -only schedule from to some configuration that satisfies the requirement of . Otherwise, the prover gets a response of .
4.3.3 Ending phases
Suppose that the prover decides to end its current phase by choosing a configuration of the composed protocol . By the invariant, has reached configuration in the -th interaction with protocol , for some initial configuration of .
For that does not have an interaction with during the phase of the simulation, the prover does nothing. For a protocol instance in which at least one process has taken a simulation step during the schedule of the composed protocol, the prover has reached the configuration . The prover ends phase by choosing configuration , sets and proceeds to the next phase in the interaction with .
4.3.4 The prover will win
The prover will finally win in the simulated interaction with the composed protocol . We will analyze all possible circumstances and show that will win against one of the instances of the protocol .
The first case is that the prover finds a configuration, , in which the output values violate the specification of the task . For example, the processes in output different values when is the consensus task. By the invariant, the prover has reached configuration in the interaction with . Suppose that for each interaction instance, the output values of the processes in satisfy the task specification of . The output values in configuration will satisfy the task specification of as reduces to , which is a contradiction. Therefore, there exists an interaction with some that reaches a configuration with incorrect output values. The prover finds a violation of the task specification and wins.
The second case is that the prover constructs an infinite chain of queries in the interaction. Each protocol is wait-free, so an infinite schedule is not possible in it. Estimation vectors will not cause an infinite schedule of the composed protocol, as proved in [10]. Therefore, there must be an interaction with some instance in which the prover also constructs an infinite chain of queries. In this situation, the prover wins.
The last case is that the prover constructs infinite phases in the simulation. By definition, can submit finitely many queries or assignment queries in one phase. Each time the prover ends its phase by choosing a schedule, at least one step is taken by some set of processes. Since each protocol is wait-free, the prover can only end a finite number of phases by simulating only these protocols. For other phases, there must be some protocol that will make progress and, therefore, end its current phase after the prover ends a finite number of phases (because an estimate vector can take several rounds to finalize). The number of protocol instances is finite, so there must be an interaction with some instance in which the prover also constructs infinite phases. The prover still wins.
Theorem 4.
If a task reduces to a task using multiple instances of task and there is an augmented extension-based proof of the impossibility of solving the task in a wait-free manner in the NIIS model, then there is an multiple-instance extension-based proof of the impossibility of solving the task in a wait-free manner in the NIIS model.
5 Conclusions
In this paper, we partially solve an open question proposed in [10]. If there is a reduction using multiple instances of from to and there is no multiple-instance extension-based proof for , then there is no augmented extension-based proof for . Although many reductions that appear in the literature reduce to a single instance of a problem, our result applies to reductions that reduce to a constant number of different instances of that problem. An open problem that remains is to extend our results to more general reductions (such as Turing reductions). Another open problem is whether multiple-instance extension-based provers are strictly more powerful than extension-based provers.
References
- [1] Yehuda Afek, Hagit Attiya, Danny Dolev, Eli Gafni, Michael Merritt, and Nir Shavit. Atomic snapshots of shared memory. J. ACM, 40(4):873–890, September 1993. doi:10.1145/153724.153741.
- [2] Dan Alistarh, James Aspnes, Faith Ellen, Rati Gelashvili, and Leqi Zhu. Why extension-based proofs fail. Proceedings of the 51’st Annual ACM Symposium on Theory of Computing (STOC), pages 986–996, 2019. doi:10.1145/3313276.3316407.
- [3] Dan Alistarh, James Aspnes, Faith Ellen, Rati Gelashvili, and Leqi Zhu. Why extension-based proofs fail. SIAM Journal on Computing, 52(4):913–944, 2023. doi:10.1137/20M1375851.
- [4] Dan Alistarh, Faith Ellen, and Joel Rybicki. Wait-free approximate agreement on graphs. In Structural Information and Communication Complexity: 28th International Colloquium, SIROCCO 2021, Wrocław, Poland, June 28 – July 1, 2021, Proceedings, pages 87–105, Berlin, Heidelberg, 2021. Springer-Verlag. doi:10.1007/978-3-030-79527-6_6.
- [5] Hagit Attiya, Armando Castañeda, and Sergio Rajsbaum. Locally solvable tasks and the limitations of valency arguments. Journal of Parallel and Distributed Computing, 176:28–40, 2023. doi:10.1016/j.jpdc.2023.02.002.
- [6] Hagit Attiya, Pierre Fraigniaud, Ami Paz, and Sergio Rajsbaum. One Step Forward, One Step Back: FLP-Style Proofs and the Round-Reduction Technique for Colorless Tasks. In Rotem Oshman, editor, 37th International Symposium on Distributed Computing (DISC 2023), volume 281 of Leibniz International Proceedings in Informatics (LIPIcs), pages 4:1–4:23, Dagstuhl, Germany, 2023. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.DISC.2023.4.
- [7] Elizabeth Borowsky and Eli Gafni. Generalized flp impossibility result for t-resilient asynchronous computations. In Proceedings of the Twenty-Fifth Annual ACM Symposium on Theory of Computing, STOC ’93, pages 91–100, New York, NY, USA, 1993. Association for Computing Machinery. doi:10.1145/167088.167119.
- [8] Elizabeth Borowsky and Eli Gafni. Immediate atomic snapshots and fast renaming. In Proceedings of the Twelfth Annual ACM Symposium on Principles of Distributed Computing, PODC ’93, pages 41–51, New York, NY, USA, 1993. Association for Computing Machinery. doi:10.1145/164051.164056.
- [9] Elizabeth Borowsky and Eli Gafni. A simple algorithmically reasoned characterization of wait-free computation (extended abstract). In Proceedings of the Sixteenth Annual ACM Symposium on Principles of Distributed Computing, PODC ’97, pages 189–198, New York, NY, USA, 1997. Association for Computing Machinery. doi:10.1145/259380.259439.
- [10] Kayman Brusse and Faith Ellen. Reductions and extension-based proofs. In Proceedings of the 2021 ACM Symposium on Principles of Distributed Computing, PODC’21, pages 497–507, New York, NY, USA, 2021. Association for Computing Machinery. doi:10.1145/3465084.3467906.
- [11] Soma Chaudhuri. More choices allow more faults: Set consensus problems in totally asynchronous systems. Inf. Comput., 105(1):132–158, July 1993. doi:10.1006/inco.1993.1043.
- [12] Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson. Impossibility of distributed consensus with one faulty process. J. ACM, 32(2):374–382, April 1985. doi:10.1145/3149.214121.
- [13] Eli Gafni, Sergio Rajsbaum, and Maurice Herlihy. Subconsensus tasks: Renaming is weaker than set agreement. In Proceedings of the 20th International Conference on Distributed Computing, DISC’06, pages 329–338, Berlin, Heidelberg, 2006. Springer-Verlag. doi:10.1007/11864219_23.
- [14] Maurice Herlihy and Nir Shavit. The topological structure of asynchronous computability. J. ACM, 46(6):858–923, November 1999. doi:10.1145/331524.331529.
- [15] Gunnar Hoest and Nir Shavit. Towards a topological characterization of asynchronous complexity. In Proceedings of the Sixteenth Annual ACM Symposium on Principles of Distributed Computing, PODC ’97, pages 199–208, New York, NY, USA, 1997. Association for Computing Machinery. doi:10.1145/259380.259440.
- [16] Shihao Liu. The Impossibility of Approximate Agreement on a Larger Class of Graphs. In Eshcar Hillel, Roberto Palmieri, and Etienne Rivière, editors, 26th International Conference on Principles of Distributed Systems (OPODIS 2022), volume 253 of Leibniz International Proceedings in Informatics (LIPIcs), pages 22:1–22:20, Dagstuhl, Germany, 2023. Schloss Dagstuhl – Leibniz-Zentrum für Informatik. doi:10.4230/LIPIcs.OPODIS.2022.22.
- [17] Michael Saks and Fotios Zaharoglou. Wait-free k-set agreement is impossible: The topology of public knowledge. SIAM J. Comput., 29(5):1449–1483, March 2000. doi:10.1137/S0097539796307698.
- [18] Yusong Shi and Weidong Liu. Colorless tasks and extension-based proofs, 2024. arXiv:2303.14769.
