{'fraction_non_alphanumeric': 0.03947767225702162, 'fraction_numerical': 0.005480905233380481, 'mean_word_length': 4.1877620545073375, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 7, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Simplicial Complex Model for Dynamic Epistemic Logic to study Distributed Task Computability

The usual epistemic model S5n for a multi-agent system is based on a Kripke frame, which is a graph whose edges are labeled with agents that do not distinguish between two states. We propose to uncover the higher dimensional information implicit in this structure, by considering a dual, simplicial complex model. We use dynamic epistemic logic (DEL) to study how an epistemic simplicial complex model changes after a set of agents communicate with each other. We concentrate on an action model that represents the so called immediate snapshot communication patterns of asynchronous agents, because it is central to distributed computability (but our setting works for other communication patterns). There are topological invariants preserved from the initial epistemic complex to the one after the action model is applied, which determine the knowledge that the agents gain after communication. Finally, we describe how a distributed task specification can be modeled as a DEL action model, and show that the topological invariants determine whether the task is solvable. We thus provide a bridge between DEL and the topological theory of distributed computability, which studies task solvability in a shared memory or message passing architecture.


Introduction
The usual epistemic logic model for a multi-agent system is based on a Kripke frame, which is a graph whose edges are labeled with agents that do not distinguish between two states. A Kripke S5 n model represents the knowledge of the agents about a given situation. Our first goal is to expose the topological information implicit in a Kripke model, replacing it by its dual, a simplicial complex model. We prove that these simplicial models are very closely related to the usual Kripke models: there is an equivalence of categories between the two structures. Thus, simplicial models retain the nice properties of Kripke models, such as soundness and completeness w.r.t. (a slightly modified version of) the logic S5 n .
To explain the interest of this duality, we extend it to a dynamic setting. We found that in this context, a very natural setting is dynamic epistemic logic (DEL) [4,10] with action models [3]. We extend the duality to this setting by defining a simplicial version of action models and a corresponding product update operator. Thus, the product update of an initial simplicial model I and an action model A yields a simplicial model I [A]. The possible patterns of communication permitted by the action model determine the topological invariants of I that are preserved in I[A].
We apply our framework to study fault-tolerant distributed computability, because its intimate relation to topology is well understood [16]. Also, DEL has applications to numerous research areas, but to the best of our knowledge it has not been used to study fault-tolerant distributed computing systems. We define a particular action model of interest, the immediate snapshot action model, which is well known in distributed computing because it fully preserves the topology of the initial complex. This model corresponds to wait-free asynchronous processes operating on a shared memory, which means that the processes run at an arbitrary speed, independent from the others, and are not allowed to wait for events to happen in other processes.
Another goal is to show how DEL can be used to specify a distributed task. A task is the equivalent of a function in distributed computability [2]. Agents start with an input value, and after communicating with the others, produce an output value. The task defines the possible inputs to the agents, and for each set of inputs, it specifies the set of outputs that the agents may produce. An important example is the consensus task, where all the agents must agree on one of their input values. We use DEL in a novel way, to represent the task itself. A Kripke model I represents the possible initial states of the system. The task is specified by an action model T , which describes the output values that the agents should be able to produce, as well as preconditions specifying which inputs are allowed to produce which outputs. The product update of the input model I with T yields an epistemic model I[T ] representing the knowledge that the agents should acquire to solve the task. Once the task is specified, given an action model A that represents some distributed protocol, the product update of I with A yields a Kripke model I[A] that models how agents perceive the world after the protocol has been executed. The protocol A solves the task if there exists a morphism δ that makes the above diagram commute (Definition 2). This intuitively happens when there is sufficient knowledge in I[A] to solve the task.
Beyond the applications that we provide in this paper, our main goal is to construct a general framework that connects epistemic logic and distributed computability. In one direction, uncovering the higherdimensional topological structure hidden in Kripke models allows us to transport methods that have been used successfully in the algebraic topological approach to fault-tolerant distributed computability [16] to the realm of DEL. In particular, the knowledge gained by applying an action model is intimately related to how well it preserves the topology of the initial model. The benefit in the other direction is in providing a formal epistemic logic semantics to distributed task computability. This allows one to understand better the abstract topological arguments in terms of how much knowledge is necessary to solve a task.
We concentrate on the specific setting of asynchronous wait-free shared read/write memory. However, there are known equivalences between task solvability in our model and other shared memory and message passing models, and this model can be used as a basis to study task solvability in other more complex models, e.g. where the number of processes that can crash is bounded or even where Byzantine failures are possible [16]. Nevertheless, this is far from telling the whole story. In the Conclusions section we discuss many interesting avenues that remain to be explored. And additional technical details appear in the companion Technical Reports [13,14].
Related work. Work on knowledge and distributed systems is of course one of the inspirations of the present work [26], especially where connectivity [7,8] is used. But the authors know of no previous work using DEL [4,10] to study such systems, and neither on directly connecting the combinatorial topological setting of [16] with Kripke models. In [20], the author proposes a variant of (non dynamic) epistemic logic for a restricted form of wait-free task specification that cannot account for important tasks such as consensus. Similar to [24], we show that even though a problem may not explicitly mention the agents' knowledge, it can in fact be restated as knowledge gain requirements. Nevertheless, we exploit the "runs and systems" framework in an orthogonal way, and the knowledge requirements we obtain are about inputs; common knowledge in the case of consensus, but other forms of nested knowledge for other tasks. In contrast, the knowledge of precondition principle of [24] implies that common knowledge is a necessary condition for performing simultaneous actions. Our formulation of carrier maps as products has been partially observed in [15]. There are other (categorical) connections between Kripke frames and geometry [25].
DEL is often thought of as inherently being capable of modeling only agents that are synchronous, but as discussed in [9], this is not the case. More recently, [21] proposes a variant of public announcement logic for asynchronous systems that introduces two different modal operators for sending and receiving messages. As we show here, DEL can naturally model the knowledge in an asynchronous distributed system, at least as far as it is concerned with task solvability. Further work is needed to study more in depth the knowledge that is represented in this way.

A simplicial model for epistemic logic
We describe here the new kind of model for epistemic logic, based on chromatic simplicial complexes. The link with DEL and distributed computing will be developed in the next sections.
Syntax. Let AP be a countable set of propositional variables and A a finite set of agents. The language L K is generated by the following BNF grammar: In the following, we work with n + 1 agents, and write A = {a 0 , . . . , a n }.
Simplicial complexes and Kripke frames. Given a set V , a simplicial complex C is a family of nonempty finite subsets of V such that for all X ∈ C, Y ⊆ X implies Y ∈ C. We say Y is a face of X. Elements of V (identified with singletons) are called vertices. Elements of C are simplexes, and those which are maximal w.r.t. inclusion are facets. The set of vertices of C is noted V(C), and the set of facets F(C). The dimension of a simplex X ∈ C is |X| − 1. A simplicial complex C is pure if all its facets are of the same dimension, n. In this case, we say C is of dimension n. Given the set A of agents (that we will represent as colors), a chromatic simplicial complex C, χ consists of a simplicial complex C and a coloring map χ : V(C) → A, such that for all X ∈ C, all the vertices of X have distinct colors. Let C and D be two simplicial complexes. A simplicial map f : C → D maps the vertices of C to vertices of D, such that if X is a simplex of C, f (X) is a simplex of D. A chromatic simplicial map between two chromatic simplicial complexes is a simplicial map that preserves colors. Let S A be the category of pure chromatic simplicial complexes on A, with chromatic simplicial maps for morphisms.
A Kripke frame M = S, ∼ over a set A of agents consists of a set of states S and a family of equivalence relations on S, written ∼ a for every a ∈ A. Two states u, v ∈ S such that u ∼ a v are said to be indistinguishable by a. A Kripke frame is proper if any two states can be distinguished by at least one agent. Let M = S, ∼ and N = T, ∼ be two Kripke frames. A morphism from M to N is a function f from S to T such that for all u, v ∈ S, for all a ∈ A, u ∼ a v implies f (u) ∼ a f (v). We write K A for the category of proper Kripke frames, with morphisms of Kripke frames as arrows.
The following theorem states that we can canonically associate a Kripke frame with a pure chromatic simplicial complex, and vice versa. In fact, this correspondence extends to morphisms, and thus we have an equivalence of categories, meaning that the two structures contain the same information.
Theorem 1. S A and K A are equivalent categories.
Proof. We construct functors F : S A → K A and G : K A → S A as follows.
Let C be a pure chromatic simplicial complex on the set of agents A. Its associated Kripke frame is F(C) = S, ∼ , where S is the set of facets of C, and the equivalence relation ∼ a , for each a ∈ A, is generated by the relations X ∼ a Y (for X and Y facets of C) if a ∈ χ(X ∩Y ).
For a morphism f : C → D in S A , we define F( f ) : F(C) → F(D) that takes a facet X of C to its image f (X), which is a facet of D since f is a chromatic map. Assume X and Y are facets of C such that . This map is well-defined (i.e., the image of a vertex does not depend on the chosen representative) because f is a morphism of Kripke frames, and thus it preserves the indistinguishability relations. It is easily checked that this is moreover a simplicial map.
Consider now a Kripke frame M = S, ∼ in K A with agent set A. FG(M) is the Kripke frame N = T, ∼ such that T is the set of facets of G(M). But we have seen above that the facets of Consider now a pure chromatic simplicial complex C ∈ S A . It is easily seen that GF(C) is isomorphic, as a pure chromatic simplicial complex, to C, hence S A and K A are equivalent categories. Example 1. The picture below shows a Kripke frame (left) and its associated chromatic simplicial complex (right). The three agents, named b, g, w, are represented as colors black, grey and white on the vertices of the simplicial complex. The three worlds of the Kripke frame correspond to the three triangles (i.e., 2-dimensional simplexes) of the simplicial complex. The two worlds indistinguishable by agent b, are glued along their black vertex; the two worlds indistinguishable by agents g and w are glued along the grey-and-white edge.
We now decorate our simplicial complexes with atomic propositions in order to get a notion of simplicial model.
Simplicial models and Kripke models. For technical reasons, we restrict to models where all the atomic propositions are saying something about some local value held by one particular agent. All the examples that we are interested in will fit in that framework. Let V be some countable set of values, and AP = {p a,x | a ∈ A, x ∈ V} be the set of atomic propositions. Intuitively, p a,x is true if agent a holds the value x. We write AP a for the atomic propositions concerning agent a.
A simplicial model M = C, χ, consists of a pure chromatic simplicial complex C, χ of dimension n, and a labeling : V(C) → P(AP) that associates with each vertex v ∈ V(C) a set of atomic propositions concerning agent A morphism of simplicial models f : M → M is a chromatic simplicial map that preserves the labeling: ( f (v)) = (v) (and χ). We denote by SM A,AP the category of simplicial models over the set of agents A and atomic propositions AP. We can now extend the two maps F and G of Theorem 1 to an equivalence between simplicial models and Kripke models.
Conversely, given a Kripke model M = S, ∼, L , the underlying simplicial complex of G(M) is obtained by gluing together n-simplexes of the form {v s 0 , . . . , v s n }, with s ∈ S. We label the vertex v s i (colored by a i ) by (v s i ) = L(s) ∩ AP a i . This is well defined because two vertices v s i and v s i are identified whenever s ∼ a i s , so L(s) ∩ AP a i = L(s ) ∩ AP a i since M is local.
The action of F and G on morphisms is the same as in Theorem 1. It is easy to check that the additional properties of morphisms between models are verified. Checking that FG(M) M and GF(M) M also works the same as in the previous theorem.
Example 2. The figure below shows the so-called binary input complex and its associated Kripke model, for 2 and 3 agents. Each agent gets a binary value 0 or 1, but doesn't know which value has been received by the other agents. So, every possible combination of 0's and 1's is a possible world.
In the Kripke model, the agents are called b, g, w, and the labeling L of the possible worlds is represented as a sequence of values, e.g., 101, representing the values chosen by the agents b, g, w (in that order). In the 3-agents case, the labels of the dotted edges have been omitted to avoid overloading the picture, as well as all the edges labeled by only one agent.
In the simplicial model, agents are represented as colors (black, grey, and white). The labeling is represented as a single value in a vertex, e.g., "1" in a grey vertex means that agent g has chosen value 1. The possible worlds correspond to edges in the 2-agents case, and triangles in the 3-agents case. It is well known in the context of distributed computing [16] that the binary input simplicial complex for n + 1 agents is a n-dimensional sphere.
Example 3. Consider the following situation. There are three agents black, grey and white, and a deck of four cards, {0, 1, 2, 3}. One card is given to each agent, and the last card is kept hidden. Each agent knows its own card, but not the other agents' cards. The simplicial model corresponding to that situation is depicted below on the left. The color of vertices indicate the corresponding agent, and the labeling is its card. In the planar drawing, vertices that appear several times with the same color and value should be identified. The arrows A and B indicate how the edges should be glued together. What we obtain is a triangulated torus.
If the deck of cards is {0, 1, 2}, we get the figure on the right, where the two white vertices (with card 0) should be identified, as well as the two black ones.
Thus, Theorem 2 says that simplicial models are closely related to Kripke models. Keeping that translation in mind, we can reformulate the usual semantics of formulas in Kripke models, in terms of simplicial models. Definition 1. We define the truth of a formula ϕ in some epistemic state (M, X) with M = C, χ, a simplicial model, X ∈ F(C) a facet of C and ϕ ∈ L K (A, AP). The satisfaction relation, determining when a formula is true in an epistemic state, is defined as: We can show that this definition of truth agrees with the usual one (which we write |= K to avoid confusion) on the corresponding Kripke model. Proof. This is straightforward by induction on the formula ϕ.
It is well-known that the axiom system S5 n is sound and complete with respect to the class of Kripke models [10]. Since we restrict here to local Kripke models, we need to add the following axiom (or axiom schema, if V is infinite), saying that every agent knows which values it holds: Corollary 1. The axiom system S5 n + Loc is sound and complete w.r.t. the class of simplicial models.
Proof. Adapting the proof of [10] for S5 n , it can be shown that S5 n + Loc is sound and complete w.r.t. the class of local proper Kripke models. Then, we transpose it to simplicial models using Proposition 1.
Indeed, suppose a formula ϕ is true for every local proper Kripke model and any state. Then given a simplicial model and facet (M, X), since by assumption F(M), X |= K ϕ, we also have M, X |= ϕ by Proposition 1. So ϕ is true in every simplicial model. Similarly, the converse also holds.
The following Theorem shows that morphisms of simplicial models cannot "gain knowledge about the world". This will be useful in Section 4 when we formulate the solvability of a task as the existence of some morphism.  Suppose now that M , f (X) |= K a ϕ. In order to show M, X |= K a ϕ, assume that a ∈ χ(X ∩Y ) for some facet Y , and let us prove M,Y |= ϕ.
and χ( f (v)) = a. So a ∈ χ( f (X) ∩ f (Y )) and thus M , f (Y ) |= ϕ. By induction hypothesis, we obtain M,Y |= ϕ. Finally, suppose that M , f (X) |= C B ϕ. We want to show that M, X |= C B ϕ, i.e., for every Y reachable from X following a sequence of simplexes sharing a B-colored vertex, M,Y |= ϕ. By the same reasoning as in the K a case, f (Y ) is B-reachable from f (X), so M , f (Y ) |= ϕ, and thus M,Y |= ϕ.
The restriction on ϕ forbids formulas saying something about what an agent does not know. Indeed, one can "gain" the knowledge that some agent does not know something; but this is not relevant information for solving the tasks that we have in mind. In fact, Theorem 3 is still true if the formula ϕ contains other knowledge operators such as group and common knowledge. For B a subgroup of agents, group knowledge is defined as E B ϕ = b∈B K b ϕ and common knowledge for group B is, semantically, the least solution of the equation C B ϕ = ϕ ∧ E B (C B ϕ).

DEL via simplicial complexes
We describe here our adaptation of Dynamic Epistemic Logic (DEL) to simplicial models, and an action model that is fundamental in distributed computing.

DEL basic notions
DEL is the study of modal logics of model change [4,10]. A modal logic studied in DEL is obtained by using action models [3], which are relational structures that can be used to describe a variety of informational actions. An action can be thought of as an announcement made by the environment, which is not necessarily public, in the sense that not all agents receive these announcements. An action model describes all the possible actions that might happen, as well as how they affect the different agents. We first recall the usual notion of action model; then describe a dual version, appropriate to represent epistemic change in simplicial models.

Dynamic Epistemic
Logic. An action model is a structure T, ∼, pre , where T is a domain of action points, such that for each a ∈ A, ∼ a is an equivalence relation on T , and pre : T → L K is a function that assigns a precondition pre A simplicial complex version of DEL. To work in the category of simplicial models, we consider a simplicial version of action models. First, let us define cartesian products. Given two pure chromatic simplicial complexes C and T of dimension n, the cartesian product C ×T is the following pure chromatic simplicial complex of dimension n. Its vertices are of the form (u, v) with u ∈ V(C) and v ∈ V(T ) such that χ(u) = χ(v); the color of (u, v) is χ((u, v)) = χ(u) = χ(v). Its simplexes are of the form A simplicial action model, T, χ, pre consists of a pure chromatic simplicial complex T, χ , where the facets F(T ) represent communicative actions, and pre assigns to each facet X ∈ F(T ) a precondition formula pre(X) in L K . Let M = C, χ, be a simplicial model, and A = T, χ, pre be a simplicial action Recall from Theorem 2 the two functors F and G that define an equivalence of categories between simplicial models and Kripke models. We have a similar correspondence between action models and simplicial action models, which we still write F and G. On the underlying Kripke frame and simplicial complex they are the same as before; and the precondition of an action point is just copied to the corresponding facet. The simplicial version of the product update model agrees with the usual one on Kripke models:

Proposition 3. Consider a simplicial model M and simplicial action model A, and their corresponding Kripke model F(M) and action model F(A). Then, the Kripke models F(M[A]) and F(M)[F(A)] are isomorphic. The same is true for G, starting with a Kripke model M and action model A.
Proof. The main observation is that both constructions of product update model rely on a notion of cartesian product (in the category of pure chromatic simplicial complexes for M[A], and in the category of Kripke frames for F(M)[F(A)]). These are both cartesian products in the categorical sense, therefore they are preserved by the functor F because it is part of an equivalence of category.

A basic action model for distributed computing
We describe here the immediate snapshot action model IS for one communication exchange among asynchronous agents. As an action model, it is new and to the best of our knowledge it has not been studied from the DEL perspective; immediate snapshots operations are important in distributed computing, and many variants of computational models based on them have been considered, including multi-round communication exchanges, see e.g. [1,16] but for the point we want to make about using DEL, the main issues can be studied with this very simple action model.
The situation we have in mind is the following. The n + 1 agents correspond to n + 1 concurrent processes. Initially, each process has some input value, and they communicate (only once) through a shared memory array in order to try to learn each other's input value. They use the following protocol: each process has a dedicated memory cell in the array, to which it writes its input value. Then, it reads one by one all the cells of the array, to see which other input values have been written. Based on this information, each process decides an output value. The processes are asynchronous, meaning that an execution consists of an arbitrary interleaving of the write and read operations of all the processes (one write per process, and n + 1 reads per process).
We could describe the action model corresponding to this situation, and present all of our results using it, but to illustrate more easily the basic ideas, we define instead an action model IS corresponding to a subset of all the executions in the previous situation. And we do so without loss of generality, because from the task computability perspective, they are known to be equivalent [1].
The interleavings we consider can be represented by a sequence of concurrency classes, c 1 , c 2 , . . . , c m . For each concurrency class c i , all the agents in c i execute their write operations simultaneously, then all of them execute their read operations simultaneously, then we move on to the next concurrency class c i+1 . Thus, all the agents in c i see each other's values, as well as the values of the agents from the previous concurrency classes.
Let us define formally the simplicial action model corresponding to such immediate snapshot schedules. A sequential partition of agents A is a sequence c = c 1 , c 2 , . . . , c m , of non-empty, disjoint subsets of A, whose union is equal to A. Each c i is called a concurrency class. Notice that 1 ≤ m ≤ |A|, and when m = 1 all agents take an immediate snapshot concurrently, while if m = |A|, all take immediate snapshots sequentially. The agents in a concurrency class c j learn the input values of all the agents in earlier concurrency classes c i for i ≤ j, and which agent wrote which value. In particular, agents in c m learn the inputs of all agents (and there is always at least one such agent), and if m = 1, then all agents learn all the values. Define Aview a (c) ('A' stands for "agent" view) to be the set of agents whose inputs are seen by a in c: if a ∈ c j , Aview a (c) = i≤ j c i . Notice that two executions of the immediate snapshot are indistinguishable by a when the corresponding sequential partitions yield the same Aview for a, and additionally, the agents in Aview have the same inputs.
Consider for instance the simplicial model of Example 2 where three agents A = {b, g, w} each have a binary input value 0 or 1. Let M = C, χ, be the corresponding simplicial model, and denote a facet X ∈ F(C) by a binary sequence b 0 b 1 b 2 , corresponding to the three values of b, g, w, in that order.
In the immediate snapshot simplicial action model IS = T, χ, pre for three agents A = {b, g, w}, each action in T is associated with a sequential partition of A. Furthermore, there is one copy of each sequential partition c for each facet X ∈ F(C) of model M. Thus, an action of T is given by the data The figure above illustrates (part of) the action model IS. It consists of the subdivisions of two triangles; the green copy above has one triangle for each sequential partition (and has four sequential partitions depicted). Similarly, the yellow subdivided triangle below repeats again all sequential partitions, but for a different precondition. The precondition for all facets in the subdivided triangle above is 000, while for the facets of the subdivided triangle below it is 100. The subdivision on top has four facets identified, X,Y, Z,W , each one corresponding to one of the four types of sequential partitions of A = {b, w, g}, along with the corresponding Aviews shown in bubbles. The colors black, grey, white of the vertices correspond respectively to agents b, g, w. Notice that, for example, neither b nor w distinguish between actions Y and Z, and indeed, their views are equal in Y and Z: the view of b consists of itself and the view of w consists of the three inputs. The numbers on the subdivided triangles indicate the views. In the corners, an agent does not learn the input of any other agent. In the boundary, two agents learn each other's inputs, and in the center, all three learn each other's inputs. Finally, let us look at what happens on the boundary shared by both subdivisions. For example, the two facets in the middle of the figure correspond to the sequential partition {gw}{b}; neither w nor g have seen b, so they cannot tell whether the input of b is 0 or 1.
An action model is uniform if its set of actions (facets) can be partitioned into k copies of a complex C, called components, such that all actions in C i have the same precondition, which is true in exactly one facet X i of the simplicial model M. The action model IS is indeed uniform, and its components are isomorphic to a simplicial complex C, called the standard chromatic subdivision, that has been thoroughly studied. It is clear from the figure that C is a subdivision, but for an arbitrary number of agents, the proof is not simple [16,23]. It has been shown to have several other topological properties, such as being collapsible [5]. But in fact, for many applications such as consensus and set agreement, it is sufficient to observe the following (see ch.9 of [16]). For a detailed proof see [1]. To complete the example, notice that the effect of applying the action model IS to the model M of Example 2, which consists of a triangulated sphere, is to subdivide each of the triangles in the sphere. Remarkably, the topology of the initial simplicial complex is preserved.
In the IS model, each agent executes a single immediate snapshot. Iterating this model gives rise to the iterated immediate snapshot model IS r [1,27], where each agent executes r consecutive immediate snapshots. Each component is a chromatic subdivision, where every triangle is subdivided r times.

A DEL semantics for distributed task computability 4.1 Tasks
Consider the situation where a set of agents A starts in an initial global state, defined by values given to each agent. The values are local, in the sense that each agent knows its own initial value, but not necessarily the values given to other agents. The agents communicate to each other their initial values, via the immediate snapshot action model IS of Section 3.2. Then, based on the information each agent has after communication, the agent produces an output value. A task specifies the output values that the agents may decide, when starting in a given input state. Tasks have been studied since early on in distributed computability [6]. Here we provide, for the first time, a DEL semantics for tasks. Consider a simplicial model I = I, χ, called the initial simplicial model. Each facet of I, with its labeling , represents a possible initial configuration. Let us fix I to be the binary inputs model of Example 2, to illustrate the ideas, and because it appears frequently in distributed computing.
A task for I is a simplicial action model T = T, χ, pre for agents A, where each facet is of the form X = { b, d b , g, d g , w, d w }, where the values d b , d g , d w are taken from an arbitrary domain of output values. Each such X has a precondition that is true in one or more facets of I, interpreted as "if the input configuration is a facet in which pre(X) holds, and every agent a ∈ A decides the value d a , then this is a valid execution".
The most important task in distributed computing is binary consensus, where the agents must agree on a value 0 or 1, such that at least one agent had the agreed value as input. Thus, T has only two facets, X 0 where all decisions are 0 and X 1 , where all decisions are 1. pre(X 0 ) is true in all facets of I, except for the one where all agents start with input 1. Similarly, pre(X 1 ) is true in all facets of I, except for the one where all agents start with input 0. The following generalization of consensus has been well studied in distributed computability [16]. In the k-set agreement task, agents start with inputs from a set of at least k + 1 values, and have to decide on at most k different inputs.

Semantics of task solvability
Given the simplicial input model I and a communication model A such as IS, we get the simplicial protocol model I[A], that represents the knowledge gained by the agents after executing A. To solve a task T , each agent, based on its own knowledge, should produce an output value, such that the vector of output values corresponds to a facet of T , respecting the preconditions of the task.
The following gives a formal epistemic logic semantics to task solvability, Recall that a morphism δ of simplicial models is a chromatic simplicial map that preserves the labeling: ( f (v)) = (v). Also recall that the product update model I[A] is a sub-complex of the cartesian product I ×A, whose vertices are of the form (i, ac) with i a vertex of I and ac a vertex of A. We write π I for the first projection on I, which is a morphism of simplicial models.

I[A]
The justification for this definition is the following. A facet X in I[A] corresponds to a pair (i, ac), where i ∈ F(I) represents input value assignments to all agents, and ac ∈ F(A) represents an action, codifying the communication exchanges that took place. The morphism δ takes X to a facet δ (X) = (i, dec) of I[T ], where dec ∈ F(T ) is the set of decision values that the agents will choose in the situation X. Moreover, pre(dec) holds in i, meaning that dec corresponds to valid decision values for input i. The commutativity of the diagram expresses the fact that both X and δ (X) correspond to the same input assignment i. Now consider a single vertex v ∈ X with χ(v) = a ∈ A. Then, agent a decides its value solely according to its knowledge in I[A]: if another facet X contains v, then δ (v) ∈ δ (X) ∩ δ (X ), meaning that a has to decide the same value in both situations.
The diagram above has two illuminating interpretations. First, by Theorem 3, we know that the knowledge about the world of each agent can only decrease (or stay constant) along the δ arrow. Recall that a simplicial map is the discrete equivalent of a continuous map, and hence task solvability is of a topological nature. This leads us to the connection with distributed computability described in this extended abstract; further details are in [13,14].

Applications
Here we describe how to use our DEL setting to analyze solvability in the immediate-snapshot model of three well-studied distributed computing tasks: consensus, set agreement, and approximate agreement. Their solvability is already well-understood; our aim here is to understand the epistemic logic content of the known topological arguments that are used to prove unsolvability.
Consensus Let I = I, χ, be the initial simplicial model for binary input values, and T = T, χ, pre be the action model for binary consensus. Thus, T has only two facets, X 0 where all decisions are 0 and X 1 , where all decisions are 1. The underlying complex of I[T ] consists of two disjoint simplicial complexes: I 0 × X 0 and I 1 × X 1 , where I 0 consists of all input facets with at least one 0, and I 1 consists of all input facets with at least one 1. Notice that, in fact, each of the two complexes I i × X i , for i ∈ {0, 1}, is isomorphic to I i , since X i consists of just one facet.
To show that binary consensus cannot be solved by the immediate snapshot protocol, we must prove that the map δ : I[A] → I[T ] of Definition 2 does not exist. The usual proof of impossibility uses a topological obstruction to the existence of δ . Here, instead, we exhibit a logical obstruction. Theorem 4. The binary consensus task is not solvable by IS.
Proof. We first state some required knowledge at I[T ] to solve the task. Let ϕ i be a formula denoting that at least one agent has input i. We claim that, for i ∈ {0, 1}, at any facet Y of I i × X i , there is common knowledge that at least one input is i, Now, consider the simplicial model I[IS], for the immediate snapshot action model. By Lemma 1 the underlying complex of I[IS] is strongly connected, and hence there is a path from the facet with valuation indicating that all inputs are 0 to the facet where all inputs are 1. Namely, we claim that at any facet X of I[IS], it is not the case that I[IS], X |= C A ϕ i , for both i = 0 and i = 1.
Finally, we know that morphisms of simplicial models cannot "gain knowledge about the world" from Theorem 3, and hence, there cannot be a morphism δ from I[IS] to I[T ], by the two previous claims.
Two observations. First, notice that the proof argument holds for any other model, instead of IS, which is connected. This is the case for any number of communication rounds by wait-free asynchronous agents [19], and even if only one may crash in a message passing system [11], which are the classic consensus impossibility results. Secondly, the usual topological argument for impossibility is the following: because simplicial maps preserve connectivity, δ cannot send a connected simplicial complex into a disconnected simplicial complex. Notice how in both the logical and the topological proofs, the main ingredient is a connectedness argument.
Theorem 5. The 2-set agreement task is not solvable by IS.
Proof (Sketch). The usual topological argument [16] roughly goes as follows. We can visualize the complex I[T ] as having the structure of a triangle with a hole in the middle. The three "corners" of the triangle, indexed by i ∈ {0, 1, 2}, consist of just one facet of the form I i × X i , where I i is the input facet with only one input, i, and in X i all decisions are i. The three "edges" of the triangle are of the form I i j × X i j , where I i j consists of all facets with inputs in {i, j}, and X i j the facets whose decisions are in {i, j}. Notice that I i j × X i j contains I i × X i and I j × X j . This triangle must have a hole in the middle: otherwise, by Sperner's lemma (see e.g. [22,16] Approximate agreement We discuss now the approximate agreement task, where agents have to decide values which are 1/N apart from each other. Its solvability depends on the number of immediate snapshot communication rounds r that the agents perform. We did not describe in detail the action model IS r , so we only briefly mention that the task is solvable if and only if the number of rounds is large enough, with respect to N. Very roughly, there is a center facet X c in the product update of the task, where I[T ], X c |= E k φ c , where k is roughly N/2, for a formula φ c representing the input values in X c . On the other hand, there is no facet X in I[IS r ] where this knowledge exists, unless r is large enough. A detailed proof is in the technical report [13].

Conclusions
We have made a first step into defining a version of fault-tolerant multi-agent DEL using simplicial complexes as models, providing a different perspective from the classical knowledge approach based on Kripke frames. Also, we have defined problem specifications based on DEL using simplical complexes, instead of based on formula specifications. We have thus established a bridge between the theory of distributed computability and epistemic logic. We illustrated the setting with a simple one-round communication action model IS, that corresponds to a well-studied situation in distributed computing, but many other models can be treated similarly.
Many interesting questions are left for future work. We have developed here all our theory on pure simplicial complexes, where all the facets are of the same dimension. Extending it to complexes with lower dimensional facets would allow us to model detectable failures. In two preliminary reports we give additional details, and explore further some of these issues [13,14]. It is known to be undecidable whether a task is solvable in the immediate snapshot model, even for three processes [12,17], and hence the connection we establish with DEL implies that it is undecidable if certain knowledge has been gained in multi-round immediate snapshot action models, but further work is needed to study this issue. Future work is needed to study bisimulations and their relation to the simulations studied in task computability [18]. It would be of interest to study other distributed computing settings, especially those which have stronger communication objects available, and which are known to yield complexes that might not preserve the topology of the input complex.