This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Partial Product Updates for Agents of Detectable Failure and Logical Obstruction to Task Solvability

   Daisuke Nakai     Masaki Muramatsu     Susumu Nishimura   
 
Dept. Math., Graduate School of Science, Kyoto University
Corresponding author: [email protected]
Abstract

The logical method proposed by Goubault, Ledent, and Rajsbaum provides a novel way to show the unsolvability of distributed tasks by means of a logical obstruction, which is an epistemic logic formula describing the reason of unsolvability. In this paper, we introduce the notion of partial product update, which refines that of product update in the original logical method, to encompass distributed tasks and protocols modeled by impure simplicial complexes. With this extended notion of partial product update, the original logical method is generalized so that it allows the application of logical obstruction to show unsolvability results in a distributed environment where the failure of agents is detectable. We demonstrate the use of the logical method by giving a concrete logical obstruction and showing that the consensus task is unsolvable by the single-round synchronous message-passing protocol.

1 Introduction

The solvability of distributed tasks is a fundamental problem in the theory of distributed computing, and several proof methods for showing unsolvability have been developed. The most classical is based on the valency argument [2, 5]: If we assume the solvability of a task, it implies a contradictory set of outputs to be produced along concurrent execution paths. Another method is the one that uses the topological model [6]: In the topological method, the computation of a distributed task or a protocol is modeled by a function over simplicial complexes representing the nondeterministic sets of states of concurrently running agents, and the unsolvability of a task is demonstrated by a topological inconsistency that is implied by a hypothetical existence of a solution to the task.

In addition to these precursors, a new method, called the logical method, has recently been proposed by Goubault, Ledent, and Rajsbaum [3]. They proposed to discuss the structure of distributed computation in a Kripke model of epistemic knowledge, which is derived from the topological model of simplicial complex. They formulated the distributed task and protocol using the so-called product update models, which originate from the study of dynamic epistemic logic [11]. The logical method provides a novel way to show the unsolvability of distributed tasks: The unsolvability follows from a logical obstruction, i.e., a formula that describes the reason for the unsolvability in the formal language of epistemic logic.

Their logical method, however, only applies to the tasks and protocols where the possible failure of distributed agents is insignificant for the discussion of unsolvability. The semantics of epistemic logic is given by the so-called epsistemic models, where an epistemic model is a Kripke model whose possible worlds are structured by equivalence relations over them. They also showed that the epistemic models used in the logical method and the pure simplicial complexes used in the topological method are isomorphic models. The purity means that each facet is of the same dimension, that is, each possible global state of a distributed system consists of the same number of live agents.

This implies that the epistemic models in [3] are unaware of failures, since we need impure simplicial complexes to model ‘dead’ agents that are missing from a facet. Despite the innocence of failure, the epistemic models can argue certain significant unsolvability results, including those for the consensus task and kk-set agreement tasks by a wait-free protocol in an asynchronous environment, where a ‘dead’ agent can be regarded as just infinitely slow in execution. (See Section 1.1.3 of [8] for further discussion.)

Later in [4], the same authors devised partial epistemic models, whose possible worlds are structured by partial equivalence relations (PERs), which are subordinate equivalence relations that are not necessarily reflexive, and argued that partial epistemic models are appropriate for modeling the possible failure of agents. Partial epistemic models inherit several virtues from epistemic models. They are isomorphic to the topological model of impure simplicial complexes; They provide the semantics for the epistemic logic with axiom system KB4n\mathbf{\mathrm{KB4_{n}}}, as so do epistemic models for axiom system S5n\mathbf{\mathrm{S5_{n}}} [1, 11]; Furthermore, they enjoy the knowledge gain property, which states that the knowledge expressed by an adequate class of formulas never increases along a morphism over the models.

However, the framework of logical method has not been presented for partial epistemic models in [4]. The notion of product update relevant to partial epistemic models is needed for the definition of task solvability, but they did not present it.

In this paper, we introduce the notion of partial product update, which refines the original product update [3]. Using partial product update models, we give a logical definition of task solvability and thereby provide the logical method for proving task unsolvability. Furthermore we present a concrete logical obstruction and show that the consensus task is not solvable by the synchronous message passing protocol [7].

The partial product update model refines the original model to allow coherent definitions of distributed tasks and protocols in a distributed environment in which the exact set of dead agents is detectable. In a product update model [𝐀]{\mathcal{I}}\left[{\mathbf{A}}\right] of [3], a task or a protocol is specified by a set of products (X,t)(X,t) where an action tt in 𝐀\mathbf{A} represents a possible output for the input XX in the input model \mathcal{I}. In contrast, in partial epistemic models, an action tt should be associated with not necessarily a single input but with a set of inputs that are indistinguishable by the agents that are alive in tt. For this, we define a partial product update model {𝐀}{\mathcal{I}}\left\{{\mathbf{A}}\right\} as a set of products of the form ([X]t,t)([X]_{t},t), where [X]t[X]_{t} is an appropriate equivalence class of XX determined with respect to the set of agents that are alive in tt.

Using partial product update models, we define task solvability by the existence of a morphism that mediates the partial product update model of a protocol and that of a task. We will show that this definition is equivalent to the topological definition of task solvability in the following sense: Given a task and a protocol as functions over simplicial complexes, we derive an action model and a partial product update model for each of them. Then a simplicial map that defines the solvability in the topological model exists if and only if a mediating morphism over partial epistemic models exists. This definition of task solvability using partial product updates refines the one using product updates so that it allows a detectable set of failed agents. Furthermore, likewise in [3], it provides the logical method that allows a logical obstruction to show the unsolvability of a task.

We demonstrate the use of logical obstruction in partial product update models by showing that the consensus task is unsolvable by the single-round synchronous message passing protocol. In the synchronous message passing protocol [7], each agent sends copies of its local value to other agents synchronously. Unlike wait-free protocols in an asynchronous environment, a crash of an agent in a synchronous environment is detectable by other live agents, since the failure of message delivery from a dead agent can be detected within a bounded period of time. This gives rise to an impure simplicial complex model, as depicted in Figure 1. In order to argue unsolvability for such an impure simplicial complex in partial epistemic model, we construct a partial product update from an action model whose actions are represented by posets of rank at most 11. We present a concrete epistemic logic formula that serves as a logical obstruction that refutes the solvability of the consensus task.

Refer to caption
Figure 1: An impure simplicial complex of the synchronous message passing protocol for 33 agents, with 0-dimensional facets being omitted

We note that the previous work [7] analyzes more precisely the (un)solvability of kk-set agreement tasks by the rr-round synchronous message passing protocol, for varying kk and rr, using the topological method. In the present paper, we only demonstrate the unsolvability of the consensus task (i.e., the 11-set agreement task) by the single-round synchronous message passing protocol. To show the other unsolvability results, we would need to further refine the logical method presented in this paper, as it has been done for the logical method in asynchronous environments, e.g., [9, 12].

The rest of the paper is organized into the following sections. Section 2 reviews the two previous models of distributed computing, namely, the topological models and the epistemic models. In Section 3, we introduce the notion of partial product update and give the definition of task solvability in partial epistemic models. We also show that this definition of task solvability is equivalent to the standard one given in terms of the topological method. (The formal proof of the equivalence is given in Appendix A.) Section 4 defines the partial product update model for the synchronous message passing protocol, where the action model consists of actions that are represented by posets of rank at most 11. Section 5 gives a concrete logical obstruction and proves that the consensus task is not solvable by the single-round synchronous message passing protocol. Finally Section 6 concludes the paper and indicates the direction of future research.

2 Partial Epistemic Model for Epistemic Logic

Throughout this paper, we assume a distributed system consisting of nn (n>1n>1) agents, which are distinguished by the identifiers taken from the set 𝖠𝗀={0,,n1}\mathsf{Ag}=\{0,\ldots,n-1\}. We say ‘agent aa’ to refer to the agent with id a𝖠𝗀a\in\mathsf{Ag}.

2.1 Topological model of distributed computing

In the topological method [6], distributed systems are modeled by simplicial complexes. A global state of a distributed system is modeled by a simplex, i.e., a nonempty set of vertexes, where each vertex represents the local state of a particular agent. The nonderteministic set of global states of a distributed system is modeled by a simplicial complex, a set of simplexes that is closed under set inclusion. The topological model uses the so called chromatic simplicial complex, whose vertexes are properly ‘colored’ with agent ids.

Definition 2.1 (chromatic simplicial complex).

A chromatic simplicial complex 𝒞\mathcal{C} is a triple V,S,χ\langle V,S,\chi\rangle consisting of a set VV of vertexes, a set SS of simplexes, and a coloring map χ:V𝖠𝗀\chi:V\to\mathsf{Ag} that satisfy:

  • SS is the set of simplexes, i.e., a set of nonempty subsets of VV such that XSX\in S and YX\emptyset\subsetneq Y\subseteq X implies YSY\in S;

  • For every XSX\in S and u,vXu,v\in X, χ(u)=χ(v)\chi(u)=\chi(v) implies u=vu=v.

For brevity, we often write complexes (resp., simplexes) to mean chromatic simplicial complexes (resp., chromatic simplexes).

A simplex XX is of dimension dd, if |X|=d+1\lvert X\rvert=d+1. The dimension of a complex 𝒞\mathcal{C} is the maximum dimension of the simplexes contained in 𝒞\mathcal{C}. A simplex XX is called a facet of 𝒞\mathcal{C}, if XX is a maximal simplex, i.e., 𝒞\mathcal{C} contains no facet that is properly larger than XX. We write (𝒞)\mathcal{F}(\mathcal{C}) for the set of facets of 𝒞\mathcal{C}. A complex is called pure (of dimension n1n-1) if all facets are of the same dimension n1n-1; otherwise, the complex is called impure. An impure complex contains a facet of dimension less than n1n-1. Such a facet represents a global state of the distributed system where some agents are ‘dead’ due to crash.

Given complexes 𝒞=V,S,χ\mathcal{C}=\langle V,S,\chi\rangle and 𝒞=V,S,χ\mathcal{C}^{\prime}=\langle V^{\prime},S^{\prime},\chi^{\prime}\rangle, a simplicial map δ:𝒞𝒞\delta:\mathcal{C}\to\mathcal{C}^{\prime} is a color-preserving map from VV to VV^{\prime} such that:

  • f(X)Sf(X)\in S^{\prime} for every XSX\in S;

  • χ(f(v))=χ(v)\chi^{\prime}(f(v))=\chi(v) for every vVv\in V.

2.2 Partial epistemic model semantics for epistemic logic

We are concerned with the analysis of distributed computability with epistemic logic [1], a propositional logic augmented with a knowledge modality.

Definition 2.2 (The syntax of epistemic logic).

We assume the set 𝖠𝗍\mathsf{At} is a disjoint union of atomic propositions indexed by agents, i.e., 𝖠𝗍=a𝖠𝗀𝖠𝗍a\mathsf{At}=\bigcup_{a\in\mathsf{Ag}}\mathsf{At}_{a}. For A𝖠𝗀A\subseteq\mathsf{Ag}, we write 𝖠𝗍A\mathsf{At}_{A} for the set aA𝖠𝗍a\bigcup_{a\in A}\mathsf{At}_{a} of atomic propositions concerning the subset AA of agents.

The set K\mathcal{L}_{\mathrm{K}} of epistemic logic formulas are defined by the following BNF grammar:

φ::=p¬φφφφφKaφ(p𝖠𝗍,a𝖠𝗀).\varphi::=p\mid\neg\varphi\mid\varphi\wedge\varphi\mid\varphi\vee\varphi\mid\mathop{\mathrm{K}_{a}}{\varphi}\qquad(p\in\mathsf{At},\>a\in\mathsf{Ag}).

As usual, the implication φφ\varphi\Rightarrow\varphi^{\prime} is logically equivalent to ¬φφ\neg\varphi\vee\varphi^{\prime} and 𝖿𝖺𝗅𝗌𝖾\mathsf{false} to p¬pp\wedge\neg p, for some p𝖠𝗍p\in\mathsf{At}. For a finite set of formulas G={φ1,,φk}G=\{\varphi_{1},\cdots,\varphi_{k}\}, we write G\bigwedge G for i=1kφi\bigwedge_{i=1}^{k}\varphi_{i} and G\bigvee G for i=1kφi\bigvee_{i=1}^{k}\varphi_{i}.

For a𝖠𝗀a\in\mathsf{Ag} and B𝖠𝗀B\subseteq\mathsf{Ag}, we write 𝖺𝗅𝗂𝗏𝖾(a)\operatorname{\mathsf{alive}}({a}) to abbreviate the formula ¬Ka𝖿𝖺𝗅𝗌𝖾\neg\mathop{\mathrm{K}_{a}}\mathsf{false} and also 𝖺𝗅𝗂𝗏𝖾(B)\operatorname{\mathsf{alive}}({B}) to abbreviate aB𝖺𝗅𝗂𝗏𝖾(a)\bigwedge_{a\in B}\operatorname{\mathsf{alive}}({a}). The formula 𝖺𝗅𝗂𝗏𝖾(a)\operatorname{\mathsf{alive}}({a}) (resp., 𝖺𝗅𝗂𝗏𝖾(B)\operatorname{\mathsf{alive}}({B})) is intended to describe that agent aa (resp., all agents in BB) are alive.

In the subsequent discussion, we are concerned with a particular subclass K,𝖺𝗅𝗂𝗏𝖾+\mathcal{L}_{\mathrm{K},\mathsf{alive}}^{+} of formulas, called guarded positive epistemic formulas, given by:

φ::=𝖺𝗅𝗂𝗏𝖾(B)ψφφφφKaφ(a𝖠𝗀,B𝖠𝗀),\varphi::=\operatorname{\mathsf{alive}}({B})\Rightarrow\psi\mid\varphi\wedge\varphi\mid\varphi\vee\varphi\mid\mathop{\mathrm{K}_{a}}{\varphi}\qquad(a\in\mathsf{Ag},~{}B\subseteq\mathsf{Ag}),

where ψ\psi ranges over pure propositional formulas whose atomic formulas are restricted to those concerning agents in BB, namely,

ψ::=p¬ψψψψψ(p𝖠𝗍B).\psi::=p\mid\neg\psi\mid\psi\wedge\psi\mid\psi\vee\psi\qquad(p\in\mathsf{At}_{B}).

Following [4], below we define the semantics of epistemic logic in a partial epistemic model.

Definition 2.3 (partial epistemic model).

A partial epistemic frame W,\langle W,\sim\rangle is a pair consisting of:

  • A nonempty finite set WW of possible worlds;

  • An indistinguishability relation \sim, which is a family of binary relations {a}a𝖠𝗀\{{\sim_{a}}\}_{a\in\mathsf{Ag}} over WW where each a\sim_{a} is a partial equivalence relation (PER), i.e., a\sim_{a} is a symmetric and transitive, but not necessarily reflexive relation.

A partial epistemic model =W,,L\mathcal{M}=\langle W,\sim,L\rangle is a triple that augments a partial epistemic frame W,\langle W,\sim\rangle with a function L:W2𝖠𝗍L:W\to 2^{\mathsf{At}}. The function LL assigns a set L(w)L(w) of true atomic propositions to each world wWw\in W.

When waww\sim_{a}w^{\prime} holds in a partial epistemic model, it means that agent aa is alive in both of the possible worlds ww and ww^{\prime} and it cannot distinguish between these worlds. Particularly, w≁aww\not\sim_{a}w implies that an agent aa is dead in a possible world ww. We write w¯\overline{w} for the set of agents that is alive in ww, i.e., w¯={a𝖠𝗀waw}\overline{w}=\{a\in\mathsf{Ag}\mid w\sim_{a}w\}. For A𝖠𝗀A\subseteq\mathsf{Ag}, we also write wAww\sim_{A}w^{\prime} to mean waww\sim_{a}w^{\prime} for every aAa\in A.

Partial epistemic models generalize the usual epistemic models: Indistinguishability relations are given by equivalence relations instead of PERs, which means that every agent is alive in epistemic models.

Definition 2.4.

Let =W,,L\mathcal{M}=\langle W,\sim,L\rangle be a partial epistemic model. Given ww\in\mathcal{M} and φK\varphi\in\mathcal{L}_{\mathrm{K}}, the satisfaction relation ,wφ\mathcal{M},w\models\varphi, which reads φ\varphi is true in the possible world ww of \mathcal{M}, is defined by induction on the structure of φ\varphi as follows.

,wp\displaystyle\mathcal{M},w\models p  iff pL(W)\displaystyle\quad\text{ iff }\quad p\in L(W)
,w¬φ\displaystyle\mathcal{M},w\models\neg\varphi  iff ,w⊧̸φ\displaystyle\quad\text{ iff }\quad\mathcal{M},w\not\models\varphi
,wφφ\displaystyle\mathcal{M},w\models\varphi\wedge\varphi^{\prime}  iff ,wφ and ,wφ\displaystyle\quad\text{ iff }\quad\mathcal{M},w\models\varphi\text{ and }\mathcal{M},w\models\varphi^{\prime}
,wφφ\displaystyle\mathcal{M},w\models\varphi\vee\varphi^{\prime}  iff ,wφ or ,wφ\displaystyle\quad\text{ iff }\quad\mathcal{M},w\models\varphi\text{ or }\mathcal{M},w\models\varphi^{\prime}
,wKaφ\displaystyle\mathcal{M},w\models\mathop{\mathrm{K}_{a}}{\varphi}  iff ,wφ for every wW satisfying waw.\displaystyle\quad\text{ iff }\quad\mathcal{M},w^{\prime}\models\varphi\text{ for every $w^{\prime}\in W$ satisfying $w\sim_{a}w^{\prime}$}.

We write φ\mathcal{M}\models\varphi to mean φ\varphi is valid in \mathcal{M}, i.e., ,wφ\mathcal{M},w\models\varphi for every wWw\in W.

Partial epistemic models form a category whose objects are partial epistemic models and morphisms are the functions defined as follows. A morphism ff from =W,,L\mathcal{M}=\langle W,\sim,L\rangle to =W,,L\mathcal{M}^{\prime}=\langle W^{\prime},\sim^{\prime},L^{\prime}\rangle is a function f:W2Wf:W\to 2^{W^{\prime}} satisfying the following properties:

  • (Preservation of \sim) For all a𝖠𝗀a\in\mathsf{Ag} and w,wMw,w^{\prime}\in M, waww\sim_{a}w^{\prime} implies uauu\sim_{a}^{\prime}u^{\prime} for every uf(w)u\in f(w) and uf(w)u^{\prime}\in f(w^{\prime}).

  • (Saturation) For all wWw\in W, there exists wf(w)w^{\prime}\in f(w) such that f(w)=𝗌𝖺𝗍w¯(w)f(w)=\mathsf{sat}_{\overline{w}}(w^{\prime}), where 𝗌𝖺𝗍U(v)={wWvUw}\mathsf{sat}_{U}(v)=\{w\in W\mid v\sim_{U}w\} is a saturation, the set of all possible worlds that cannot be distinguished from ww by any agent aUa\in U.

  • (Preservation of atomic formulas) For all wMw\in M and wf(w)w^{\prime}\in f(w), L(w)𝖠𝗍w¯=L(w)𝖠𝗍w¯L(w)\cap\mathsf{At}_{\overline{w}}=L^{\prime}(w)\cap\mathsf{At}_{\overline{w}}.

In order to show unsolvability results in this paper, we will use the knowledge gain property, which states that the amount of knowledge is never increased along a morphism from one Kripke model to another. For partial epistemic models, the knowledge gain property holds for any guarded positive formula [4].

Proposition 2.5 (knowledge gain).

Let =W,,L\mathcal{M}=\langle W^{\mathcal{M}},\sim^{\mathcal{M}},L^{\mathcal{M}}\rangle and 𝒩=W𝒩,𝒩,L𝒩\mathcal{N}=\langle W^{\mathcal{N}},\sim^{\mathcal{N}},L^{\mathcal{N}}\rangle be partial epistemic models. Let f:𝒩f:\mathcal{M}\to\mathcal{N} be a morphism such that wf(w)w^{\prime}\in f(w) for all ww\in\mathcal{M} and w𝒩w^{\prime}\in\mathcal{N}. Then 𝒩,wφ\mathcal{N},w^{\prime}\models\varphi implies ,wφ\mathcal{M},w\models\varphi for any guarded positive epistemic formula φK,𝖺𝗅𝗂𝗏𝖾+\varphi\in\mathcal{L}_{\mathrm{K},\mathsf{alive}}^{+}.

2.3 Simplicial models and the equivalence with partial epistemic models

From the topological structure of a given (not necessarily pure) simplicial complex, we can derive simplicial models [4].

Definition 2.6 (simplicial models).

A simplicial model 𝒞\mathcal{C} is a quadruple V,S,χ,\langle V,S,\chi,\ell\rangle consisting of:

  • The triple V,S,χ\langle V,S,\chi\rangle of the underlying complex;

  • The labeling \ell that assigns a set (X)\ell(X) of atomic propositions to each facet XX of the complex.

The set (X)\ell(X) of atomic propositions determines the local states of agents in a given global state represented by XX.

From a simplicial model 𝒞=V,S,χ,\mathcal{C}=\langle V,S,\chi,\ell\rangle, we can derive a partial epistemic model (𝒞),,L\langle{\mathcal{F}(\mathcal{C}),\sim,L}\rangle such that

  • The set of possible worlds is (𝒞)\mathcal{F}(\mathcal{C}), the set of facets of the complex 𝒞\mathcal{C};

  • The indistinguishability relation is defined by XaYX\sim_{a}Y if and only if aχ(XY)a\in\chi(X\cap Y). That means, the facets XX and YY sharing a common vertex of color aa are indistinguishable by the agent aa;

  • The labeling LL on possible worlds is defined by L(X)=(X)L(X)=\ell(X) for each X(𝒞)X\in\mathcal{F}(\mathcal{C}).

The partial epistemic model derived from a simplicial model in this way is a proper Kripke model. A Kripke model =W,,L\mathcal{M}=\langle W,\sim,L\rangle is called proper if www\neq w^{\prime} implies a𝖠𝗀.w≁aw\exists a\in\mathsf{Ag}.~{}w\not\sim_{a}w^{\prime} for all w,wWw,w^{\prime}\in W. It has been shown that the category 𝒫\mathcal{PM} of proper partial epistemic models is equivalent to the category 𝒮\mathcal{SM} of simplicial models [4], where a morphism ff from 𝒞=V,S,χ,\mathcal{C}=\langle V,S,\chi,\ell\rangle to 𝒞=V,S,χ,\mathcal{C}^{\prime}=\langle V^{\prime},S^{\prime},\chi^{\prime},\ell^{\prime}\rangle in 𝒮\mathcal{SM} is a simplicial map f:𝒞𝒞f:\mathcal{C}\to\mathcal{C}^{\prime} satisfying (X)𝖠𝗍χ(X)=(Y)𝖠𝗍χ(X)\ell(X)\cap\mathsf{At}_{\chi(X)}=\ell^{\prime}(Y)\cap\mathsf{At}_{\chi(X)} for every X(𝒞)X\in\mathcal{F}(\mathcal{C}) and Y(𝒞)Y\in\mathcal{F}(\mathcal{C}^{\prime}) such that f(X)Yf(X)\subseteq Y.

Due to this equivalence, in the sequel we will occasionally confuse simplicial models with proper partial epistemic models. We regard facets of a complex 𝒞\mathcal{C}, say X,Y(𝒞)X,Y\in\mathcal{F}(\mathcal{C}), as possible worlds of the corresponding partial epistemic model and argue the indistinguishability by the property of the facets. For example, XaYX\sim_{a}Y in a partial equivalence model is interpreted as aχ(XY)a\in\chi(X\cap Y); The notation X¯\overline{X}, which denotes the set of live agents in a facet XX of a simplicial model, is given by X¯=χ(X)\overline{X}=\chi(X).

X2X_{2}X1X_{1}X3X_{3}X0X_{0}
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
w1{w_{1}}w0{w_{0}}w2{w_{2}}w3{w_{3}} \scriptstyle\bullet \scriptstyle\circ \scriptstyle\bullet \scriptstyle\circ , \scriptstyle\bullet \scriptstyle\circ \scriptstyle\bullet \scriptstyle\circ \scriptstyle\bullet \scriptstyle\circ \scriptstyle\bullet \scriptstyle\circ , \scriptstyle\bullet \scriptstyle\circ , \scriptstyle\bullet \scriptstyle\circ \scriptstyle\bullet \scriptstyle\circ \scriptstyle\bullet \scriptstyle\circ , \scriptstyle\bullet \scriptstyle\circ ,\scriptstyle\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\scriptstyle\bullet$\hss}\crcr$\scriptstyle\circ$},\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\scriptstyle\bullet$\hss}\crcr$\scriptstyle\circ$}
Figure 2: An impure simplicial model and its corresponding partial epistemic model
Example 2.1.

Figure 2 depicts a simplicial model V,S,χ,\langle{V,S,\chi,\ell}\rangle (on the left) and its corresponding partial epistemic model M,,L\langle{M,\sim,L}\rangle (on the right) for 33 agents with colors 𝖠𝗀={0,1,2}\mathsf{Ag}=\{0,1,2\}. In the figure, agents 0, 11, and 22 are represented by colored nodes \bullet \circ , \bullet \circ , and \bullet \circ , respectively. Throughout the paper, we will follow this coloring convention.

For each i=0,1,2,3i=0,1,2,3, the facet XiX_{i} in the simplicial model corresponds to the possible world wiw_{i} in the partial epistemic model and they have the same set of atomic propositions, i.e., (Xi)=L(wi)\ell(X_{i})=L(w_{i}). If a pair of facets XiX_{i} and XjX_{j} share a node of color aa, the corresponding possible worlds wiw_{i} and wjw_{j} are connected by an edge associated with a node of color aa, meaning that wiawjw_{i}\sim_{a}w_{j}. Particularly, each possible world wiw_{i} has a self-loop colored by aa if and only if the agent aa is alive in wiw_{i}, that is, the corresponding facet XiX_{i} contains a vertex colored by aa.

3 Partial Product Update and Task Solvability

In [3], product update is used to define distributed tasks and protocols. A product update model [𝐀]{\mathcal{I}}\left[{\mathbf{A}}\right] is an epistemic model where each possible world is a pair (X,t)(X,t) of a facet XX of the complex \mathcal{I} and an action tt of the action model 𝐀\mathbf{A} such that the action tt stands for a possible output for the input XX. Task solvability is then defined by the existence of a morphism from the product update model of the protocol to that of the task.

We introduce a generalized construction called partial product update, which applies to partial epistemic models, and thereby refine the logical method so that it can be applied to a larger class of task solvability problem in which agents may die.

3.1 Partial product update

Definition 3.1 (action model).

An action model 𝐀=T,,𝗉𝗋𝖾\mathbf{A}=\langle T,\sim,\mathsf{pre}\rangle is a triple consisting of:

  • A partial epistemic frame T,\langle T,\sim\rangle, where each tTt\in T is called an action;

  • A function 𝗉𝗋𝖾:TK\mathsf{pre}:T\to\mathcal{L}_{\mathrm{K}} that assigns an epistemic formula 𝗉𝗋𝖾(t)\mathsf{pre}(t), called the precondition, to each action tTt\in T.

The precondition 𝗉𝗋𝖾(t)\mathsf{pre}(t) describes the condition for the action tt to occur.

Definition 3.2 (partial product update).

Let =W,,L\mathcal{M}=\langle W^{\mathcal{M}},\sim^{\mathcal{M}},L^{\mathcal{M}}\rangle be a partial epistemic model and 𝐀=W𝐀,𝐀,𝗉𝗋𝖾\mathbf{A}=\langle W^{\mathbf{A}},\sim^{\mathbf{A}},\mathsf{pre}\rangle be an action model, both having a proper partial epistemic frame. A partial product update of \mathcal{M} by 𝐀\mathbf{A}, written {𝐀}{\mathcal{M}}\left\{{\mathbf{A}}\right\}, is a partial epistemic model W,,L\langle W,\sim,L\rangle defined by:

  • W={([X]t𝗉𝗋𝖾,t)XW,tW𝐀,t¯X¯, and ,X𝗉𝗋𝖾t}W=\{(\left[{X}\right]_{t}^{\mathsf{pre}},t)\mid X\in W^{\mathcal{M}},\>t\in W^{\mathbf{A}},\>\overline{t}\subseteq\overline{X},\text{ and }\mathcal{M},X\models\operatorname{\mathsf{pre}}{t}\},

  • ([X]t𝗉𝗋𝖾,t)a([Y]s𝗉𝗋𝖾,s)(\left[{X}\right]_{t}^{\mathsf{pre}},t)\sim_{a}(\left[{Y}\right]_{s}^{\mathsf{pre}},s) iff XaYX\sim^{\mathcal{M}}_{a}Y and ta𝐀st\sim^{\mathbf{A}}_{a}s, and

  • L(([X]t𝗉𝗋𝖾,t))=X[X]t𝗉𝗋𝖾L(X)L\bigl{(}(\left[{X}\right]_{t}^{\mathsf{pre}},t)\bigr{)}=\displaystyle\bigcap_{X^{\prime}\in\left[{X}\right]_{t}^{\mathsf{pre}}}L^{\mathcal{M}}(X^{\prime}),

where [X]t𝗉𝗋𝖾\left[{X}\right]_{t}^{\mathsf{pre}} is the set of facets defined by [X]t𝗉𝗋𝖾={YWXt¯Y and ,Y𝗉𝗋𝖾t}\left[{X}\right]_{t}^{\mathsf{pre}}=\{Y\in W^{\mathcal{M}}\mid X\sim^{\mathcal{M}}_{\overline{t}}Y\text{ and }\mathcal{M},Y\models\operatorname{\mathsf{pre}}{t}\}.

Proposition 3.3.

The partial product update {𝐀}{\mathcal{M}}\left\{{\mathbf{A}}\right\} is a partial epistemic model. In particular, if both \mathcal{M} and 𝐀\mathbf{A} are proper, so is {𝐀}{\mathcal{M}}\left\{{\mathbf{A}}\right\}.

Proof.

Let {𝐀}=W,,L{\mathcal{M}}\left\{{\mathbf{A}}\right\}=\langle W,\sim,L\rangle be a triple, which is constructed from a partial epistemic model =W,,L\mathcal{M}=\langle W^{\mathcal{M}},\sim^{\mathcal{M}},L^{\mathcal{M}}\rangle and an action model 𝐀=W𝐀,𝐀,𝗉𝗋𝖾\mathbf{A}=\langle W^{\mathbf{A}},\sim^{\mathbf{A}},\mathsf{pre}\rangle, as in Definition 3.2.

Let us first show that the relation a\sim_{a} is well-defined, that is, the choice of facet XX in ([X]t𝗉𝗋𝖾,t)(\left[{X}\right]_{t}^{\mathsf{pre}},t) does not affect the relation. Suppose ([X]t𝗉𝗋𝖾,t)a([Y]s𝗉𝗋𝖾,s)(\left[{X}\right]_{t}^{\mathsf{pre}},t)\sim_{a}(\left[{Y}\right]_{s}^{\mathsf{pre}},s), [X]t𝗉𝗋𝖾=[X]t𝗉𝗋𝖾\left[{X}\right]_{t}^{\mathsf{pre}}=\left[{X^{\prime}}\right]_{t}^{\mathsf{pre}}, and [Y]s𝗉𝗋𝖾=[Y]s𝗉𝗋𝖾\left[{Y}\right]_{s}^{\mathsf{pre}}=\left[{Y^{\prime}}\right]_{s}^{\mathsf{pre}}. By the definition, XaYX\sim^{\mathcal{M}}_{a}Y, ,X𝗉𝗋𝖾(t)\mathcal{M},X\models\mathsf{pre}(t), ,X𝗉𝗋𝖾(t)\mathcal{M},X^{\prime}\models\mathsf{pre}(t), ,Y𝗉𝗋𝖾(s)\mathcal{M},Y\models\mathsf{pre}(s), ,Y𝗉𝗋𝖾(s)\mathcal{M},Y^{\prime}\models\mathsf{pre}(s), and ta𝐀st\sim^{\mathbf{A}}_{a}s. Since X[X]t𝗉𝗋𝖾=[X]t𝗉𝗋𝖾X^{\prime}\in\left[{X^{\prime}}\right]_{t}^{\mathsf{pre}}=\left[{X}\right]_{t}^{\mathsf{pre}}, we have XaXX\sim^{\mathcal{M}}_{a}X^{\prime} for all at¯a\in\overline{t}. Similarly, YaYY\sim^{\mathcal{M}}_{a}Y^{\prime} for all at¯a\in\overline{t}. Hence XaXaYaYX^{\prime}\sim^{\mathcal{M}}_{a}X\sim^{\mathcal{M}}_{a}Y\sim^{\mathcal{M}}_{a}Y^{\prime} and therefore ([X]t𝗉𝗋𝖾,t)a([Y]s𝗉𝗋𝖾,s)(\left[{X^{\prime}}\right]_{t}^{\mathsf{pre}},t)\sim_{a}(\left[{Y^{\prime}}\right]_{s}^{\mathsf{pre}},s).

We show that {𝐀}{\mathcal{M}}\left\{{\mathbf{A}}\right\} is a partial epistemic model. It suffices to show that every a\sim_{a} is a PER. This follows immediately from the symmetry and transitivity of a\sim^{\mathcal{M}}_{a} and a𝐀\sim^{\mathbf{A}}_{a}.

Suppose \mathcal{M} and 𝐀\mathbf{A} are both proper models. We show that {𝐀}=W,,L{\mathcal{M}}\left\{{\mathbf{A}}\right\}=\langle W,\sim,L\rangle is a proper model. Assume ([X]t𝗉𝗋𝖾,t),([Y]s𝗉𝗋𝖾,s)W(\left[{X}\right]_{t}^{\mathsf{pre}},t),(\left[{Y}\right]_{s}^{\mathsf{pre}},s)\in W are possible worlds such that ([X]t𝗉𝗋𝖾,t)([Y]s𝗉𝗋𝖾,s)(\left[{X}\right]_{t}^{\mathsf{pre}},t)\neq(\left[{Y}\right]_{s}^{\mathsf{pre}},s), which implies [X]t𝗉𝗋𝖾[Y]s𝗉𝗋𝖾\left[{X}\right]_{t}^{\mathsf{pre}}\neq\left[{Y}\right]_{s}^{\mathsf{pre}} or tst\neq s. It suffices to show that there exists an agent a𝖠𝗀a\in\mathsf{Ag} such that ([X]t𝗉𝗋𝖾,t)≁a([Y]s𝗉𝗋𝖾,s)(\left[{X}\right]_{t}^{\mathsf{pre}},t)\not\sim_{a}(\left[{Y}\right]_{s}^{\mathsf{pre}},s). If tst\neq s, since 𝐀\mathbf{A} is proper, t≁a𝐀st\not\sim^{\mathbf{A}}_{a}s for some a𝖠𝗀a\in\mathsf{Ag}. Thus, ([X]t𝗉𝗋𝖾,t)≁a([Y]s𝗉𝗋𝖾,s)(\left[{X}\right]_{t}^{\mathsf{pre}},t)\not\sim_{a}(\left[{Y}\right]_{s}^{\mathsf{pre}},s). Suppose otherwise, i.e., [X]t𝗉𝗋𝖾[Y]s𝗉𝗋𝖾\left[{X}\right]_{t}^{\mathsf{pre}}\neq\left[{Y}\right]_{s}^{\mathsf{pre}}. We may assume, without loss of generality, that X[Y]t𝗉𝗋𝖾X^{\prime}\not\in\left[{Y}\right]_{t}^{\mathsf{pre}} for some X[X]t𝗉𝗋𝖾X^{\prime}\in\left[{X}\right]_{t}^{\mathsf{pre}}. This implies [X]t𝗉𝗋𝖾=[X]t𝗉𝗋𝖾\left[{X}\right]_{t}^{\mathsf{pre}}=\left[{X^{\prime}}\right]_{t}^{\mathsf{pre}} and ,X𝗉𝗋𝖾t\mathcal{M},X^{\prime}\models\operatorname{\mathsf{pre}}{t}. Hence, X[Y]t𝗉𝗋𝖾X^{\prime}\not\in\left[{Y}\right]_{t}^{\mathsf{pre}} implies X≁aYX^{\prime}\not\sim^{\mathcal{M}}_{a}Y for some agent at¯a\in\overline{t}. Therefore we have ([X]t𝗉𝗋𝖾,t)=([X]t𝗉𝗋𝖾,t)≁a([Y]t𝗉𝗋𝖾,t)=([Y]s𝗉𝗋𝖾,s)(\left[{X}\right]_{t}^{\mathsf{pre}},t)=(\left[{X^{\prime}}\right]_{t}^{\mathsf{pre}},t)\not\sim_{a}(\left[{Y}\right]_{t}^{\mathsf{pre}},t)=(\left[{Y}\right]_{s}^{\mathsf{pre}},s). ∎

The original product update [𝐀]{\mathcal{M}}\left[{\mathbf{A}}\right] [3] is an instance of the partial product update {𝐀}{\mathcal{M}}\left\{{\mathbf{A}}\right\}. When the indistinguishability relations of both \mathcal{M} and 𝐀\mathbf{A} are equivalence relations, rather than partial equivalence relations, and \mathcal{M} is proper, every possible world ([X]t𝗉𝗋𝖾,t)(\left[{X}\right]_{t}^{\mathsf{pre}},t) in {𝐀}{\mathcal{M}}\left\{{\mathbf{A}}\right\} can be identified with (X,t)(X,t) in [𝐀]{\mathcal{M}}\left[{\mathbf{A}}\right]. This is because [X]t𝗉𝗋𝖾={X}\left[{X}\right]_{t}^{\mathsf{pre}}=\{X\}, since t¯=𝖠𝗀\overline{t}=\mathsf{Ag} for all t𝐀t\in\mathbf{A} and \mathcal{M} is proper.

3.2 Task solvability in partial product update models

In the sequel, we assume that the set 𝖠𝗍\mathsf{At} of atomic propositions is given by 𝖠𝗍=a𝖠𝗀𝖠𝗍a\mathsf{At}=\bigcup_{a\in\mathsf{Ag}}\mathsf{At}_{a} with 𝖠𝗍a={𝗂𝗇𝗉𝗎𝗍avv𝖵𝖺𝗅𝗎𝖾}\mathsf{At}_{a}=\{\mathsf{input}_{a}^{v}\mid v\in\mathsf{Value}\} for each a𝖠𝗀a\in\mathsf{Ag}, where 𝖵𝖺𝗅𝗎𝖾\mathsf{Value} is the set of possible input values. Without loss of generality, we may assume that the set of input values coincides with the set of agent ids, i.e., 𝖵𝖺𝗅𝗎𝖾=𝖠𝗀={0,,n1}\mathsf{Value}=\mathsf{Ag}=\{0,\cdots,n-1\}.

The input model for a system with nn agents is given as follows.

Definition 3.4 (input simplicial model).

An input simplicial model =V,S,χ,\mathcal{I}=\langle V,S,\chi,\ell\rangle consists of:

  • The complex V,S,χ\langle V,S,\chi\rangle consisting of the set of vertexes V={(a,v)a𝖠𝗀,V=\{(a,v)\mid a\in\mathsf{Ag}, v𝖵𝖺𝗅𝗎𝖾}v\in\mathsf{Value}\}, the coloring map defined by χ((a,v))=a\chi\bigl{(}(a,v)\bigr{)}=a, and the set of simplexes S={XX{(0,v0),,(n1,vn1)}S=\{X\mid\emptyset\subsetneq X\subseteq\{(0,v_{0}),\ldots,(n-1,v_{n-1})\} where v0,,vn1𝖵𝖺𝗅𝗎𝖾}v_{0},\ldots,v_{n-1}\in\mathsf{Value}\};

  • The labeling defined by (X)={𝗂𝗇𝗉𝗎𝗍av(a,v)X}\ell(X)=\{\mathsf{input}_{a}^{v}\mid(a,v)\in X\} for each facet XX of the complex.

In the rest of the paper, we write \mathcal{I} to refer to this particular input simplicial model. The underlying simplicial complex V,S,χ\langle V,S,\chi\rangle of \mathcal{I} is a pure complex of dimension n1n-1, where each vertex (a,v)(a,v) represents a local state of the agent aa that has vv as the input value. The set of facets in the complex represents all the possible assignments of input values to the agents, and the labeling \ell interprets such assignments by giving the relevant set of atomic propositions for each facet XX, so that 𝗂𝗇𝗉𝗎𝗍av(X)\mathsf{input}_{a}^{v}\in\ell(X) if and only if (a,v)X(a,v)\in X.

For example, Figure 3 illustrates the underlying complex of the input simplicial model \mathcal{I} for 22 agents (i.e, 𝖠𝗀={0,1}\mathsf{Ag}=\{0,1\}). In the figure, we write XijX_{ij} to stand for a facet {(0,i),(1,j)}\{(0,i),(1,j)\} of \mathcal{I}. The labeling is determined by (Xij)={𝗂𝗇𝗉𝗎𝗍0i,𝗂𝗇𝗉𝗎𝗍1j}\ell(X_{ij})=\{\mathsf{input}_{0}^{i},\mathsf{input}_{1}^{j}\}.

\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
(0,0)(0,0)(1,0)(1,0)(1,1)(1,1)(0,1)(0,1)X00X_{00}X01X_{01}X10X_{10}X11X_{11}
Figure 3: The input simplicial model \mathcal{I} for n=2n=2

Now we define task solvability, using partial product update.

Definition 3.5.

Let \mathcal{I} be the input simplicial model and let 𝐏\mathbf{P} and 𝐓\mathbf{T} be action models for a protocol and a task, respectively. A task 𝐓\mathbf{T} is solvable by the protocol 𝐏\mathbf{P} if there exists a morphism δkrip:{𝐏}{𝐓}\delta_{\mathrm{krip}}:{\mathcal{I}}\left\{{\mathbf{P}}\right\}\to{\mathcal{I}}\left\{{\mathbf{T}}\right\} such that

([Xp]ppre,p){𝐏}.([Xt]tpre,t)δkrip(([Xp]ppre,p)).[Xp]ppre[Xt]tpre.\forall([X_{p}]_{p}^{\mathrm{pre}},p)\in{\mathcal{I}}\left\{{\mathbf{P}}\right\}.\>\exists([X_{t}]_{t}^{\mathrm{pre}},t)\in\delta_{\mathrm{krip}}\bigl{(}([X_{p}]_{p}^{\mathrm{pre}},p)\bigr{)}.\>[X_{p}]_{p}^{\mathrm{pre}}\subseteq[X_{t}]_{t}^{\mathrm{pre}}. (3.1)

Schematically, this definition of solvability can be presented by the following diagram-like picture:

\textstyle{\mathcal{I}\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces}

\subseteq

{𝐏}\textstyle{{\mathcal{I}}\left\{{\mathbf{P}}\right\}\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces}π1\scriptstyle{\pi_{1}}δkrip\scriptstyle{\exists\delta_{\mathrm{krip}}}\textstyle{\mathcal{I}}{𝐓}\textstyle{{\mathcal{I}}\left\{{\mathbf{T}}\right\}\ignorespaces\ignorespaces\ignorespaces\ignorespaces}π1\scriptstyle{\pi_{1}}

where π1\pi_{1} is the first projection.

Suppose a morphism δkrip\delta_{\mathrm{krip}} associates ([Xp]ppre,p){𝐏}([X_{p}]_{p}^{\mathrm{pre}},p)\in\mathcal{I}\{\mathbf{P}\} with ([Xt]tpre,t){𝐓}([X_{t}]_{t}^{\mathrm{pre}},t)\in\mathcal{I}\{\mathbf{T}\}. Then, in order for this association to be admissible, it must respect the inclusion of (3.1), meaning that, when δkrip\delta_{\mathrm{krip}} decides an output tt from an intermediate output pp by the protocol, every input contained in [Xp]ppre[X_{p}]_{p}^{\mathrm{pre}}, i.e., the set of inputs from which the protocol may produce the output pp, must be an input contained in [Xt]tpre[X_{t}]_{t}^{\mathrm{pre}}, i.e., the set of inputs that admit tt as the output of the task.

This generalizes the original definition of task solvability given in [3], which makes use of (non-partial) product updates. The original definition is given by the following commutative diagram, which is obtained by replacing the models by the product update models, written [𝐏]\mathcal{I}[\mathbf{P}] and [𝐓]\mathcal{I}[\mathbf{T}], and the inclusion in (3.1) by equality ==.

[𝐏]\textstyle{{\mathcal{I}}\left[{\mathbf{P}}\right]\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces\ignorespaces}π1\scriptstyle{\pi_{1}}δ\scriptstyle{\exists\delta}\textstyle{\mathcal{I}}[𝐓]\textstyle{{\mathcal{I}}\left[{\mathbf{T}}\right]\ignorespaces\ignorespaces\ignorespaces\ignorespaces}π1\scriptstyle{\pi_{1}}

This definition of the task solvability using product update models is equivalent to the topological definition using simplicial complexes [3]. We can also establish the same equivalence for partial product update models, in the following sense: Suppose we are given a pair of functions over simplicial complexes specifying a task and a protocol. From these specifications we can derive the corresponding partial product update models. Then the task is solvable by the protocol, using partial product update models as defined in Definition 3.5, if and only if the task is solvable in the topological sense, i.e., there exists a simplicial map that mediates between the complexes of the protocol and the task.

The formal argument for this equivalence is deferred to Appendix A. There we also show that the action model 𝐀\mathbf{A} and the partial product update model {𝐀}{\mathcal{I}}\left\{{\mathbf{A}}\right\} have isomorphic partial epistemic frames, under a suitable condition.

3.3 Logical obstruction theorem

Combining the above task solvability with the knowledge gain property (Proposition 2.5), we obtain a proof method for refuting task solvability by a formula of epistemic logic, called a logical obstruction [3]. A logical obstruction φ\varphi is a guarded positive formula that is valid in the partial product update model {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} of a task, but not in the model {𝐏}{\mathcal{I}}\left\{{\mathbf{P}}\right\} of a protocol.

Theorem 3.6.

Let {𝐏}{\mathcal{I}}\left\{{\mathbf{P}}\right\} and {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} be partial product update models of a protocol and a task, respectively. If there exists a guarded positive formula φK,𝖺𝗅𝗂𝗏𝖾+\varphi\in\mathcal{L}_{\mathrm{K},\mathsf{alive}}^{+} such that {𝐓}φ{\mathcal{I}}\left\{{\mathbf{T}}\right\}\models\varphi but {𝐏}⊧̸φ{\mathcal{I}}\left\{{\mathbf{P}}\right\}\not\models\varphi, the task is not solvable by the protocol.

Proof.

Suppose that φ\varphi is a guarded positive formula such that {𝐓}φ{\mathcal{I}}\left\{{\mathbf{T}}\right\}\models\varphi but {𝐏}⊧̸φ{\mathcal{I}}\left\{{\mathbf{P}}\right\}\not\models\varphi and, by contradiction, that the task is solvable, i.e., there exists a morphism δ\delta that satisfies the condition (3.1). The invalidity for the protocol {𝐏}⊧̸φ{\mathcal{I}}\left\{{\mathbf{P}}\right\}\not\models\varphi means that φ\varphi is false for some world ww of {𝐏}{\mathcal{I}}\left\{{\mathbf{P}}\right\}. Then Proposition 2.5 implies that there exists a world ww^{\prime} of {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} such that {𝐓},w⊧̸φ{\mathcal{I}}\left\{{\mathbf{T}}\right\},w^{\prime}\not\models\varphi. This contradicts to the validity of φ\varphi in {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\}. ∎

4 Action Model for Synchronous Message Passing Protocol

4.1 Actions as posets of rank at most 11

In the synchronous message passing protocol, each agent sends its local private value to all the agents in the system. When an agent crashes, only the messages that have already been sent before the crash are properly delivered to other agents; the rest are not. In a synchronous distributed environment, a correct agent can detect the exact set of crashed agents in the system: An agent is dead (i.e., it has crashed), if no message is received from the agent within a sufficiently long but finite period of time. The protocol complex for the synchronous message passing protocol thus forms an impure simplicial complex [7], in which the vertexes corresponding to dead agents are missing in a facet.

In the impure protocol complex, each different facet arises from each different ‘pattern of failure’ in message delivery, where each specific pattern of failure can be described by a set of orderings of the form a<ba<b, which means that the agent aa has crashed and failed to send the message to the agent bb, a correct agent that did not crash. This motivates us to define actions by relevant orderings over the set of agents that satisfy the following properties.

  • An agent aa is dead after an action (i.e., the agent has crashed during the execution of the protocol) if and only if the corresponding poset of the action admits an ordering a<ba<b for some agent bb.

  • An agent aa is alive after an action if and only if the corresponding poset of the action does not admit an ordering a<ba<b for any agent bb.

  • If a poset contains an ordering a<ba<b, the poset does not admit an ordering c<ac<a or b<cb<c for any agent cc. (This is because the ordering a<ba<b indicates that aa is a dead agent and bb is a correct agent but c<ac<a or b<cb<c implies otherwise.)

This ordering can be formalized as a poset (partially ordered set) (𝖠𝗀,)(\mathsf{Ag},\leq) of rank at most 11. A poset is of rank kk, if the maximum number of elements contained in a totally ordered subset of the poset is k+1k+1. [10] As usual, the strict ordering a<ba<b holds if and only if aba\leq b and aba\neq b.

Let us define lo()={a𝖠𝗀b𝖠𝗀,a<b}\operatorname{lo}(\leq)=\{a\in\mathsf{Ag}\mid\exists b\in\mathsf{Ag},a<b\} to denote the set of dead agents. Notice that the reflexive ordering aaa\leq a is not counted as a failure of message delivery. We are not interested in the success or failure of self-delivery of message: If successful, the agent aa trivially receives its own local private value; Otherwise, the agent aa is dead and its received messages are lost. In this respect, we indicate a poset by a set SS of strict orderings and write SS^{\ast} to denote the minimum poset containing SS, i.e., the reflexive closure of SS. For example, {0<1,2<3}\{0<1,2<3\}^{\ast} defines a poset ordering \leq over 𝖠𝗀\mathsf{Ag} such that aba\leq b holds if and only if either a=0a=0 and b=1b=1, a=2a=2 and b=3b=3, or a=ba=b. In particular, \emptyset^{\ast} is a discrete poset (of rank 0) over 𝖠𝗀\mathsf{Ag}, in which any pair of distinct agents are incomparable.

4.2 Constructing the action model 𝐌𝐏\mathbf{MP}

Let us first consider the action model for the ‘inputless’ case, where the initial inputs to the agents are insignificant. In this case, the actions for the synchronous message passing protocol is simply modeled by the posets over 𝖠𝗀\mathsf{Ag} of rank at most 11.

Definition 4.1.

The inputless action model for synchronous message passing protocol is a partial epistemic frame 𝐌𝐏0=T,\mathbf{MP}_{0}=\langle T,\sim\rangle consisting of:

  • The set of actions T={tt is a poset of rank at most 1 over 𝖠𝗀}T=\{t\mid t\text{ is a poset of rank at most $1$ over $\mathsf{Ag}$}\} and

  • The family of indistinguishability relation, where t1at2t_{1}\sim_{a}t_{2} is defined for each a𝖠𝗀a\in\mathsf{Ag} by:

    t1at2 iff alo(t1)lo(t2) and {b𝖠𝗀b<t1a}={b𝖠𝗀b<t2a}.t_{1}\sim_{a}t_{2}~{}\text{ iff }~{}a\notin\operatorname{lo}(t_{1})\cup\operatorname{lo}(t_{2})\text{ and }\{b\in\mathsf{Ag}\mid{b}<_{t_{1}}{a}\}=\{b\in\mathsf{Ag}\mid{b}<_{t_{2}}{a}\}.

For each tTt\in T, we denote the set of live agents by t¯=𝖠𝗀lo(t)={a𝖠𝗀tat}\overline{t}=\mathsf{Ag}\setminus\operatorname{lo}(t)=\{a\in\mathsf{Ag}\mid t\sim_{a}t\}.

{\emptyset}^{*}{(<)}{\{(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<),(<)}{\{(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<)}{\{(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<)}{\{(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<),(<)}{\{(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<)}{\{(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<)}{\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<)}{\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}{(<),(<)}{\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
{(<),(<)}{\{(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}
\bullet
\circ
{(<),(<)}{\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$})\}}^{*}
\bullet
\circ
{(<),(<)}{\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}
Figure 4: The inputless action model 𝐌𝐏0\mathbf{MP}_{0} of the synchronous message passing protocol for 33 agents, with facets annotated by the corresponding posets over 𝖠𝗀\mathsf{Ag}
Example 4.1.

Figure 4 illustrates the complex of the inputless action model 𝐌𝐏0\mathbf{MP}_{0} for 33 agents. The complex is impure, where the facet corresponding to an action tt is of dimension |t¯|1{\lvert}\overline{t}{\rvert}-1. When ta𝐌𝐏0st\sim_{a}^{\mathbf{MP}_{0}}s holds, the condition alo(t)lo(s)a\notin\operatorname{lo}(t)\cup\operatorname{lo}(s) means that the agent aa is alive for both actions tt and ss; The condition {b𝖠𝗀b<ta}={b𝖠𝗀b<sa}\{b\in\mathsf{Ag}\mid{b}<_{t}{a}\}=\{b\in\mathsf{Ag}\mid{b}<_{s}{a}\} means that tt and ss have the same set of agents that failed to send a message to aa and hence they know exactly the same set of delivered messages. For example, let t1={(<)}t_{1}={\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}, t2={(<),(<)}t_{2}={\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}),(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$})\}}^{*}, t3={(<)}t_{3}={\{(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$})\}}^{*}. Then t1𝐌𝐏0t2t_{1}\sim_{\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}}^{\mathbf{MP}_{0}}t_{2} holds because, in both t1t_{1} and t2t_{2}, the agent  \bullet \circ is alive and has successfully received messages from the agents other than \bullet \circ . On the other hand, t1𝐌𝐏0t3t_{1}\sim_{\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}}^{\mathbf{MP}_{0}}t_{3} does not hold because the agent  \bullet \circ in t3t_{3} has received the messages from all the agents, but the same agent  \bullet \circ in t1t_{1} did not, from the agent \bullet \circ .

From the inputless action model, we construct a full action model of the synchronous message passing protocol, where the protocol accepts a class of sets of input values. Suppose \mathcal{I} is a simplicial model, whose facets specify the allowed combinations of input values. Then one might expect that an action in the full action model would be expressed by a pair (X,t)(X,t), where XX is a facet of \mathcal{I} and tt is an action of the inputless action, but this does not give an appropriate model. Consider the case, say, t={b<a}t={\{b<a\}}^{*}, XaYX\sim_{a}^{\mathcal{I}}Y, and X≁bYX\not\sim_{b}^{\mathcal{I}}Y. In this case, (X,t)(X,t) and (Y,t)(Y,t) are different actions but the live agent aa should not distinguish them because the action tt indicates that the agent aa has not received a message from the agent bb and therefore it cannot tell which is the original input, either XX or YY. In other words, the two facets XX and YY should be identified.

For this identification of facets w.r.t. an action tt of the inputless model, we introduce an equivalence class, written [X]t\left[{X}\right]_{\approx_{t}}, and define an action in the full action model by a pair ([X]t,t)(\left[{X}\right]_{\approx_{t}},t).

Definition 4.2 (action model of synchronous message passing).

Let =V,S,χ,\mathcal{I}=\langle V^{\mathcal{I}},S^{\mathcal{I}},\chi^{\mathcal{I}},\ell^{\mathcal{I}}\rangle be an input simplicial model. For each facet X,Y()X,Y\in\mathcal{F}(\mathcal{I}) and action t𝐌𝐏0t\in\mathbf{MP}_{0}, we define an equivalence relation XtY{X}\approx_{t}{Y} by:

XtY iff at¯.b𝖠𝗀.(XbYb<ta).{X}\approx_{t}{Y}\text{ iff }\forall a\in\overline{t}.\>\forall b\in\mathsf{Ag}.\>(X\sim^{\mathcal{I}}_{b}Y\vee{b}<_{t}{a}).

We write [X]t\left[{X}\right]_{\approx_{t}} to denote the equivalence class of XX w.r.t. t\approx_{t}.

We define the action model 𝐌𝐏=T𝐌𝐏,𝐌𝐏,𝗉𝗋𝖾𝐌𝐏\mathbf{MP}=\langle{T^{\mathbf{MP}},\sim^{\mathbf{MP}},\mathsf{pre}^{\mathbf{MP}}}\rangle of the synchronous message passing protocol as a triple consisting of:

  • The set of actions T𝐌𝐏={([X]t,t)X(),t𝐌𝐏0}T^{\mathbf{MP}}=\{(\left[{X}\right]_{\approx_{t}},t)\mid X\in\mathcal{F}(\mathcal{I}),~{}t\in\mathbf{MP}_{0}\};

  • The family of indistinguishability relations defined by

    ([X]t,t)a𝐌𝐏([Y]s,s) iff ta𝐌𝐏0s and b𝖠𝗀.(XbYb<ta);(\left[{X}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{Y}\right]_{\approx_{s}},s)~{}\text{ iff }~{}t\sim^{\mathbf{MP}_{0}}_{a}s\text{ and }\forall b\in\mathsf{Ag}.\>(X\sim^{\mathcal{I}}_{b}Y\vee{b}<_{t}{a});
  • The precondition defined by 𝗉𝗋𝖾𝐌𝐏(([X]t,t))={(Y)Y[X]t}\mathsf{pre}^{\mathbf{MP}}\bigl{(}(\left[{X}\right]_{\approx_{t}},t)\bigr{)}=\bigvee\{\bigwedge\ell^{\mathcal{I}}(Y)\mid Y\in\left[{X}\right]_{\approx_{t}}\}.

In words, XtY{X}\approx_{t}{Y} indicates that, for every agent aa that is alive in the action tt, XX and YY should have the same input for the agent bb, if bta{b}\not<_{t}{a}, i.e., the message from bb is successfully received by aa. (Otherwise, the agent aa should be aware that XX and YY are different facets.) The relation t\approx_{t} is an equivalence relation, as we will show below. The relation a𝐌𝐏\sim^{\mathbf{MP}}_{a} defines a PER, where ([X]t,t)a𝐌𝐏([Y]s,s)(\left[{X}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{Y}\right]_{\approx_{s}},s) indicates that the agent aa is alive and every agent bb that successfully sends a message to aa (i.e., bta{b}\not<_{t}{a}) has the same input value that has been assigned in both XX and YY. The precondition 𝗉𝗋𝖾𝐌𝐏(([X]t,t))\mathsf{pre}^{\mathbf{MP}}\bigl{(}(\left[{X}\right]_{\approx_{t}},t)\bigr{)} is intended to mean that, for an action ([X]t,t)T𝐌𝐏(\left[{X}\right]_{\approx_{t}},t)\in T^{\mathbf{MP}}, every atomic proposition in (Y)\ell^{\mathcal{I}}(Y) is true for some Y[X]tY\in\left[{X}\right]_{\approx_{t}}.

Proposition 4.3.

Let \mathcal{I} be an input simplicial model. For every t𝐌𝐏0t\in\mathbf{MP}_{0}, t\approx_{t} is an equivalence relation. Furthermore, the relation a𝐌𝐏\sim^{\mathbf{MP}}_{a} is a PER and is well-defined. That is, a𝐌𝐏\sim^{\mathbf{MP}}_{a} is a symmetric transitive relation and is not affected by the choice of facet XX in ([X]t,t)(\left[{X}\right]_{\approx_{t}},t).

Proof.

Obviously, t\approx_{t} is a reflexive symmetric relation. For transitivity, assume XtY{X}\approx_{t}{Y} and YtZ{Y}\approx_{t}{Z}. Suppose X≁bZX\not\sim^{\mathcal{I}}_{b}Z. By the transitivity of b\sim^{\mathcal{I}}_{b}, we have X≁bYX\not\sim^{\mathcal{I}}_{b}Y or Y≁bZY\not\sim^{\mathcal{I}}_{b}Z. In both cases, we have b<ta{b}<_{t}{a} for all a𝖠𝗀a\in\mathsf{Ag}. Hence XtZ{X}\approx_{t}{Z}.

To show that a𝐌𝐏\sim^{\mathbf{MP}}_{a} is symmetric, suppose ([X]t,t)a𝐌𝐏([Y]s,s)(\left[{X}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{Y}\right]_{\approx_{s}},s). By the definition, ta𝐌𝐏0st\sim^{\mathbf{MP}_{0}}_{a}s and b𝖠𝗀.(XbYb<ta)\forall b\in\mathsf{Ag}.~{}(X\sim^{\mathcal{I}}_{b}Y\vee{b}<_{t}{a}). Since ta𝐌𝐏0st\sim^{\mathbf{MP}_{0}}_{a}s implies {b𝖠𝗀b<ta}={b𝖠𝗀b<sa}\{b\in\mathsf{Ag}\mid{b}<_{t}{a}\}=\{b\in\mathsf{Ag}\mid{b}<_{s}{a}\}, by the symmetry of a𝐌𝐏0\sim^{\mathbf{MP}_{0}}_{a} and b\sim^{\mathcal{I}}_{b}, we have ([Y]s,s)a𝐌𝐏([X]t,t)(\left[{Y}\right]_{\approx_{s}},s)\sim^{\mathbf{MP}}_{a}(\left[{X}\right]_{\approx_{t}},t). The transitivity of a𝐌𝐏\sim^{\mathbf{MP}}_{a} follows similarly from the transitivity of a𝐌𝐏0\sim^{\mathbf{MP}_{0}}_{a} and b\sim^{\mathcal{I}}_{b}.

For the well-definedness of a𝐌𝐏\sim^{\mathbf{MP}}_{a}, suppose ([X]t,t)a𝐌𝐏([Y]s,s)(\left[{X}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{Y}\right]_{\approx_{s}},s), [X]t=[X]t\left[{X}\right]_{\approx_{t}}=\left[{X^{\prime}}\right]_{\approx_{t}}, and [Y]s=[Y]s\left[{Y}\right]_{\approx_{s}}=\left[{Y^{\prime}}\right]_{\approx_{s}}. We show ([X]t,t)a𝐌𝐏([Y]s,s)(\left[{X^{\prime}}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{Y^{\prime}}\right]_{\approx_{s}},s). Since a𝐌𝐏0\sim^{\mathbf{MP}_{0}}_{a} is a PER, it suffices to show that b𝖠𝗀.(XbYb<ta)\forall b\in\mathsf{Ag}.~{}(X^{\prime}\sim^{\mathcal{I}}_{b}Y^{\prime}\vee{b}<_{t}{a}). Assume otherwise, i.e., X≁bYX^{\prime}\not\sim^{\mathcal{I}}_{b}Y^{\prime} and bta{b}\not<_{t}{a} holds for some b𝖠𝗀b\in\mathsf{Ag}. Then, from ([X]t,t)a𝐌𝐏([Y]s,s)(\left[{X}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{Y}\right]_{\approx_{s}},s), we have at¯a\in\overline{t} and as¯a\in\overline{s} and also entail XbYX\sim^{\mathcal{I}}_{b}Y from bta{b}\not<_{t}{a}. Since XtX{X}\approx_{t}{X^{\prime}}, we have XbXX\sim^{\mathcal{I}}_{b}X^{\prime}. Similarly, YbYY\sim^{\mathcal{I}}_{b}Y^{\prime}. By the transitivity of b\sim^{\mathcal{I}}_{b}, we obtain XbYX^{\prime}\sim^{\mathcal{I}}_{b}Y^{\prime}, a contradiction. ∎

\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
Figure 5: An action model 𝐌𝐏\mathbf{MP} for 33 agents, generated from an input model consisting of two facets
Example 4.2.

Let us consider an input simplicial model \mathcal{I} for 33 agents, consisting of two facets X={(,0),(,0),(,0)}X=\{(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$},0),(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$},0),(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$},0)\} and Y={(,0),(,0),(,1)}Y=\{(\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$},0),(\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$},0),(\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$},1)\}. Then we obtain the action model 𝐌𝐏\mathbf{MP} as depicted in Figure 5. We obtain this complex by first making copies of the complex of the inputless action model, for each facet XX and YY, and pasting them appropriately. For example, the action represented by the poset t={<,<}t={\{\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$},\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}\}}^{*} generates two copies ([X]t,t)(\left[{X}\right]_{\approx_{t}},t) and ([Y]t,t)(\left[{Y}\right]_{\approx_{t}},t), but these are identified (as depicted by the 11-dimensional simplex marked by the red line in the figure) because [X]t=[Y]t={X,Y}\left[{X}\right]_{\approx_{t}}=\left[{Y}\right]_{\approx_{t}}=\{X,Y\}. Similarly, the topmost node \bullet \circ and the bottom node  \bullet \circ in the figure identify the corresponding 0-dimensional simplexes in the copies generated from XX and YY.

Consider another action s={<,<}s={\{\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$},\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}\}}^{*}. This generates two copies ([X]s,s)(\left[{X}\right]_{\approx_{s}},s) and ([Y]s,s)(\left[{Y}\right]_{\approx_{s}},s), which are depicted in the figure by the two 11-dimensional simplexes marked by the blue lines. These simplexes are connected via a common vertex \bullet \circ . That is, ([X]s,s)𝐌𝐏([Y]s,s)(\left[{X}\right]_{\approx_{s}},s)\sim_{\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}}^{\mathbf{MP}}(\left[{Y}\right]_{\approx_{s}},s) holds, since XYX\sim_{\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}}^{\mathcal{I}}Y and \bullet \circ is the only agent bb that satisfies bs{b}\not<_{s}{\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}}. The two simplexes are not identified nevertheless, since ([X]s,s)≁𝐌𝐏([Y]s,s)(\left[{X}\right]_{\approx_{s}},s)\not\sim_{\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}}^{\mathbf{MP}}(\left[{Y}\right]_{\approx_{s}},s) follows from X≁YX\not\sim_{\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}}^{\mathcal{I}}Y and s{\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}}\not<_{s}{\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}}.

5 Logical Obstruction for Synchronous Message Passing Protocol

In this section, we argue the solvability of the consensus task by the single-round synchronous message passing protocol, using partial product update models.

In [7], a precise topological analysis has been given on the solvability of kk-set agreement tasks by synchronous message passing protocols of varying protocol rounds. We demonstrate that the techniques developed in the previous sections can be applied to reproduce a part of these results: The consensus task is solvable by a single-round execution of the synchronous message passing protocol if the number nn of agents in the system is 22 or less; otherwise, when n>2n>2, it is unsolvable.

5.1 Action model for the consensus task

The consensus task is specified by the following constraints on the input and output values of the agents.

  • Agreement: Every non-faulty agent must decide on the same output value;

  • Validity: The agreed output value must be an input value to some of the agents in the system.

Without loss of generality, we may assume the set of possible inputs for the consensus task is {0,,n1}\{0,\ldots,n-1\}, the set of agent ids.

Definition 5.1 (Partial product update model of the consensus task).

The consensus task is defined by a partial product update model {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\}, where \mathcal{I} is the input simplicial model and 𝐓=T,T,𝗉𝗋𝖾T\mathbf{T}=\langle{T,\sim^{T},\mathsf{pre}^{T}}\rangle is the action model consisting of:

  • The set of actions T=𝖠𝗀={0,,n1}T=\mathsf{Ag}=\{0,\ldots,n-1\};

  • The family of indistinguishability relations {aT}a𝖠𝗀\{\sim^{T}_{a}\}_{a\in\mathsf{Ag}} defined by vaTvv\sim^{T}_{a}v^{\prime} iff v=vv=v^{\prime};

  • The precondition defined by 𝗉𝗋𝖾T(v)=a𝖠𝗀𝗂𝗇𝗉𝗎𝗍av\mathsf{pre}^{T}(v)=\bigvee_{a\in\mathsf{Ag}}\mathsf{input}_{a}^{v} for each action vTv\in T.

An action in vTv\in T stands for a single output value unanimously decided by all live agents. Each agent can distinguish any pair of distinct actions in TT, since all agents know the agreed value. The precondition 𝗉𝗋𝖾T(v)\mathsf{pre}^{T}(v) guarantees the validity condition of the consensus task, that is, the agreed value vv must be the input to some agent aa.

5.2 Solvability of the consensus task with 2 agents

Let us show that the consensus task is solvable, when n=2n=2. (The case n=1n=1 is trivial.)

Remember that the input simplicial model \mathcal{I} for 22 agents consists of four facets X00,X01,X10,X11X_{00},X_{01},X_{10},X_{11}, where Xij={(0,i),(1,j)}X_{ij}=\{(0,i),(1,j)\} for each i,j{0,1}i,j\in\{0,1\}. The consensus task is then given by the partial product update model {𝐓}=W,,L{\mathcal{I}}\left\{{\mathbf{T}}\right\}=\langle{W,\sim,L}\rangle consisting of:

  • W={({Xij},0)i1 or j1}{({X},1)i0 or j0}W=\{(\{X_{ij}\},0)\mid i\neq 1\text{ or }j\neq 1\}\cup\{(\{X\},1)\mid i\neq 0\text{ or }j\neq 0\};

  • The indistinguishability relation defined by ({X},v)a({X},v)(\{X\},v)\sim_{a}(\{X^{\prime}\},v^{\prime}) iff XaXX\sim^{\mathcal{I}}_{a}X^{\prime} and v=vv=v^{\prime}, for each a𝖠𝗀a\in\mathsf{Ag};

  • L(({X},v))=(X)L\bigl{(}(\{X\},v)\bigr{)}=\ell^{\mathcal{I}}(X).

The underlying complex of {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} is illustrated in Figure 6. Note that the complex is pure, meaning that every agent a𝖠𝗀a\in\mathsf{Ag} is alive in every world of the model.

\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
({X01},0)(\{X_{01}\},0)({X00},0)(\{X_{00}\},0)({X10},0)(\{X_{10}\},0)
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
({X01},1)(\{X_{01}\},1)({X11},1)(\{X_{11}\},1)({X10},1)(\{X_{10}\},1)
Figure 6: The partial product update model {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} of the consensus task for 22 agents

Next, let us consider the partial product update model {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} for the synchronous message passing protocol, where 𝐌𝐏\mathbf{MP} is the action model for 22 agents. Remember that the inputless action model for 22 agents is given by 𝐌𝐏0=T2,T2\mathbf{MP}_{0}=\langle{T_{2},\sim^{T_{2}}}\rangle, where T2={,{0<1},T_{2}=\{{\emptyset}^{\ast},{\{0<1\}}^{\ast}, {1<0}}{\{1<0\}}^{\ast}\}. For brevity, let us write tt_{\emptyset}, t0t_{0}, and t1t_{1} for the posets {\emptyset}^{\ast}, {0<1}{\{0<1\}}^{\ast}, and {1<0}{\{1<0\}}^{\ast}, respectively. Topologically, these posets correspond to the facets in the impure simplicial complex illustrated in Figure 7.

\bullet
\circ
t0t_{0}
\bullet
\circ
\bullet
\circ
\bullet
\circ
t1t_{1}tt_{\emptyset}
(a) Inputless action model 𝐌𝐏0\mathbf{MP}_{0}
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
({X00},t)(\{X_{00}\},t_{\emptyset})({X11},t)(\{X_{11}\},t_{\emptyset})({X00,X01},t1)(\{X_{00},X_{01}\},t_{1})({X00,X10},t0)(\{X_{00},X_{10}\},t_{0})({X01},t)(\{X_{01}\},t_{\emptyset})({X10},t)(\{X_{10}\},t_{\emptyset})({X01,X11},t0)(\{X_{01},X_{11}\},t_{0})({X10,X11},t1)(\{X_{10},X_{11}\},t_{1})
(b) Action model 𝐌𝐏\mathbf{MP}
Figure 7: Action model of the synchronous message passing protocol for 22 agents

Following Definition 4.2, we obtain the action model 𝐌𝐏=T𝐌𝐏,𝐌𝐏,𝗉𝗋𝖾𝐌𝐏\mathbf{MP}=\langle{T^{\mathbf{MP}},\sim^{\mathbf{MP}},\mathsf{pre}^{\mathbf{MP}}}\rangle consisting of:

  • The set of actions

    T𝐌𝐏={({Xij},t)i,j{0,1}}{({X0j,X1j},t0)j{0,1}}{({Xi0,Xi1},t1)i{0,1}};T^{\mathbf{MP}}=\{(\{X_{ij}\},t_{\emptyset})\mid i,j\in\{0,1\}\}\cup\{(\{X_{0j},X_{1j}\},t_{0})\mid j\in\{0,1\}\}\cup\{(\{X_{i0},X_{i1}\},t_{1})\mid i\in\{0,1\}\};
  • The family of indistinguishability relations defined by ([X]t,t)a𝐌𝐏([X]t,t)(\left[{X}\right]_{\approx_{t}},t)\sim^{\mathbf{MP}}_{a}(\left[{X^{\prime}}\right]_{\approx_{t^{\prime}}},t^{\prime}) iff ([X]t,t)=([X]t,t)(\left[{X}\right]_{\approx_{t}},t)=(\left[{X^{\prime}}\right]_{\approx_{t^{\prime}}},t^{\prime}) and ta𝐌𝐏0tt\sim^{\mathbf{MP}_{0}}_{a}t^{\prime};

  • The labeling 𝗉𝗋𝖾𝐌𝐏(([X]t,t))={(X)X[X]t}\mathsf{pre}^{\mathbf{MP}}\bigl{(}(\left[{X}\right]_{\approx_{t}},t)\bigr{)}=\bigvee\{\bigwedge\ell^{\mathcal{I}}(X^{\prime})\mid X^{\prime}\in\left[{X}\right]_{\approx_{t}}\}.

The corresponding topological structure of this action model is illustrated by the simplicial complex in Figure 7.

Combining \mathcal{I} and 𝐌𝐏\mathbf{MP}, we obtain a partial product update model of the synchronous message passing protocol {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} for 22 agents, where its Kripke frame has a topological structure isomorphic to that of the action model 𝐌𝐏\mathbf{MP} and the labeling L{𝐌𝐏}L^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}} on the worlds of the Kripke frame is given by:

L{𝐌𝐏}(([X]t,t))={(X)X[X]t}.L^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}}\bigl{(}(\left[{X}\right]_{\approx_{t}},t)\bigr{)}=\bigcap\{\ell^{\mathcal{I}}(X^{\prime})\mid X^{\prime}\in\left[{X}\right]_{\approx_{t}}\}.

Observe that {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} corresponds to a complex comprising of two disconnected subcomponents, one for the output 0 and the other for 11 and that {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} corresponds to a collection of discrete facets, none of which are connected. It is easy to devise a morphism δ:{𝐌𝐏}{𝐓}\delta:{\mathcal{I}}\left\{{\mathbf{MP}}\right\}\to\mathcal{I}\{\mathbf{T}\} that satisfies the condition (3.1) in Section 3.2 for task solvability. For instance, such a morphism δ\delta is given by:

δ(({X11},t))\displaystyle\delta\bigl{(}(\{X_{11}\},t_{\emptyset})\bigr{)} =𝗌𝖺𝗍{0,1}(({X11},1)),\displaystyle{}=\mathsf{sat}_{\{0,1\}}\bigl{(}(\{X_{11}\},1)\bigr{)},
δ(({Xij},t))\displaystyle\delta\bigl{(}(\{X_{ij}\},t_{\emptyset})\bigr{)} =𝗌𝖺𝗍{0,1}(({Xij},0))(i1 or j1),\displaystyle{}=\mathsf{sat}_{\{0,1\}}\bigl{(}(\{X_{ij}\},0)\bigr{)}\quad(i\neq 1\text{ or }j\neq 1),
δ(([Xij]t0,t0))\displaystyle\delta\bigl{(}(\left[{X_{ij}}\right]_{\approx_{t_{0}}},t_{0})\bigr{)} =𝗌𝖺𝗍{1}(({Xij},j)),\displaystyle{}=\mathsf{sat}_{\{1\}}\bigl{(}(\{X_{ij}\},j)\bigr{)},
δ(([Xij]t1,t1))\displaystyle\delta\bigl{(}(\left[{X_{ij}}\right]_{\approx_{t_{1}}},t_{1})\bigr{)} =𝗌𝖺𝗍{0}(({Xij},i)).\displaystyle{}=\mathsf{sat}_{\{0\}}\bigl{(}(\{X_{ij}\},i)\bigr{)}.
Theorem 5.2.

Suppose we have a system of 22 agents with 𝖠𝗀={0,1}\mathsf{Ag}=\{0,1\}. Then the consensus task is solvable by the single-round synchronous message passing protocol.

5.3 Unsolvability of the consensus task with 3 agents

The consensus task is not solvable by the synchronous message passing protocol, when the number nn of agents is 33 or greater. This is because, in contrast to the case where nn is 22 or less, the resulting partial product update model of the protocol is more tightly connected in a topological sense.

To demonstrate this topological intuition in partial epistemic models, we first examine the case n=3n=3, where the partial product update model {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} of the synchronous message passing protocol is an impure 22-dimensional complex.

Let us define a guarded positive formula Φ3K,𝖺𝗅𝗂𝗏𝖾+\Phi_{3}\in\mathcal{L}_{\mathrm{K},\mathsf{alive}}^{+} by

Φ3K2K1K2φ0K0K2K0φ1K1K0K1φ2,\Phi_{3}\equiv\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}\vee\mathop{\mathrm{K}_{0}}\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{0}}\varphi_{1}\vee\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{0}}\mathop{\mathrm{K}_{1}}\varphi_{2},

where φia𝖠𝗀𝖺𝗅𝗂𝗏𝖾(a)𝗂𝗇𝗉𝗎𝗍ai\varphi_{i}\equiv\bigvee_{a\in\mathsf{Ag}}\mathsf{alive}(a)\Rightarrow\mathsf{input}_{a}^{i} for i=0,1,2i=0,1,2.

We claim that Φ3\Phi_{3} is a logical obstruction. That is, Φ3\Phi_{3} is valid in {𝐓}\mathcal{I}\{\mathbf{T}\} but not valid in {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}, where 𝐓\mathbf{T} is the action model for the consensus task and 𝐌𝐏\mathbf{MP} is the action model for the synchronous message passing protocol, for 33 agents.

The input simplicial complex \mathcal{I} for 33 agents has an underlying pure 22-dimensional complex and we write XijkX_{ijk} to denote a facet {(0,i),(1,j),(2,k)}\{(0,i),(1,j),(2,k)\} of the complex, where i,j,k{0,1,2}i,j,k\in\{0,1,2\}. The labeling on a facet is defined by (Xijk)={𝗂𝗇𝗉𝗎𝗍0i,𝗂𝗇𝗉𝗎𝗍1j,𝗂𝗇𝗉𝗎𝗍2k}\ell^{\mathcal{I}}(X_{ijk})=\{\mathsf{input}_{0}^{i},\mathsf{input}_{1}^{j},\mathsf{input}_{2}^{k}\}. The action model of the consensus task 𝐓=T,T,𝗉𝗋𝖾T\mathbf{T}=\langle{T,\sim^{T},\mathsf{pre}^{T}}\rangle is defined similarly as in Section 5.2, except that the set of actions T={0,1,2}T=\{0,1,2\} consists of the three possible outputs 0, 11, and 22.

The partial product update model {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} of the consensus task has an underlying complex, pure of dimension 22. This means that 𝖺𝗅𝗂𝗏𝖾(a)\mathsf{alive}(a) is true for every agent a𝖠𝗀a\in\mathsf{Ag} in every world of {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} and therefore φi\varphi_{i} is equivalent to 𝗉𝗋𝖾T(i)=a𝖠𝗀𝗂𝗇𝗉𝗎𝗍ai\mathsf{pre}^{T}(i)=\bigvee_{a\in\mathsf{Ag}}\mathsf{input}_{a}^{i} for each action i{0,1,2}i\in\{0,1,2\}. (Remember that T=𝖠𝗀={0,,n1}T=\mathsf{Ag}=\{0,\ldots,n-1\}.) By the definition, {𝐓},([X]vpre,v)φv{\mathcal{I}}\left\{{\mathbf{T}}\right\},([X]_{v}^{\mathrm{pre}},v)\models\varphi_{v} holds. Since ([X]vpre,v)aT([X]vpre,v)([X]_{v}^{\mathrm{pre}},v)\sim^{T}_{a}([X^{\prime}]_{v^{\prime}}^{\mathrm{pre}},v^{\prime}) implies v=vv=v^{\prime} for every a𝖠𝗀a\in\mathsf{Ag}, either of the disjuncts K2K1K2φ0\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}, K0K2K0φ1\mathop{\mathrm{K}_{0}}\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{0}}\varphi_{1}, or K1K0K1φ2\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{0}}\mathop{\mathrm{K}_{1}}\varphi_{2} holds. Therefore Φ3\Phi_{3} is a valid formula in {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\}.

We then discuss the remaining half, i.e., Φ3\Phi_{3} is invalid in the partial product update model of the synchronous message passing protocol. Remember that the inputless action model 𝐌𝐏0\mathbf{MP}_{0} for 33 agents has an impure 22-dimensional complex given in Figure 4 as the underlying complex, and that each facet in 𝐌𝐏0\mathbf{MP}_{0} is represented by a poset.

As we have seen in Section 4.2, we can derive the action model 𝐌𝐏\mathbf{MP} by making copies of the inputless model 𝐌𝐏0\mathbf{MP}_{0} for each input facet of the input model and then pasting them appropriately. To show the unsolvability of the consensus task, it suffices to consider pasting the copies for two facets X012X_{012} and X112X_{112}. This results in a subcomplex of 𝐌𝐏\mathbf{MP} given in Figure 8, which merges the result of actions on the input facet X012X_{012} (the left half of the picture) and that on X112X_{112} (i.e., the right half). In the figure, some facets are designated by the corresponding actions: t0=([X012],)t_{0}=(\left[{X_{012}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}), t1=([X012]u1,u1)t_{1}=(\left[{X_{012}}\right]_{\approx_{u_{1}}},u_{1}), t2=([X112]u1,u1)t_{2}=(\left[{X_{112}}\right]_{\approx_{u_{1}}},u_{1}), t3=([X112],)t_{3}=(\left[{X_{112}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}), and t4=([X012]u2,u2)t_{4}=(\left[{X_{012}}\right]_{\approx_{u_{2}}},u_{2}), where u1={0<1}={<}u_{1}={\{0<1\}}^{\ast}={\{\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$}\}}^{\ast} and u2={0<1,0<2}={<,<}u_{2}={\{0<1,0<2\}}^{\ast}={\{\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{1,0.80078125,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{1,0.80078125,0.80078125}$\bullet$\hss}\crcr$\circ$},\ooalign{\hss{\color[rgb]{1,1,1}\definecolor[named]{pgfstrokecolor}{rgb}{1,1,1}$\bullet$\hss}\crcr$\circ$}<\ooalign{\hss{\color[rgb]{0,0,0.80078125}\definecolor[named]{pgfstrokecolor}{rgb}{0,0,0.80078125}$\bullet$\hss}\crcr$\circ$}\}}^{\ast}. As already discussed in Section 4.2, the two copies of the complex of 𝐌𝐏0\mathbf{MP}_{0} are merged via the facet designated by t4t_{4}, since [X012]u2=[X112]u2\left[{X_{012}}\right]_{\approx_{u_{2}}}=\left[{X_{112}}\right]_{\approx_{u_{2}}}.

t3t_{3}t0t_{0}t1t_{1}t2t_{2}t4t_{4}
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
\bullet
\circ
Figure 8: A subcomplex of the action model 𝐌𝐏\mathbf{MP} that merges the actions on X012X_{012} and X112X_{112}

We obtain the partial product update model {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} for the synchronous message passing protocol by combining \mathcal{I} with 𝐌𝐏\mathbf{MP}. We note that {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} has an isomorphic partial epistemic frame with that of the action model 𝐌𝐏\mathbf{MP}. (See Appendix A.4 for the formal discussion of this fact.) Therefore, without loss of generality, we may regard {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} as a partial epistemic model T𝐌𝐏,𝐌𝐏,L𝐌𝐏\langle{T^{\mathbf{MP}},\sim^{\mathbf{MP}},L^{\mathbf{MP}}}\rangle, where T𝐌𝐏,𝐌𝐏\langle{T^{\mathbf{MP}},\sim^{\mathbf{MP}}}\rangle is the Kripke frame of 𝐌𝐏\mathbf{MP} and L𝐌𝐏L^{\mathbf{MP}} is a labeling on the worlds of T𝐌𝐏T^{\mathbf{MP}}:

L𝐌𝐏(([X]t,t))={(X)X[X]t}.L^{\mathbf{MP}}\bigl{(}(\left[{X}\right]_{\approx_{t}},t)\bigr{)}=\bigcap\{\ell^{\mathcal{I}}(X^{\prime})\mid X^{\prime}\in\left[{X}\right]_{\approx_{t}}\}.

Now we show that Φ3\Phi_{3} is invalid in the partial product update model {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}. We claim that Φ3\Phi_{3} is false in the world t0t_{0} in Figure 8.

From Figure 8, it is easy to see that the facet t0t_{0} is connected with t3t_{3} via t02𝐌𝐏t11𝐌𝐏t22𝐌𝐏t3t_{0}\sim^{\mathbf{MP}}_{2}t_{1}\sim^{\mathbf{MP}}_{1}t_{2}\sim^{\mathbf{MP}}_{2}t_{3}. We show {𝐌𝐏},t0⊧̸K2K1K2φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},t_{0}\not\models\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}, by traversing the above path in reverse order. In t3t_{3}, all agents are alive, that is, {𝐌𝐏},t3𝖺𝗅𝗂𝗏𝖾(a){\mathcal{I}}\left\{{\mathbf{MP}}\right\},t_{3}\models\mathsf{alive}(a) for every a𝖠𝗀a\in\mathsf{Ag}. Since L𝐌𝐏(t3)={𝗂𝗇𝗉𝗎𝗍01,𝗂𝗇𝗉𝗎𝗍11,𝗂𝗇𝗉𝗎𝗍22}L^{\mathbf{MP}}(t_{3})=\{\mathsf{input}_{0}^{1},\mathsf{input}_{1}^{1},\mathsf{input}_{2}^{2}\}, φ0a𝖠𝗀𝖺𝗅𝗂𝗏𝖾(a)𝗂𝗇𝗉𝗎𝗍a0\varphi_{0}\equiv\bigvee_{a\in\mathsf{Ag}}\mathsf{alive}(a)\Rightarrow\mathsf{input}_{a}^{0} is false, i.e., {𝐌𝐏},t3⊧̸φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},t_{3}\not\models\varphi_{0}. Since t32𝐌𝐏t2t_{3}\sim^{\mathbf{MP}}_{2}t_{2}, this implies that {𝐌𝐏},t2⊧̸K2φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},t_{2}\not\models\mathop{\mathrm{K}_{2}}\varphi_{0}. Repeating this by traversing t21𝐌𝐏t1t_{2}\sim^{\mathbf{MP}}_{1}t_{1} and then t12𝐌𝐏t2t_{1}\sim^{\mathbf{MP}}_{2}t_{2}, we obtain {𝐌𝐏},t2⊧̸K2K1K2φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},t_{2}\not\models\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}. This shows that K2K1K2φ0\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0} is an invalid formula in {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}.

Due to the symmetry of the partial product update model {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}, we can similarly show the invalidity of the remaining disjuncts in Φ3\Phi_{3}. Therefore Φ3\Phi_{3} is invalid in {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}.

Theorem 5.3.

For a system of 33 agents with 𝖠𝗀={0,1,2}\mathsf{Ag}=\{0,1,2\}, the consensus task is not solvable by the single-round synchronous message passing protocol.

5.4 Unsolvability of the consensus task, general case

We show the unsolvability for the general case, where the number of agents is 33 or greater. The proof is almost the same as that for 33 agents, but we have to argue the connectivity in a complex of higher dimension. Below we present a logical obstruction for the general case and discuss the connectivity symbolically on the formal description of actions.

Theorem 5.4.

For a system with 𝖠𝗀={0,,n1}\mathsf{Ag}=\{0,\cdots,n-1\} (n3n\geq 3), the consensus task is not solvable by the single-round synchronous message passing protocol.

Proof.

Let us define a guarded positive formula Φn\Phi_{n} (n3n\geq 3) by:

Φni{0,,n1}K(i+2)modnK(i+1)modnK(i+2)modnφi,\Phi_{n}\equiv\bigvee_{i\in\{0,\cdots,n-1\}}\mathop{\mathrm{K}_{(i+2)\bmod n}}\mathop{\mathrm{K}_{(i+1)\bmod n}}\mathop{\mathrm{K}_{(i+2)\bmod n}}\varphi_{i},

where φia𝖠𝗀𝖺𝗅𝗂𝗏𝖾(a)𝗂𝗇𝗉𝗎𝗍ai\varphi_{i}\equiv\bigvee_{a\in\mathsf{Ag}}\mathsf{alive}(a)\Rightarrow\mathsf{input}_{a}^{i} for each ii (0in10\leq i\leq n-1).

We claim that Φn\Phi_{n} is a logical obstruction. Let \mathcal{I} be the input model, 𝐓\mathbf{T} be the action model of the consensus task, 𝐌𝐏\mathbf{MP} be the action model of the synchronous message passing protocol, each defined for nn agents. We also let {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} and {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\} be the partial product update models for the task and the protocol, respectively.

By Theorem 3.6, it suffices to show that Φn\Phi_{n} is valid in {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} but is invalid in {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}. The validity of Φn\Phi_{n} is {𝐓}{\mathcal{I}}\left\{{\mathbf{T}}\right\} is similarly shown as we have demonstrated in Section 5.3.

Let us show that Φn\Phi_{n} is invalid in {𝐌𝐏}=T𝐌𝐏,𝐌𝐏,L𝐌𝐏{\mathcal{I}}\left\{{\mathbf{MP}}\right\}=\langle{T^{\mathbf{MP}},\sim^{\mathbf{MP}},L^{\mathbf{MP}}}\rangle. Similarly as in Section 5.3, by symmetry, it suffices to show that K2K1K2φ0\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0} is false in some world of {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}. We show that {𝐌𝐏},([X],)⊧̸K2K1K2φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},(\left[{X}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\not\models\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}, where XX is a facet of \mathcal{I} that is uniquely identified by the labeling (X)={𝗂𝗇𝗉𝗎𝗍ii0in1}\ell^{\mathcal{I}}(X)=\{\mathsf{input}_{i}^{i}\mid 0\leq i\leq n-1\}.

Let us define XX^{\prime} be the facet of \mathcal{I} that is uniquely determined by the labeling (X)={𝗂𝗇𝗉𝗎𝗍01}{𝗂𝗇𝗉𝗎𝗍ii1in1}\ell(X^{\prime})=\{\mathsf{input}_{0}^{1}\}\cup\{\mathsf{input}_{i}^{i}\mid 1\leq i\leq n-1\}. We show that ([X],)(\left[{X}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}) and ([X],)(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}) are connected along the following path:

([X],)2𝐌𝐏([X]{0<1},{0<1})1𝐌𝐏([X]{0<1},{0<1})2𝐌𝐏([X],).(\left[{X}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\sim^{\mathbf{MP}}_{2}(\left[{X}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast})\sim^{\mathbf{MP}}_{1}(\left[{X^{\prime}}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast})\sim^{\mathbf{MP}}_{2}(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}).

To show ([X],)2𝐌𝐏([X]{0<1},{0<1})(\left[{X}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\sim^{\mathbf{MP}}_{2}(\left[{X}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast}), it suffices to show 2𝐌𝐏0{0<1}{\emptyset}^{\ast}\sim^{\mathbf{MP}_{0}}_{2}{\{0<1\}}^{\ast}, which immediately follows from 2lo()lo({0<1})2\not\in\mathrm{lo}({\emptyset}^{\ast})\cup\mathrm{lo}({\{0<1\}}^{\ast}). The proof of ([X]{0<1},{0<1})2𝐌𝐏([X],)(\left[{X^{\prime}}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast})\sim^{\mathbf{MP}}_{2}(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}) is similar. For ([X]{0<1},{0<1})1𝐌𝐏([X]{0<1},{0<1})(\left[{X}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast})\sim^{\mathbf{MP}}_{1}(\left[{X^{\prime}}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast}), since X≁aXX\not\sim^{\mathcal{I}}_{a}X^{\prime} if and only if a0a\neq 0, it suffices to show that {0<1}1𝐌𝐏0{0<1}{\{0<1\}}^{\ast}\sim^{\mathbf{MP}_{0}}_{1}{\{0<1\}}^{\ast}, which follows from 1lo({0<1})1\not\in\operatorname{lo}({\{0<1\}}^{\ast}).

All agents are alive in ([X],)(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast}), that is, 𝐌𝐏,([X],)𝖺𝗅𝗂𝗏𝖾(a)\mathbf{MP},(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\models\mathsf{alive}(a) holds for every a𝖠𝗀a\in\mathsf{Ag}. Furthermore, L{𝐌𝐏}(([X],))={𝗂𝗇𝗉𝗎𝗍01}{𝗂𝗇𝗉𝗎𝗍ii1in1}L^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}}\bigl{(}(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\bigr{)}=\{\mathsf{input}_{0}^{1}\}\cup\{\mathsf{input}_{i}^{i}\mid 1\leq i\leq n-1\}. These imply {𝐌𝐏},([X],)⊧̸φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},(\left[{X^{\prime}}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\not\models\varphi_{0}. Traversing the above path in reverse order, we sequentially obtain {𝐌𝐏},([X]{0<1},{0<1}){\mathcal{I}}\left\{{\mathbf{MP}}\right\},(\left[{X^{\prime}}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast}) ⊧̸K2φ0\not\models\mathop{\mathrm{K}_{2}}\varphi_{0}, then {𝐌𝐏},([X]{0<1},{0<1})⊧̸K1K2φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},(\left[{X}\right]_{\approx_{{\{0<1\}}^{\ast}}},{\{0<1\}}^{\ast})\not\models\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}, and finally {𝐌𝐏},([X],)⊧̸K2K1K2φ0{\mathcal{I}}\left\{{\mathbf{MP}}\right\},(\left[{X}\right]_{\approx_{{\emptyset}^{\ast}}},{\emptyset}^{\ast})\not\models\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0}. This proves that K2K1K2φ0\mathop{\mathrm{K}_{2}}\mathop{\mathrm{K}_{1}}\mathop{\mathrm{K}_{2}}\varphi_{0} is invalid in {𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}.

Consequently, by Theorem 3.6, we conclude that the consensus task is not solvable by the synchronous message passing protocol, if the number of agents is 33 or greater. ∎

6 Conclusion and Future Work

We have proposed the notion of partial product update models that is suitable for modeling distributed tasks and protocols in partial epistemic models, in which agents may die. Using partial product update models, we defined task solvability in partial epistemic models, thereby providing the logical method that allows a logical obstruction to prove the unsolvability of a distributed task. This logical method defined for partial product update models extends the original product update proposed for epistemic models: Given a pair of an input model \mathcal{I} and an action model 𝐀\mathbf{A}, a partial product update model {𝐀}{\mathcal{I}}\left\{{\mathbf{A}}\right\} refines the original product update model up to indistinguishability by the set of live agents. The unsolvability of a task is then proved by a logical obstruction. We have presented a concrete formula of epistemic logic to show that the consensus task is unsolvable by the single-round synchronous message passing protocol. We have shown that the formula is indeed a logical obstruction, where the partial product update model for the synchronous message passing protocol is constructed from an action model whose actions are posets of rank at most 11.

We have demonstrated an unsolvability result, but only for the consensus task and the single-round execution of the protocol. In contrast, the topological method can prove more general unsolvability results for kk-set agreement tasks and multiple-round execution of the protocol [7]. It is an interesting topic to pursue how to obtain these generalized results using the logical method.

The notion of partial product update itself could be of interest from the perspective of dynamic epistemic logic [11]. The original product update was developed in the context of dynamic updates of Kripke models: In terms of logic with epistemic action modalities, ,X[𝐀]φ\mathcal{I},X\models[\mathbf{A}]\varphi iff ,X𝗉𝗋𝖾(t)\mathcal{I},X\models\mathsf{pre}(t) implies [𝐀],(X,t)φ{\mathcal{I}}\left[{\mathbf{A}}\right],(X,t)\models\varphi. It would be interesting to figure out an appropriate logical interpretation of partial product update.

Acknowledgment

The third author is supported by JSPS KAKENHI Grant Number 20K11678.

References

  • [1] Ronald Fagin, Joseph Y. Halpern, Yoram Moses, and Moshe Vardi. Reasoning About Knowledge. MIT press, 2004.
  • [2] Michael J. Fischer, Nancy A. Lynch, and Mike Paterson. Impossibility of distributed consensus with one faulty process. J. ACM, 32(2):374–382, 1985.
  • [3] Éric Goubault, Jérémy Ledent, and Sergio Rajsbaum. A simplicial complex model for dynamic epistemic logic to study distributed task computability. Inf. Comput., 278:104597, 2021.
  • [4] Éric Goubault, Jérémy Ledent, and Sergio Rajsbaum. A Simplicial Model for KB4n{}_{\mbox{n}}: Epistemic Logic with Agents That May Die. In 39th International Symposium on Theoretical Aspects of Computer Science (STACS 2022), volume 219 of LIPIcs, pages 33:1–33:20, 2022.
  • [5] Maurice Herlihy. Wait-free synchronization. ACM Transactions on Programming Languages and Systems, 13(1):124–149, 1991.
  • [6] Maurice Herlihy, Dmitry N. Kozlov, and Sergio Rajsbaum. Distributed Computing Through Combinatorial Topology. Morgan Kaufmann, 2013.
  • [7] Maurice Herlihy, Sergio Rajsbaum, and Mark R. Tuttle. An overview of synchronous message-passing and topology. Electron. Notes Theor. Comput. Sci., 39(2):1–17, 2001.
  • [8] Jérémy Ledent. Geometric semantics for asynchronous computability. PhD thesis, University of Paris-Saclay, France, 2019. URL: https://tel.archives-ouvertes.fr/tel-02445180.
  • [9] Yutaro Nishida. Impossibility of kk-set agreement via dynamic epistemic logic (in Japanese). In Algebraic system, Logic, Language and Related Areas in Computer Sciences II, volume 2188 of RIMS Kôkyûroku, pages 96–105, Feb. 2020. URL: http://hdl.handle.net/2433/265621.
  • [10] Richard P. Stanley. Enumerative Combinatorics, volume 1 of Cambridge Studies in Advanced Mathematics. Cambridge University Press, 2nd edition, 2011.
  • [11] Hans van Ditmarsch, Wiebe van der Hoek, and Barteld Kooi. Dynamic Epistemic Logic, volume 337 of Synthese Library. Springer, 2008.
  • [12] Koki Yagi and Susumu Nishimura. Logical obstruction to set agreement tasks for superset-closed adversaries, 2020. URL: https://arxiv.org/abs/2011.13630.

Appendix

Appendix A Equivalence of The Two Task Solvabilities

A.1 The topological definition of task solvability

In the topological method for distributed computing, tasks and protocols are defined by means of carrier maps, where a carrier map is a color-preserving function that associates each simplex of an input complex with a subcomplex of an output complex [6]. However, the partial epistemic models in this paper are built around facets, not simplexes of arbitrary dimension, which implies that partial product update models cannot cover all aspects of carrier maps. (Partial product update models assume that all agents participate in the computation anyway, though some of them may crash during the execution.)

For this reason, in this paper we define the topological specification of a task or a protocol by a suboptimal function, which we call a facet map, that associates each facet of the input complex with a set of facets of the output complex.

In what follows, we assume the set of vertexes VV of a complex 𝒞=V,S,χ\mathcal{C}=\langle{V,S,\chi}\rangle is a finite subset of 𝖠𝗀×𝖵𝖺𝗅𝗎𝖾\mathsf{Ag}\times\mathsf{Value} and the coloring map is defined by χ((a,v))=a\chi\bigl{(}(a,v)\bigr{)}=a for each (a,v)V(a,v)\in V. With this assumption, we can easily translate a complex V,S,χ\langle{V,S,\chi}\rangle into the corresponding input simplicial model V,S,χ,\langle{V,S,\chi,\ell}\rangle given in Definition 3.4, by defining (X)={𝗂𝗇𝗉𝗎𝗍av(a,v)X}\ell(X)=\{\mathsf{input}_{a}^{v}\mid(a,v)\in X\}, and similarly for the reverse translation. In this way, we will confuse a complex with an input simplicial model.

Definition A.1.

Given complexes 𝒞=V,S,χ\mathcal{C}=\langle{V,S,\chi}\rangle and 𝒟=V,S,χ\mathcal{D}=\langle{V^{\prime},S^{\prime},\chi^{\prime}}\rangle, a function Θ:(𝒞)2(𝒟)\Theta:\mathcal{F}(\mathcal{C})\to 2^{\mathcal{F}(\mathcal{D})} is called a facet map if it satisfies the following conditions.

  • Θ\Theta is color-preserving, that is, YΘ(X)χ(Y)χ(X)\displaystyle\bigcup_{Y\in\Theta(X)}\chi^{\prime}(Y)\subseteq\chi(X) for every facet X(𝒞)X\in\mathcal{F}(\mathcal{C});

  • Θ\Theta is surjective, i.e., (𝒟)=X(𝒞)Ψ(X)\mathcal{F}(\mathcal{D})=\bigcup_{X\in\mathcal{F}(\mathcal{C})}\Psi(X).

In order to define a task and a protocol, let =V,S,χ\mathcal{I}=\langle{V^{\mathcal{I}},S^{\mathcal{I}},\chi^{\mathcal{I}}}\rangle be the common input complex of them. A task is defined by a triple ,𝒪,Δ\langle{\mathcal{I},\mathcal{O},\Delta}\rangle, which we call a simplicial task, where 𝒪=V𝒪,S𝒪,χ𝒪\mathcal{O}=\langle{V^{\mathcal{O}},S^{\mathcal{O}},\chi^{\mathcal{O}}}\rangle is an output complex and Δ:()2(𝒪)\Delta:\mathcal{F}(\mathcal{I})\mathrel{\to}2^{\mathcal{F}(\mathcal{O})} is a facet map. A protocol is defined by a triple ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle, which we call a simplicial protocol, where 𝒫=V𝒫,S𝒫,χ𝒫\mathcal{P}=\langle{V^{\mathcal{P}},S^{\mathcal{P}},\chi^{\mathcal{P}}}\rangle is an output complex and Ψ:()2(𝒫)\Psi:\mathcal{F}(\mathcal{I})\mathrel{\to}2^{\mathcal{F}(\mathcal{P})} is a facet map satisfying the following condition:

(A.1)

The condition (A.1) is a natural requirement for the protocol: If an agent aa observes the same output of the protocol in two facets YY and YY^{\prime}, the agent aa must also have agreed on the input in two facets XX and XX^{\prime}, where YY (resp., YY^{\prime}) represents a possible global state of the system that is reachable from the global state of the initial input represented by XX (resp., XX^{\prime}).

Definition A.2.

We say a protocol ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle solves a task ,𝒪,Δ\langle{\mathcal{I},\mathcal{O},\Delta}\rangle, if there exists a descision map, i.e., a chromatic simplicial map δtop:𝒫𝒪\delta_{\mathrm{top}}:\mathcal{P}\to\mathcal{O} that satisfies

(A.2)

where δtop(Ψ(X))={δtop(Y)YΨ(X)}\delta_{\mathrm{top}}(\Psi(X))=\{\delta_{\mathrm{top}}(Y)\mid Y\in\Psi(X)\}, and the inclusion 𝒮𝒮\mathcal{S}\subseteq\mathcal{S^{\prime}} means that for any X𝒮X\in\mathcal{S} there exists X𝒮X^{\prime}\in\mathcal{S^{\prime}} such that XXX\subseteq X^{\prime}.

A.2 Equivalence of two task solvabilities

We will show that the above topological task solvability using simplicial complexes can be translated to that using partial product update models (Definition 3.2). For this, we introduce a translation function κ¯\overline{\kappa} as below.

Definition A.3.

Let =V,S,χ,\mathcal{I}=\langle{V^{\mathcal{I}},S^{\mathcal{I}},\chi^{\mathcal{I}},\ell^{\mathcal{I}}}\rangle be an input simplicial model. We define a translation function κ¯\overline{\kappa} that assigns an action model for a simplicial task or protocol ,𝒟,Θ\langle{\mathcal{I},\mathcal{D},\Theta}\rangle by

κ¯(,𝒟,Θ)=𝐀\overline{\kappa}(\langle{\mathcal{I},\mathcal{D},\Theta}\rangle)=\mathbf{A}

where 𝐀=A,A,𝗉𝗋𝖾A\mathbf{A}=\langle{A,\sim^{A},\mathsf{pre}^{A}}\rangle is an action model consisting of:

  • The set of actions A=(𝒟)A=\mathcal{F}(\mathcal{D});

  • The family of indistinguishability relations defined by XaAYX\sim_{a}^{A}Y iff aχA(XY)a\in\chi^{A}(X\cap Y);

  • The precondition defined by 𝗉𝗋𝖾A(Y)={(X)X(),YΘ(X)}\mathsf{pre}^{A}(Y)=\bigvee\{\bigwedge\ell^{\mathcal{I}}(X)\mid X\in\mathcal{F}(\mathcal{I}),Y\in\Theta(X)\}.

The translation function κ¯\overline{\kappa} is an augmentation of the functor κ\kappa, which has been introduced in [4] to show the association of simplicial complexes with their corresponding partial epistemic frames, for the purpose of establishing the categorical equivalence of these two structures. As such, κ¯\overline{\kappa} preserves the partial epistemic frame (𝒟),𝒟\langle{\mathcal{F}(\mathcal{D}),\sim^{\mathcal{D}}}\rangle induced from 𝒟\mathcal{D}. Furthermore, the precondition 𝗉𝗋𝖾A\mathsf{pre}^{A} gives the condition for Y(𝒟)Y\in\mathcal{F}(\mathcal{D}) to be a possible output of Θ\Theta for an input X()X\in\mathcal{F}(\mathcal{I}), that is, ,X𝗉𝗋𝖾A(Y)\mathcal{I},X\models\mathsf{pre}^{A}(Y) if and only if YΘ(X)Y\in\Theta(X). In this sense, κ¯\overline{\kappa} associates an action model that is equivalent to a given simplicial task or protocol.

Particularly for an action model 𝐏\mathbf{P} that is translated from a simplicial protocol ,𝒫,Φ\langle{\mathcal{I},\mathcal{P},\Phi}\rangle, the partial product update model {𝐏}{\mathcal{I}}\left\{{\mathbf{P}}\right\} has a partial epistemic frame that is isomorphic to that of 𝐏\mathbf{P}.

Proposition A.4.

Let =V,S,χ,\mathcal{I}=\langle{V^{\mathcal{I}},S^{\mathcal{I}},\chi^{\mathcal{I}},\ell^{\mathcal{I}}}\rangle be an input simplicial model, ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle be a simplicial protocol, and 𝐏=κ¯(,𝒫,Ψ)\mathbf{P}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{P},\Psi}\rangle) be the translated action model. Then the action model 𝐏\mathbf{P} and the partial product update model {𝐏}{\mathcal{I}}\left\{{\mathbf{P}}\right\} have isomorphic partial epistemic frames.

Proof.

Let 𝐏=P,P,𝗉𝗋𝖾P\mathbf{P}=\langle{P,\sim^{P},\mathsf{pre}^{P}}\rangle and {𝐌𝐏}=W{𝐌𝐏},{𝐌𝐏},L{𝐌𝐏}{\mathcal{I}}\left\{{\mathbf{MP}}\right\}=\langle{W^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}},\sim^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}},L^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}}}\rangle. We define a pair of maps f:PW{𝐌𝐏}f:P\to W^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}} and g:W{𝐌𝐏}Pg:W^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}}\to P by

f(Y)=([X]Ypre,Y)andg(([X]Ypre,Y))=Y,f(Y)=([X]_{Y}^{\mathrm{pre}},Y)~{}~{}\text{and}~{}~{}g\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}=Y,

where X,Y()X,Y\in\mathcal{F}(\mathcal{I}).

We show that ff is well-defined, that is, the set [X]Ypre[X]_{Y}^{\mathrm{pre}} is not affected by the choice of XX. Suppose ([X]Ypre,Y),([X]Ypre,Y)W{𝐌𝐏}([X]_{Y}^{\mathrm{pre}},Y),([X^{\prime}]_{Y}^{\mathrm{pre}},Y)\in W^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}}. By the definition of []Ypre[-]_{Y}^{\mathrm{pre}}, we have ,X𝗉𝗋𝖾P(Y)\mathcal{I},X\models\mathsf{pre}^{P}(Y) and ,X𝗉𝗋𝖾P(Y)\mathcal{I},X^{\prime}\models\mathsf{pre}^{P}(Y), which implies YΨ(X)Y\in\Psi(X) and YΨ(X)Y\in\Psi(X^{\prime}). Then, by the condition (A.1) of the simplicial protocol, XaXX\sim^{\mathcal{I}}_{a}X^{\prime} for all aY¯a\in\overline{Y} and therefore [X]Ypre=[X]Ypre[X]_{Y}^{\mathrm{pre}}=[X^{\prime}]_{Y}^{\mathrm{pre}}.

It is easy to see that ff and gg are inverses of each other, namely, fg=idW{𝐌𝐏}f\circ g=\mathrm{id}_{W^{{\mathcal{I}}\left\{{\mathbf{MP}}\right\}}} and gf=idPg\circ f=\mathrm{id}_{P}. Furthermore they preserve the indistinguishability relation. For ff, suppose YaPYY\sim^{P}_{a}Y^{\prime}, where f(Y)=([X]Ypre,Y)f(Y)=([X]_{Y}^{\mathrm{pre}},Y) and f(Y)=([X]Ypre,Y)f(Y^{\prime})=([X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}},Y^{\prime}). By a similar discussion above, it follows that YΨ(X)Y\in\Psi(X) and YΨ(X)Y^{\prime}\in\Psi(X^{\prime}) from the definition of []Ypre[-]_{Y}^{\mathrm{pre}}. This implies that XaXX\sim^{\mathcal{I}}_{a}X^{\prime} and therefore f(Y)a{𝐏}f(Y)f(Y)\sim^{{\mathcal{I}}\left\{{\mathbf{P}}\right\}}_{a}f^{\prime}(Y^{\prime}). For the converse, suppose [X]Yprea{𝐏}[X]Ypre[X]_{Y}^{\mathrm{pre}}\sim^{{\mathcal{I}}\left\{{\mathbf{P}}\right\}}_{a}[X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}}. Then, YaYY\sim^{\mathcal{I}}_{a}Y^{\prime} and therefore g(Y)ag(Y)g(Y)\sim^{\mathcal{I}}_{a}g(Y^{\prime}).

The isomorphisms ff and gg can be regarded as morphisms over partial epistemic frames, defining f^(Y)=𝗌𝖺𝗍Y¯(f(Y))\hat{f}(Y)=\mathsf{sat}_{\overline{Y}}(f(Y)) and g^(([X]Ypre,Y))=𝗌𝖺𝗍Y¯(g(([X]Ypre,Y)))\hat{g}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}=\mathsf{sat}_{\overline{Y}}\bigl{(}g\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}\bigr{)}. Hence P,P\langle{P,\sim^{P}}\rangle and {𝐏}{\mathcal{I}}\left\{{\mathbf{P}}\right\} are isomorphic partial epistemic frames. ∎

We show the task solvability defined using simplicial complexes implies that defined using partial product update models. That is, the existence of a morphism δtop\delta_{\mathrm{top}} in Definition 3.5 implies the existence of a morphism δkrip\delta_{\mathrm{krip}} in Definition A.2, and vice versa.

Lemma A.5.

Suppose a simplicial task ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle and a simplicial protocol ,𝒪,Δ\langle{\mathcal{I},\mathcal{O},\Delta}\rangle are given, where =V,S,χ,\mathcal{I}=\langle{V^{\mathcal{I}},S^{\mathcal{I}},\chi^{\mathcal{I}},\ell^{\mathcal{I}}}\rangle is an input simplicial model. Let 𝐏=κ¯(,𝒫,Ψ)\mathbf{P}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{P},\Psi}\rangle) and 𝐓=κ¯(,𝒪,Δ)\mathbf{T}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{O},\Delta}\rangle) be the action models for the protocol and the task, respectively. If there exists a morphism over partial epistemic models δkrip:{𝐏}{𝐓}\delta_{\mathrm{krip}}:{\mathcal{I}}\left\{{\mathbf{P}}\right\}\mathrel{\to}{\mathcal{I}}\left\{{\mathbf{T}}\right\} that satisfies the condition (3.1) in Definition 3.5, there exists a simplicial map δtop:𝒫𝒪\delta_{\mathrm{top}}:\mathcal{P}\mathrel{\to}\mathcal{O} that satisfies the condition (A.2) in Definition A.2.

Proof.

Let 𝐏=P,P,𝗉𝗋𝖾P\mathbf{P}=\langle{P,\sim^{P},\mathsf{pre}^{P}}\rangle and 𝐓=T,T,𝗉𝗋𝖾T\mathbf{T}=\langle{T,\sim^{T},\mathsf{pre}^{T}}\rangle and also let 𝒫=V𝒫,S𝒫,χ𝒫\mathcal{P}=\langle{V^{\mathcal{P}},S^{\mathcal{P}},\chi^{\mathcal{P}}}\rangle and 𝒪=V𝒪,S𝒪,χ𝒪\mathcal{O}=\langle{V^{\mathcal{O}},S^{\mathcal{O}},\chi^{\mathcal{O}}}\rangle.

Using δkrip\delta_{\mathrm{krip}}, we define a map δtop:V𝒫V𝒪\delta_{\mathrm{top}}:V^{\mathcal{P}}\to V^{\mathcal{O}} by

δtop(v)=u,\delta_{\mathrm{top}}(v)=u,

where vv and uu is any pair of vertexes such that χ𝒫(v)=χ𝒪(u)\chi^{\mathcal{P}}(v)=\chi^{\mathcal{O}}(u) and furthermore vXv\in X, uYu\in Y, and ([Z]Ypre,Y)δkrip(([Z]Xpre,X))([Z^{\prime}]_{Y}^{\mathrm{pre}},Y)\in\delta_{\mathrm{krip}}\bigl{(}([Z]_{X}^{\mathrm{pre}},X)\bigr{)} holds for some X(𝐏)X\in\mathcal{F}(\mathbf{P}), Y(𝐎)Y\in\mathcal{F}(\mathbf{O}), and Z,Z()Z,Z^{\prime}\in\mathcal{F}(\mathcal{I}).

We show χ𝒫(v)\chi^{\mathcal{P}}(v) is defined for every vV𝒫v\in V^{\mathcal{P}}. Suppose XX is a facet satisfying vXv\in X. By the surjectivity of Ψ\Psi, there exists Z()Z\in\mathcal{F}(\mathcal{I}) such that XΨ(Z)X\in\Psi(Z). This implies ([Z]Xpre,X)([Z]_{X}^{\mathrm{pre}},X) is defined. Furthermore we have X¯Y¯\overline{X}\subseteq\overline{Y}, since δkrip\delta_{\mathrm{krip}} preserves the indistinguishability, X¯Y¯\overline{X}\subseteq\overline{Y}. Let us define χ𝒫(v)=u\chi^{\mathcal{P}}(v)=u, where uYu\in Y be the vertex such that χ𝒪(u)=χ𝒫(v)\chi^{\mathcal{O}}(u)=\chi^{\mathcal{P}}(v). We show this uniquely defines uu. Suppose u1,u2V𝒪u_{1},u_{2}\in V^{\mathcal{O}} are vertexes given by the definition, that is, χ𝒫(v)=χ𝒪(u1)=χ𝒪(u2)\chi^{\mathcal{P}}(v)=\chi^{\mathcal{O}}(u_{1})=\chi^{\mathcal{O}}(u_{2}) and furthermore there exists X1,X2(𝒫)X_{1},X_{2}\in\mathcal{F}(\mathcal{P}), Y1,Y2(𝒪)Y_{1},Y_{2}\in\mathcal{F}(\mathcal{O}), and Z1,Z2,Z1,Z2()Z_{1},Z_{2},Z_{1}^{\prime},Z_{2}^{\prime}\in\mathcal{F}(\mathcal{I}) such that vXiv\in X_{i}, uiYiu_{i}\in Y_{i}, and ([Zi]Yipre,Yi)δkrip(([Zi]Xipre,Xi))([Z_{i}^{\prime}]_{Y_{i}}^{\mathrm{pre}},Y_{i})\in\delta_{\mathrm{krip}}\bigl{(}([Z_{i}]_{X_{i}}^{\mathrm{pre}},X_{i})\bigr{)} for each i=1,2i=1,2. By the definition of δkrip\delta_{\mathrm{krip}}, we have Xi¯Yi¯\overline{X_{i}}\subseteq\overline{Y_{i}} (i=1,2i=1,2) and hence X1X2¯Y1Y2¯\overline{X_{1}\cap X_{2}}\subseteq\overline{Y_{1}\cap Y_{2}}. Since vX1X2v\in X_{1}\cap X_{2}, χ𝒫(v)=χ𝒪(u1)=χ𝒪(u2)Y1Y2¯\chi^{\mathcal{P}}(v)=\chi^{\mathcal{O}}(u_{1})=\chi^{\mathcal{O}}(u_{2})\in\overline{Y_{1}\cap Y_{2}}. This implies u1,u2Y1Y2u_{1},u_{2}\in Y_{1}\cap Y_{2} and hence u1=u2u_{1}=u_{2}.

To show that δtop\delta_{\mathrm{top}} defined above is a simplicial map, suppose X={v0,,vm}(𝒫)X=\{v_{0},\ldots,v_{m}\}\in\mathcal{F}(\mathcal{P}). By the surjectivity of Ψ\Psi, there exists Z()Z\in\mathcal{F}(\mathcal{I}) such that XΨ(Z)X\in\Psi(Z). This implies ([Z]Xpre,X)({𝐏})([Z]_{X}^{\mathrm{pre}},X)\in\mathcal{F}({\mathcal{I}}\left\{{\mathbf{P}}\right\}). By the condition (3.1) for δkrip\delta_{\mathrm{krip}}, ([Z]Ypre,Y)δkrip(([Z]Xpre,X))([Z^{\prime}]_{Y}^{\mathrm{pre}},Y)\in\delta_{\mathrm{krip}}\bigl{(}([Z]_{X}^{\mathrm{pre}},X)\bigr{)} for some Y(𝒪)Y\in\mathcal{F}(\mathcal{O}) and Z()Z^{\prime}\in\mathcal{F}(\mathcal{I}). By the definition of δtop\delta_{\mathrm{top}}, for each viv_{i}, we have δtop(vi)=ui\delta_{\mathrm{top}}(v_{i})=u_{i} where uiu_{i} is the unique vertex satisfying uiYu_{i}\in Y and χ𝒪(ui)=χ𝒫(vi)\chi^{\mathcal{O}}(u_{i})=\chi^{\mathcal{P}}(v_{i}). Therefore δtop(X)Y(𝒪)\delta_{\mathrm{top}}(X)\subseteq Y\in\mathcal{F}(\mathcal{O}).

Let us show that δtop\delta_{\mathrm{top}} also satisfies (A.2). Suppose X()X\in\mathcal{F}(\mathcal{I}) and also YΨ(X)Y\in\Psi(X). The latter implies ,X𝗉𝗋𝖾𝐏(Y)\mathcal{I},X\models\mathsf{pre}^{\mathbf{P}}(Y) and therefore ([X]Ypre,Y)([X]_{Y}^{\mathrm{pre}},Y) is defined. Then by (3.1), there exists ([X]Ypre,Y)δkrip(([X]Ypre,Y))([X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}},Y^{\prime})\in\delta_{\mathrm{krip}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)} such that [X]Ypre[X]Ypre[X]_{Y}^{\mathrm{pre}}\subseteq[X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}}. Since X[X]Ypre[X]YpreX\in[X]_{Y}^{\mathrm{pre}}\subseteq[X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}}, [X]Ypre=[X]Ypre[X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}}=[X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}} and henceforth ([X]Ypre,Y)({𝐓})([X^{\prime}]_{Y^{\prime}}^{\mathrm{pre}},Y^{\prime})\in\mathcal{F}({\mathcal{I}}\left\{{\mathbf{T}}\right\}). This implies that ,X𝗉𝗋𝖾𝐓(Y)\mathcal{I},X\models\mathsf{pre}^{\mathbf{T}}(Y^{\prime}) and hence YΔ(X)Y^{\prime}\in\Delta(X). By the definition of δtop\delta_{\mathrm{top}}, δtop(X)Y\delta_{\mathrm{top}}(X)\subseteq Y^{\prime}. Therefore δtop(Ψ(X))Δ(X)\delta_{\mathrm{top}}(\Psi(X))\subseteq\Delta(X). ∎

The converse direction is proven as follows.

Lemma A.6.

Let 𝐏=κ¯(,𝒫,Ψ)\mathbf{P}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{P},\Psi}\rangle) and 𝐓=κ¯(,𝒪,Δ)\mathbf{T}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{O},\Delta}\rangle) be the translated action model for a simplicial protocol ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle and a simplicial task ,𝒪,Δ\langle{\mathcal{I},\mathcal{O},\Delta}\rangle, respectively. If there exists a simplicial map δtop:𝒫𝒪\delta_{\mathrm{top}}:\mathcal{P}\mathrel{\to}\mathcal{O} that satisfies (A.2), then there exists a morphism over partial epistemic models δkrip:{𝐏}{𝐓}\delta_{\mathrm{krip}}:{\mathcal{I}}\left\{{\mathbf{P}}\right\}\mathrel{\to}{\mathcal{I}}\left\{{\mathbf{T}}\right\} that satisfies (3.1).

Proof.

Let 𝐏=P,P,𝗉𝗋𝖾P\mathbf{P}=\langle{P,\sim^{P},\mathsf{pre}^{P}}\rangle and 𝐓=T,T,𝗉𝗋𝖾T\mathbf{T}=\langle{T,\sim^{T},\mathsf{pre}^{T}}\rangle. Using δtop\delta_{\mathrm{top}}, we define δkrip:{𝐏}{𝐓}\delta_{\mathrm{krip}}:{\mathcal{I}}\left\{{\mathbf{P}}\right\}\mathrel{\to}{\mathcal{I}}\left\{{\mathbf{T}}\right\} by

δkrip(([X]Ypre,Y))=𝗌𝖺𝗍Y¯(([X]Zpre,Z)),\delta_{\mathrm{krip}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}=\mathsf{sat}_{\overline{Y}}\bigl{(}([X]_{Z}^{\mathrm{pre}},Z)\bigr{)},

where ZTZ\in T, δtop(Y)Z\delta_{\mathrm{top}}(Y)\subseteq Z, Z¯X¯\overline{Z}\subseteq\overline{X}, and ,X𝗉𝗋𝖾T(Z)\mathcal{I},X\models\mathsf{pre}^{T}(Z).

There exists ZTZ\in T that satisfies this condition. By the definition of [X]Ypre[X]_{Y}^{\mathrm{pre}}, we have ,X𝗉𝗋𝖾P(Y)\mathcal{I},X\models\mathsf{pre}^{P}(Y), which implies YΨ(X)Y\in\Psi(X). By the condition (A.2), there exists ZΔ(X)Z\in\Delta(X) such that δtop(Y)Z\delta_{\mathrm{top}}(Y)\subseteq Z. This means ZTZ\in T and ,X𝗉𝗋𝖾T(Z)\mathcal{I},X\models\mathsf{pre}^{T}(Z). Furthermore, Z¯X¯\overline{Z}\subseteq\overline{X} because Δ\Delta is color-preserving.

The definition of δkrip\delta_{\mathrm{krip}} is not affected by the choice of ZZ. To show this, suppose Z1,Z2TZ_{1},Z_{2}\in T such that δtop(Y)Zi\delta_{\mathrm{top}}(Y)\subseteq Z_{i}, Zi¯X¯\overline{Z_{i}}\subseteq\overline{X}, and ,X𝗉𝗋𝖾T(Zi)\mathcal{I},X\models\mathsf{pre}^{T}(Z_{i}) (i=1,2i=1,2). From δtop(Y)Zi\delta_{\mathrm{top}}(Y)\subseteq Z_{i} (i=1,2i=1,2), we have χT(Z1Z2)χT(δtop(Y))=χP(Y)\chi^{T}(Z_{1}\cap Z_{2})\supseteq\chi^{T}(\delta_{\mathrm{top}}(Y))=\chi^{P}(Y). Hence Z1Y¯TZ2Z_{1}\sim_{\overline{Y}}^{T}Z_{2}. This implies [X]Z1preY¯{𝐓}[X]Z2pre[X]_{Z_{1}}^{\mathrm{pre}}\sim_{\overline{Y}}^{{\mathcal{I}}\left\{{\mathbf{T}}\right\}}[X]_{Z_{2}}^{\mathrm{pre}} and therefore 𝗌𝖺𝗍Y¯(([X]Z1pre,Z1))=𝗌𝖺𝗍Y¯(([X]Z2pre,Z2))\mathsf{sat}_{\overline{Y}}\bigl{(}([X]_{Z_{1}}^{\mathrm{pre}},Z_{1})\bigr{)}=\mathsf{sat}_{\overline{Y}}\bigl{(}([X]_{Z_{2}}^{\mathrm{pre}},Z_{2})\bigr{)}.

We show that δkrip\delta_{\mathrm{krip}} is a morphism over partial epistemic models. Obviously it satisfies the saturation property by definition. To show that δkrip\delta_{\mathrm{krip}} preserves the indistinguishability, suppose ([X1]Y1pre,Y1)a{𝐏}([X2]Y2pre,Y2)([X_{1}]_{Y_{1}}^{\mathrm{pre}},Y_{1})\sim_{a}^{{\mathcal{I}}\left\{{\mathbf{P}}\right\}}([X_{2}]_{Y_{2}}^{\mathrm{pre}},Y_{2}). This implies X1aX2X_{1}\sim^{\mathcal{I}}_{a}X_{2} and Y1aPY2Y_{1}\sim_{a}^{P}Y_{2}, and in particular aχ𝒫(Y1Y2)a\in\chi^{\mathcal{P}}(Y_{1}\cap Y_{2}). For all ([X1]Z1pre,Z1)δkrip(([X1]Y1pre,Y1))([X_{1}]_{Z_{1}}^{\mathrm{pre}},Z_{1})\in\delta_{\mathrm{krip}}\bigl{(}([X_{1}]_{Y_{1}}^{\mathrm{pre}},Y_{1})\bigr{)} and ([X2]Z2pre,Z2)δkrip(([X2]Y2pre,Y2))([X_{2}]_{Z_{2}}^{\mathrm{pre}},Z_{2})\in\delta_{\mathrm{krip}}\bigl{(}([X_{2}]_{Y_{2}}^{\mathrm{pre}},Y_{2})\bigr{)}, we have Z1Y1Y2¯TZ2Z_{1}\sim^{T}_{\overline{Y_{1}\cap Y_{2}}}Z_{2} by the definition of δkrip\delta_{\mathrm{krip}}. In particular, Z1aTZ2Z_{1}\sim^{T}_{a}Z_{2}. Hence ([X1]Z1pre,Z1)a{𝐓}([X2]Z2pre,Z2)([X_{1}]_{Z_{1}}^{\mathrm{pre}},Z_{1})\sim^{{\mathcal{I}}\left\{{\mathbf{T}}\right\}}_{a}([X_{2}]_{Z_{2}}^{\mathrm{pre}},Z_{2}). For the preservation of atomic propositions, suppose ([X]Ypre,Y){𝐏}([X]_{Y}^{\mathrm{pre}},Y)\in{\mathcal{I}}\left\{{\mathbf{P}}\right\}, ([X]Zpre,Z)δkrip(([X]Ypre,Y))([X]_{Z}^{\mathrm{pre}},Z)\in\delta_{\mathrm{krip}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}, and aY¯a\in\overline{Y}. By definition, XaXX\sim^{\mathcal{I}}_{a}X^{\prime} holds for every X[X]YpreX^{\prime}\in[X]_{Y}^{\mathrm{pre}}. This implies that L{𝐏}(([X]Ypre,Y))𝖠𝖯a=(X)𝖠𝖯aL^{{\mathcal{I}}\left\{{\mathbf{P}}\right\}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}\cap\mathsf{AP}_{a}=\ell^{\mathcal{I}}(X)\cap\mathsf{AP}_{a}. Similarly, L{𝐓}(([X]Zpre,Z))𝖠𝖯a=(X)𝖠𝖯aL^{{\mathcal{I}}\left\{{\mathbf{T}}\right\}}\bigl{(}([X]_{Z}^{\mathrm{pre}},Z)\bigr{)}\cap\mathsf{AP}_{a}=\ell^{\mathcal{I}}(X)\cap\mathsf{AP}_{a}. Therefore L{𝐏}(([X]Ypre,Y))𝖠𝖯a=L{𝐓}(([X]Zpre,Z))𝖠𝖯aL^{{\mathcal{I}}\left\{{\mathbf{P}}\right\}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}\cap\mathsf{AP}_{a}=L^{{\mathcal{I}}\left\{{\mathbf{T}}\right\}}\bigl{(}([X]_{Z}^{\mathrm{pre}},Z)\bigr{)}\cap\mathsf{AP}_{a}.

Finally, let us show that δkrip\delta_{\mathrm{krip}} satisfies the condition (3.1). Suppose δkrip(([X]Ypre,Y))=\delta_{\mathrm{krip}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}= 𝗌𝖺𝗍Y¯(([X]Zpre\mathsf{sat}_{\overline{Y}}\bigl{(}([X]_{Z}^{\mathrm{pre}}, Z))Z)\bigr{)} where ZTZ\in T, δtop(Y)Z\delta_{\mathrm{top}}(Y)\subseteq Z, Z¯X¯=𝖠𝗀\overline{Z}\subseteq\overline{X}=\mathsf{Ag}. Assume X[X]YpreX^{\prime}\in[X]_{Y}^{\mathrm{pre}}. By definition, XY¯XX\sim_{\overline{Y}}^{\mathcal{I}}X^{\prime} and ,X𝗉𝗋𝖾P(Y)\mathcal{I},X^{\prime}\models\mathsf{pre}^{P}(Y). The latter implies YΨ(X)Y\in\Psi(X^{\prime}) and thus δtop(Y)δtop(Ψ(X))\delta_{\mathrm{top}}(Y)\in\delta_{\mathrm{top}}(\Psi(X^{\prime})). Since δtop(Ψ(X))Δ(X)\delta_{\mathrm{top}}(\Psi(X^{\prime}))\subseteq\Delta(X^{\prime}) by (A.2), there exists ZTZ^{\prime}\in T such that δtop(Y)Z\delta_{\mathrm{top}}(Y)\subseteq Z^{\prime} and ZΔ(X)Z^{\prime}\in\Delta(X^{\prime}). The former implies δtop(Y)ZZ\delta_{\mathrm{top}}(Y)\subseteq Z\cap Z^{\prime} and thus ZY¯TZZ\sim^{T}_{\overline{Y}}Z^{\prime}; The latter implies ,X𝗉𝗋𝖾T(Z)\mathcal{I},X^{\prime}\models\mathsf{pre}^{T}(Z^{\prime}) and hence [X]Zpre[X^{\prime}]_{Z^{\prime}}^{\mathrm{pre}}. By these, we obtain ([X]Zpre,Z)Y¯{𝐓}([X]Zpre,Z)([X]_{Z}^{\mathrm{pre}},Z)\sim_{\overline{Y}}^{{\mathcal{I}}\left\{{\mathbf{T}}\right\}}([X^{\prime}]_{Z^{\prime}}^{\mathrm{pre}},Z^{\prime}). Therefore we have ([X]Zpre,Z)δkrip(([X]Ypre,Y))([X^{\prime}]_{Z^{\prime}}^{\mathrm{pre}},Z^{\prime})\in\delta_{\mathrm{krip}}\bigl{(}([X]_{Y}^{\mathrm{pre}},Y)\bigr{)}, where X[X]ZpreX^{\prime}\in[X^{\prime}]_{Z^{\prime}}^{\mathrm{pre}} trivially holds.

Theorem A.7.

Suppose a simplicial task ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle and a simplicial protocol ,𝒪,Δ\langle{\mathcal{I},\mathcal{O},\Delta}\rangle are given, where =V,S,χ,\mathcal{I}=\langle{V^{\mathcal{I}},S^{\mathcal{I}},\chi^{\mathcal{I}},\ell^{\mathcal{I}}}\rangle is an input simplicial model. Let 𝐏=κ¯(,𝒫,Ψ)\mathbf{P}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{P},\Psi}\rangle) and 𝐓=κ¯(,𝒪,Δ)\mathbf{T}=\overline{\kappa}(\langle{\mathcal{I},\mathcal{O},\Delta}\rangle). Then a task ,𝒪,Δ\langle{\mathcal{I},\mathcal{O},\Delta}\rangle is solvable by a protocol ,𝒫,Ψ\langle{\mathcal{I},\mathcal{P},\Psi}\rangle if and only if 𝐓\mathbf{T} is solvable by 𝐏\mathbf{P}.

Proof.

Follows from Lemma A.5 and A.6. ∎