Reasoning About Distributed Knowledge of Groups with Inﬁnitely Many Agents

Spatial constraint systems (scs) are semantic structures for reasoning about spatial and epistemic information in concurrent systems. We develop the theory of scs to reason about the distributed information of potentially inﬁnite groups . We characterize the notion of distributed information of a group of agents as the inﬁmum of the set of join-preserving functions that represent the spaces of the agents in the group. We provide an alternative characterization of this notion as the greatest family of join-preserving functions that satisfy certain basic properties. We show compositionality results for these characterizations and conditions under which information that can be obtained by an inﬁnite group can also be obtained by a ﬁnite group. Finally, we provide algorithms that compute the distributive group information of ﬁnite groups.


Introduction
In current distributed systems such as social networks, actors behave more as members of a certain group than as isolated individuals.Information, opinions, and beliefs of a particular actor are frequently the result of an evolving process of interchanges with other actors in a Given the above reduction, assume that d is some piece of information resulting from the combination (join) of the three constraints above, i.e., d = a b c, but strictly above the join of any two of them.We are then in the situation where neither agent has d in their spaces, but as a group they could potentially have d by combining their information.Intuitively, d is distributed in the spaces of the group I = {1, 2}.Being able to predict the information that agents 1 and 2 may derive as group is a relevant issue in multi-agent concurrent systems, particularly if d represents unwanted or conflicting information (e.g., d = false).
In this work we introduce the theory of group space functions ∆ I : Con → Con to reason about information distributed among the members of a potentially infinite group I.We shall refer to ∆ I as the distributed space of group I.In our theory c ∆ I (e) holds exactly when we can derive from c that e is distributed among the agents in I. E.g., for d above, we should have s 1 (a) s 2 (b c) ∆ {1,2} (d) meaning that from the information s 1 (a) s 2 (b c) we can derive that d is distributed among the group I = {1, 2}.Furthermore, ∆ I (e) ∆ J (e) holds whenever I ⊆ J since if e is distributed among a group I, it should also be distributed in a group that includes the agents of I.
Distributed information of infinite groups can be used to reason about multi-agent computations with unboundedly many agents.For example, a computation in sccp is a possibly infinite reduction sequence γ of the form P 0 , c 0 −→ P The result of γ is n≥0 c n , the join of all the stores in the computation.In sccp all fair computations from a configuration have the same result [15].Thus, the observable behaviour of P with initial store c, written O(P, c), is defined as the result of any fair computation starting from P, c .Now consider a setting where in addition to their sccp capabilities in [15], processes can also create new agents.Hence, unboundedly many agents, say agents 1, 2, . .., may be created during an infinite computation.In this case, O(P, c) ∆ N (false), where N is the set of natural numbers, would imply that some (finite or infinite) set of agents in any fair computation from P, c may reach contradictory local information among them.Notice that from the above-mentioned properties of distributed spaces, the existence of a finite set of agents H ⊆ N such that O(P, c) ∆ H (false) implies O(P, c) ∆ N (false).The converse of this implication will be called group compactness and we will provide meaningful sufficient conditions for it to hold.
Our main contributions are listed below.
1. We characterize the distributed space ∆ I as a space function resulting from the infimum of the set of join-preserving functions that represent the spaces of the agents of a possibly infinite group I.

2.
We provide an alternative characterization of a distributed space as the greatest join preserving function that satisfies certain basic properties.

3.
We show that distributed spaces have an inherent compositional nature: The information of a group is determined by that of its subgroups.

4.
We provide a group compactness result for groups: Given an infinite group I, meaningful conditions under which c ∆ I (e) implies c ∆ J (e) for some finite group J ⊆ I.

5.
For finite scs we shall provide algorithms to compute ∆ I that exploit the above-mentioned compositional nature of distributed spaces.All in all, in this paper we put forward an algebraic theory for group reasoning in the context of ccp.The theory and algorithms here developed can be used in the semantics of the spatial ccp process calculus to reason about or prevent potential unwanted evolutions of ccp processes.One could imagine the incorporation of group reasoning in a variety of process algebraic settings and indeed we expect that such formalisms will appear in due course.

29:4
Reasoning About Distributed Knowledge with Infinitely Many Agents

Background
We presuppose basic knowledge of domain and order theory [3,1,6] and use the following notions.Let C be a poset (Con, ), and let S ⊆ Con.We use S to denote the least upper bound (or supremum or join) of the elements in S, and S is the greatest lower bound (glb) (infimum or meet) of the elements in S.An element e ∈ S is the greatest element of S iff for every element e ∈ S, e e.If such e exists, we denote it by max S. As usual, if S = {c, d}, c d and c d represent S and S, respectively.If S = ∅, we denote S = true and S = false.We say that C is a complete lattice iff each subset of Con has a supremum in Con.The poset C is distributive iff for every a, b, c ∈ Con, a (b c) = (a b) (a c).A non-empty set S ⊆ Con is directed iff for every pair of elements x, y ∈ S, there exists z ∈ S such that x z and y z, or iff every finite subset of S has an upper bound in S. Also c ∈ Con is compact iff for any directed subset D of Con, c D implies c d for some d ∈ D. A self-map on Con is a function f from Con to Con.Let (Con, ) be a complete lattice.The self-map f on Con preserves the join of a set We say that f distributes over joins (or that f preserves joins) iff it preserves the join of arbitrary sets.A self-map f on Con is continuous iff it preserves the join of any directed set.

Spatial Constraint Systems
Constraint systems [18] are semantic structures to specify partial information.They can be formalized as complete lattices [2].
Definition 1 (Constraint Systems [2]).A constraint system (cs) C is a complete lattice (Con, ).The elements of Con are called constraints.The symbols , true and false will be used to denote the least upper bound (lub) operation, the bottom, and the top element of C.
The elements of the lattice, the constraints, represent (partial) information.A constraint c can be viewed as an assertion.The lattice order is meant to capture entailment of information: c d, alternatively written d c, means that the assertion d represents at least as much information as c.We think of d c as saying that d entails c or that c can be derived from d.The operator represents join of information; c d can be seen as an assertion stating that both c and d hold.We can think of as representing conjunction of assertions.The top element represents the join of all, possibly inconsistent, information, hence it is referred to as false.The bottom element true represents empty information.We say that c is consistent if c = false, otherwise we say that c is inconsistent.Similarly, we say that c is consistent/inconsistent with d if c d is consistent/inconsistent.Constraint Frames.One can define a general form of implication by adapting the corresponding notion from Heyting Algebras to cs.A Heyting implication c → d in our setting corresponds to the weakest constraint one needs to join c with to derive d.Definition 2 (Constraint Frames [7]).A constraint system (Con, ) is said to be a constraint frame iff its joins distribute over arbitrary meets.More precisely, c S = {c e | e ∈ S} for every c ∈ Con and S ⊆ Con.Define c → d as {e ∈ Con | c e d}.
The following properties of Heyting implication correspond to standard logical properties (with →, , and interpreted as implication, conjunction, and entailment).Proposition 3 ([7]).Let (Con, ) be a constraint frame.For every c, d, e ∈ Con the following holds: (1) Spatial Constraint Systems.The authors of [15] extended the notion of cs to account for distributed and multi-agent scenarios with a finite number of agents, each having their own space for local information and their computations.The extended structures are called spatial cs (scs).Here we adapt scs to reason about possibly infinite groups of agents.
A group G is a set of agents.Each i ∈ G has a space function s i : Con → Con satisfying some structural conditions.Recall that constraints can be viewed as assertions.Thus given c ∈ Con, we can then think of the constraint s i (c) as an assertion stating that c is a piece of information residing within a space of agent i.Some alternative epistemic interpretations of s i (c) is that it is an assertion stating that agent i believes c, that c holds within the space of agent i, or that agent i interprets c as s i (c).All these interpretations convey the idea that c is local or subjective to agent i.
In [15] scs are used to specify the spatial distribution of information in configurations P, c where P is a process and c is a constraint.E.g., a reduction P, s i (c) s j (d) −→ Q, s i (c) s j (d e) means that P with c in the space of agent i and d in the space of agent j can evolve to Q while adding e to the space of agent j.
We now introduce the notion of space function.
Definition 4 (Space Functions).A space function over a cs (Con, ) is a continuous selfmap f : Con → Con s.t. for every c, d ∈ Con (S. 1) We shall use S(C) to denote the set of all space functions over C = (Con, ).
The assertion f (c) can be viewed as saying that c is in the space represented by f .Property S.1 states that having an empty local space amounts to nothing.Property S.2 allows us to join and distribute the information in the space represented by f .
In [15] space functions were not required to be continuous.Nevertheless, we will argue later, in Remark 17, that continuity comes naturally in the intended phenomena we wish to capture: modelling information of possibly infinite groups.In fact, in [15] scs could only have finitely many agents.
In this work we also extend scs to allow arbitrary, possibly infinite, sets of agents.A spatial cs is a cs with a possibly infinite group of agents each having a space function.

Definition 5 (Spatial Constraint Systems).
A spatial cs (scs) is a cs C = (Con, ) equipped with a possibly infinite tuple s = (s i ) i∈G of space functions from S(C).
We shall use (Con, , (s i ) i∈G ) to denote an scs with a tuple (s i ) i∈G .We refer to G and s as the group of agents and space tuple of C and to each s i as the space function in C of agent i. Subsets of G are also referred to as groups of agents (or sub-groups of G).
Let us illustrate a simple scs that will be used throughout the paper.Example 6.The scs (Con, , (s i ) i∈{1,2} ) in Fig. 1 is given by the complete lattice M 2 and two agents.We have Con = {p ∨ ¬p, p, ¬p, p ∧ ¬p} and c d iff c is a logical consequence of d.The top element false is p ∧ ¬p, the bottom element true is p ∨ ¬p, and the constraints p and ¬p are incomparable with each other.The set of agents is {1, 2} with space functions s 1 and s 2 : For agent 1, s 1 (p) = ¬p, s 1 (¬p) = p, s 1 (false) = false, s 1 (true) = true, and for agent 2, s 2 (p) = false = s 2 (false), s 2 (¬p) = ¬p, s 2 (true) = true.The intuition is that the agent 2 sees no difference between p and false while agent 1 interprets ¬p as p and vice versa.More involved examples of scs include meaningful families of structures from logic and economics such as Kripke structures and Aumann structures (see [15]).We illustrate scs with infinite groups in the next section.

Distributed Information
In this section we characterize the notion of collective information of a group of agents.Roughly speaking, the distributed (or collective) information of a group I is the join of each piece of information that resides in the space of some i ∈ I.The distributed information of I w.r.t.c is the distributive information of I that can be derived from c.We wish to formalize whether a given e can be derived from the collective information of the group I w.r.t.c.
The following examples, which we will use throughout this section, illustrate the above intuition.Let us now consider an example with infinitely many agents.Let c def = i∈N s i (a i ) for some increasing chain a 0 a 1 . . . .Take e s.t. e i∈N a i .Notice that unless e is compact (see Section 2), it may be the case that no agent i ∈ N holds e in their space; e.g., if e a i for any i ∈ N. Yet, from our assumption, e can be derived from the collective information w.r.t.c of all the agents in N, i.e., i∈N a i .
The above example may suggest that the distributed information can be obtained by joining individual local information derived from c. Individual information of an agent i can be characterized as the i-projection of c defined thus: Definition 8 (Agent and Join Projections).Let C = (Con, , (s i ) i∈G ) be an scs.Given i ∈ G, the i-agent projection of c ∈ Con is defined as The i-projection of an agent i of c naturally represents the join of all the information of agent i in c.The I-join projection of group I joins individual i-projections of c for i ∈ I.This projection can be used as a sound mechanism for reasoning about distributed-information: If e is I-join derivable from c then it follows from the distributed-information of I w.r.t.c.Example 9. Let c be as in Ex. 7. We have π i∈N a i e .Nevertheless, I-join projections do not provide a complete mechanism for reasoning about distributed information as illustrated below.We should be able to conclude from d that b is in the space of some agent in N but, in general, b is not N-join derivable from d .

Distributed Spaces
In the previous section we illustrated that the I-join projection of c, π I (c), the join of individual projections, may not project all distributed information of a group I. To solve this problem we shall develop the notion of I-group projection of c, written as Π I (c).To do this we shall first define a space function ∆ I called the distributed space of group I.The function ∆ I can be thought of as a virtual space including all the information that can be in the space of a member of I. We shall then define an I-projection Π I in terms of ∆ I much like π i is defined in terms of s i .
Recall that S(C) denotes the set of all space functions over a cs C. For notational convenience, we shall use (f I ) I⊆G to denote the tuple (f I ) I∈P(G) of elements of S(C).
Set of Space Functions.We begin by introducing a new partial order induced by C. The set of space functions ordered point-wise.
Definition 11 (Space Functions Order).Let C = (Con, , (s i ) i∈G ) be an scs.Given f, g ∈ S(C), define f s g iff f (c) g(c) for every c ∈ Con.We shall use C s to denote the partial order (S(C), s ); the set of all space functions ordered by s .
A very important fact for the design of our structure is that the set of space functions S(C) can be made into a complete lattice.Lemma 12. Let C = (Con, , (s i ) i∈G ) be an scs.Then C s is a complete lattice.

Distributed Spaces as Maximum Spaces
Let us consider the lattice of space functions C s = (S(C), s ).Suppose that f and g are space functions in C s with f s g.Intuitively, every piece of information c in the space represented by g is also in the space represented by f since f (c) g(c) for every c ∈ Con.This can be interpreted as saying that the space represented by g is included in the space represented by f ; in other words the bigger the space, the smaller the function that represents it in the lattice C s .
Following the above intuition, the order relation s of C s represents (reverse) space inclusion and the join and meet operations in C s represent intersection and union of spaces.The biggest and the smallest spaces are represented by the bottom and the top elements of the lattice C s , here called λ ⊥ and λ and defined as follows.The distributed space ∆ I of a group I can be viewed as the function that represents the smallest space that includes all the local information of the agents in I. From the above intuition, ∆ I should be the greatest space function below the space functions of the agents in I.The existence of such a function follows from completeness of (S(C), s ) (Lemma 12).Definition 14 (Distributed Spaces).Let C be an scs (Con, , (s i ) i∈G ).The distributed spaces of C is given by ∆ = (∆ I ) I⊆G where We shall say that e is distributed among I ⊆ G w.r.t.c iff c ∆ I (e).We shall refer to each ∆ I as the (distributed) space of the group I.
It follows from Lemma 12 that ∆ I = {s i | i ∈ I} (where is the meet in the complete lattice (S(C), s )).Fig. 2b illustrates an scs and its distributed space ∆ {1,2} .
Compositionality .Distributed spaces have pleasant compositional properties.They capture the intuition that the distributed information of a group I can be obtained from the the distributive information of its subgroups.
Theorem 15.Let (∆ I ) I⊆G be the distributed spaces of an scs (Con, , Recall that λ corresponds to the empty space (see Def. 13).The first property realizes the intuition that the empty subgroup ∅ does not have any information whatsoever distributed w.r.t. a consistent c: for if c ∆ ∅ (e) and c = false then e = true.Intuitively, the second property says that the function ∆ I for the group of one agent must be the agent's space function.The third property states that a group can join the information of its subgroups.The last property uses constraint implication, hence the constraint frame condition, to express that by joining the information a and a → c of their subgroups, the group I can obtain c.
Let us illustrate how to derive information of a group from smaller ones using Thm.15.Remark 17 (Continuity).The example with infinitely many agents in Ex. 7 illustrates well why we require our spaces to be continuous in the presence of possibly infinite groups.
In Thm. 15 we listed some useful properties about (∆ I ) I⊆G .In the next section we shall see that (∆ I ) I⊆G is the greatest solution of three basic properties.
We conclude this subsection with an important family of scs from mathematical economics: Aumann structures.We illustrate that the notion of distributed knowledge in these structures is an instance of a distributed space.
Example 18 (Aumann Constraint Systems).Aumann structures [13] are an event-based approach to modelling knowledge.An Aumann structure is a tuple A = (S, P 1 , . . ., P n ) where S is a set of states and each P i is a partition on S for agent i.The partitions are   An Aumann structure can be seen as a spatial constraint system C(A) with events as constraints, i.e., Con = {e | e is an event in A}, and for every e 1 , e 2 ∈ Con, e 1 e 2 iff e 2 ⊆ e 1 .The operators join ( ) and meet ( ) are intersection (∩) and union (∪) of events, respectively; true = S and false = ∅.The space functions are the knowledge operators, i.e., s i (c) = K i (c).From these definitions and since meets are unions one can easily verify that ∆ I (c) = D I (c) which shows the correspondence between distributed information and distributed knowledge.

Distributed Spaces as Group Distributions Candidates
We now wish to single out a few fundamental properties on tuples of self-maps that can be used to characterize distributed spaces.

Definition 19 (Distribution Candidates). Let C be an scs (Con, , (s
Property D.1 requires each δ I to be a space function.This is trivially met for δ I = ∆ I .Property D.2 says that the function δ I for a group of one agent must be the agent's space function.Clearly, δ {i} = ∆ {i} satisfies D.2; indeed the distributed space of a single agent is their own space.Finally, Property D.3 states that δ I (c) δ J (c), if I ⊆ J.This is also trivially satisfied if we take δ I = ∆ I and δ J = ∆ J .Indeed if a subgroup I has some distributed information c then any subgroup J that includes I should also have c.This also realizes our intuition above: The bigger the group, the bigger the space and thus the smaller the space function that represents it.

C O N C U R 2 0 1 9
Properties D1-D3, however, do not determine ∆ uniquely.In fact, there could be infinitely-many tuples of space functions that satisfy them.For example, if we were to chose δ ∅ = λ , δ {i} = s i for every i ∈ G, and δ I = λ ⊥ whenever |I| > 1 then D1, D2 and D3 would be trivially met.But these space functions would not capture our intended meaning of distributed spaces: E.g., we would have true δ I (e) for every e thus implying that any e could be distributed in the empty information true amongst the agents in I = ∅.
Nevertheless, the following theorem states that (∆ I ) I⊆G could have been equivalently defined as the greatest space functions satisfying Properties D1-D3.
Let us illustrate the use of Properties D1-D3 in Thm.20 with the following example.The characterization of distributed spaces by Thm.20 provide us with a convenient proof method: E.g. to prove that a tuple F = (f I ) I⊆G equals (∆ I ) I⊆G , it suffices to show that the tuple is a gdc and that f I s ∆ I for all I ⊆ G.We use this mechanism in Section 5.

Group Projections
As promised in Section 4.1 we now give a definition of Group Projection.The function Π I (c) extracts exactly all information that the group I may have distributed w.r.t.c.Definition 22 (Group Projection).Let (∆ I ) I⊆G be the distributed spaces of an scs C = (Con, , (s i ) i∈G ).Given the set I ⊆ G, the I-group projection of c ∈ Con is defined as We say that e is I-group derivable from c iff Π I (c) e.
Much like space functions and agent projections, group projections and distributed spaces also form a pleasant correspondence: a Galois connection [3].
Proposition 23.Let (∆ I ) I⊆G be the distributed spaces of C = (Con, , (s i ) i∈G ).For every c, e ∈ Con, (1) The first property in Prop.23, a Galois connection, states that we can conclude from c that e is in the distributed space of I exactly when e is I-group derivable from c.The second says that the bigger the group, the bigger the projection.The last property says that whatever is I-join derivable is I-group derivable, although the opposite is not true as shown in Ex. 10.

Group Compactness
Suppose that an infinite group of agents I can derive e from c (i.e., c ∆ I (e)).A legitimate question is whether there exists a finite sub-group J of agents from I that can also derive e from c.The following theorem provides a positive answer to this question provided that e is a compact element (see Section 2) and I-join derivable from c.
Theorem 24 (Group Compactness).Let (∆ I ) I⊆G be the distributed spaces of an scs C = (Con, , (s i ) i∈G ).Suppose that c ∆ I (e).If e is compact and I-join derivable from c then there exists a finite set J ⊆ I such that c ∆ J (e).
We conclude this section with the following example of group compactness.
Example 25.Consider the example with infinitely many agents in Ex. 7. We have c = i∈N s i (a i ) for some increasing chain a 0 a 1 . . .and e s.t. e i∈N a i .Notice that c ∆ N (e ) and π N (c ) e .Hence e is N-join derivable from c .If e is compact, by Thm.24 there must be a finite subset J ⊆ N such that c ∆ J (e ).

Computing Distributed Information
Let us consider a finite scs C = (Con, , (s i ) i∈G ) with distributed spaces (∆ I ) I⊆G .By finite scs we mean that Con and G are finite sets.Let us consider the problem of computing ∆ I : Given a set {s i } i∈I of space functions, we wish to find the greatest space function f such that f s i for all i ∈ I (see Def. 14).
Because of the finiteness assumption, the above problem can be rephrased in simpler terms: Given a finite lattice L and a finite set S of join-homomorphisms on L, find the greatest join-homomorphism below all the elements of S.Even in small lattices with four elements and two space functions, finding such greatest function may not be immediate, e.g., for S = {s 1 , s 2 } and the lattice in Fig. 1 the answer is given Fig. 2b.
In this section we shall use the theory developed in previous sections to help us find algorithms for this problem.Recall from Def. 14 and Lemma 12 that ∆ I equals the following A naive (meet-based) approach would be to compute ∆ I (c) by taking the point-wise meet construction σ I (c) In fact σ I s ∆ I but σ I may not even be a space function as shown in Fig. 3a.
A brute force (join-based) solution to computing ∆ I (c) can be obtained by generating the set {f (c) | f ∈ S(C) and f s i for all i ∈ I} and taking its join.This approach works since the join of a set of space functions S can be computed point-wise: ( S)(c) = {f (c)|f ∈ S}.However, the number of such functions in S(C) can be at least factorial in the size of Con.For constraint frames, which under the finite assumption coincides with distributive lattices, the size of S(C) can be non-polynomial in the size of Con.Nevertheless, in the following sections we shall be able to exploit order theoretical results and properties of distributed spaces to compute ∆ I (c) for every c ∈ Con in polynomial time in the size of Con.The first approach uses the inherent compositional nature of ∆ I in distributed lattices.The second approach uses the above-mentioned σ as a suitable upper bound to compute ∆ I by approximating it from above.

Distributed Spaces in Distributed Lattices
Here we shall illustrate some pleasant compositionality properties of distributed spaces that can be used for computing ∆ I in distributed lattices (constraint frames).These properties capture the intuition that just like distributed information of a group I is the collective  information from all its members, it is also the collective information of its subgroups.The following results can be used to produce algorithms to compute ∆ I (c).We use X J to denote the set of tuples (x j ) j∈J of elements x j ∈ X for each j ∈ J.
Lemma 27.Let (∆ I ) I⊆G be the distributed spaces of a finite scs C = (Con, , (s i ) i∈G ).Suppose that (Con, ) is a constraint frame.Let δ + I : Con → Con, with I ⊆ G, be the function The above lemma basically says that ∆ I (c) is the greatest information below all possible combinations of information in the spaces of the agents in I that derive c.The proof that δ + I s ∆ I uses the fact that space functions preserve joins.The proof that δ + Lemma 27 can be used to prove the following theorem which intuitively characterizes the information of a group from that of its subgroups.Each of the following results will be used to generate algorithms to compute ∆ I (c), each an improvement on the previous one.
Theorem 29.Let (∆ I ) I⊆G be the distributed spaces of a finite scs C = (Con, , (s i ) i∈G ).Suppose that (Con, ) is a constraint frame.Let J, K ⊆ G be two groups such that I = J ∪ K. Then the following equalities hold: The above properties bear witness to the inherent compositional nature of our notion of distributed space.This nature will be exploited by the algorithms below.The first property in Thm.29 essentially reformulates Lemma 27 in terms of subgroups rather than agents.It can be proven by replacing ∆ J (a) and ∆ K (b) by δ + J (a) and δ + K (b), defined in Lemma 27 and using distributivity of joins over meets.The second and third properties in Thm.29 are pleasant simplifications of the first using heyting implication.These properties realize the intuition that by joining the information a and a → c of their subgroups, the group I can obtain c.

Algorithms for Distributed Lattices
Recall that λ represents the empty distributed space (see Def. 13).Given a finite scs C = (Con, , (s i ) i∈G ) with distributed spaces (∆ I ) I⊆G , the recursive function DeltaPart3(I, c) in Algorithm 1 computes ∆ I (c) for any given c ∈ Con.Its correctness, assuming that (Con, ) is a constraint frame (i.e., a distributed lattice), follows from Thm. 29 (3).Termination follows from the finiteness of C and the fact the sets J and K in the recursive calls form a partition of I. Notice that we select a partition (in halves) rather than any two sets K, J satisfying the condition I = J ∪ K to avoid significant recalculation.Algorithms.DeltaPart3(I, c) computes ∆ I (c) using Thm.29 (3).By modifying Line 8 with the corresponding meet operations, we obtain two variants of DeltaPart3 that use, instead of Thm.29(3), the Properties Thm.29(1) and Thm.29 (2).We call them DeltaPart1 and DeltaPart2.Finally, we also obtain a non-recursive algorithm that outputs ∆ I (c) by computing δ + I (c) in Lemma 27 in the obvious way: Computing the meet of elements of the form i∈I s i (a i ) for every tuple (a i ) i∈I such that i∈I a i c.We call it Delta+.
Worst-case time complexity.We assume that binary distributive lattice operations , , and → are computed in O(1) time.We also assume a fixed group I of size m = |I| and express the time complexity for computing ∆ I in terms of n = |Con |, the size of the set of constraints.The above-mentioned algorithms compute the value ∆ I (c).The worst-case time complexity for computing the function ∆ I is in (1) O(mn 1+m ) using Delta+, (2) O(mn 1+2 log 2 m ) using DeltaPart1, and (3) O(mn 1+log 2 m ) using DeltaPart2 and DeltaPart3.

Algorithm for Arbitrary Lattices
Let (∆ I ) I⊆G be the distributed spaces of a finite scs C = (Con, , (s i ) i∈G ).The maximum space function ∆ I under a collection {s i } i∈I can be computed by successive approximations, starting with some (not necessarily space) function known to be less than all {s i } i∈I .Assume There are two ways of correcting σ values: (1) when σ(u) σ(v) σ(u v), assign σ(u v) ← σ(u) σ(v) and (2) when σ(u) σ(v) σ(u v), assign σ(u) ← σ(u) σ(u v) and also σ(v) ← σ(v) σ(u v).It can be shown that the assignments in both cases should decrease σ while preserving the σ ∆ I invariant.
The procedure (see Algorithm 2) loops through pairs u, v ∈ Con while there is some pair satisfying cases (1) or (2) above for the current σ.When there is, it updates σ as mentioned before.At the end of the loop all u, v ∈ Con pairs satisfy the space function property.By the invariant mentioned above, this means σ = ∆ I .

Conclusions and Related Work
We developed semantic foundations and provided algorithms for reasoning about the distributed information of groups in multi-agents systems.We plan to develop similar techniques for reasoning about other group phenomena in multi-agent systems from social sciences and computer music such as group polarization [4] and group improvisation [17].
The closest related work is that of [15] (and its extended version [16]) which introduces spatial constraint systems (scs) for the semantics of a spatial ccp language.Their work is confined to a finite number of agents and to reasoning about agents individually rather than as groups.We added the continuity requirement to the space functions of [15] to be able to reason about possibly infinite groups.In [7,8,9,10] scs are used to reason about beliefs, lies and other epistemic utterances but also restricted to a finite number of agents and individual, rather than group, behaviour of agents.
Our work is inspired by the epistemic concept of distributed knowledge [5].Knowledge in distributed systems was discussed in [11], based on interpreting distributed systems using Hintikka's notion of possible worlds.In this definition of distributed knowledge, the system designer ascribes knowledge to processors (agents) in each global state (a processor's local state).In [12] the authors present a general framework to formalize the knowledge of a group of agents, in particular the notion of distributed knowledge.The authors consider distributed knowledge as knowledge that is distributed among the agents belonging to a given group, without any individual agent necessarily having this knowledge.In [13] the

Figure 1
Figure 1 Cs given by lattice M2 ordered by implication and space functions s1 and s2.

Example 7 .
Consider an scs (Con, , (s i ) i∈G ) where G = N and (Con, ) is a constraint frame.Let c def = s 1 (a) s 2 (a → b) s 3 (b → e).The constraint c specifies the situation where a, a → b and b → e are in the spaces of agent 1, 2 and 3, respectively.Neither agent necessarily holds e in their space in c.Nevertheless, the information e can be derived from the collective information of the three agents w.r.t.c, since from Prop. 3 we have a (a → b) (b → e) e.

Example 10 .
Let d def = s 1 (b) s 2 (b).Recall that we think of and as conjunction and disjunction of assertions: d specifies that b is present in the space of agent 1 or in the space of agent 2 though not exactly in which one.Thus from d we should be able to conclude that b belongs to the space of some agent in {1, 2}.Nevertheless, in general b is not I-join derivable from d since from π {1,2} (d) = π 1 (d) π 2 (d) we cannot, in general, derive b.To see this consider the scs in Fig. 2a and take b = ¬p.We have π {1,2} (d) = π 1 (d) π 2 (d) = true true = true b.One can generalize the example to infinitely many agents: Consider the scs in Ex. 7. Let d def = i∈N s i (b ).

Figure 2
Figure 2 Projections (a) and Distributed Space function (b) over lattice M2.

Is
∆ I proceeds by showing that (δ + I ) I⊆G is a group distribution candidate (Def.19).Distributivity of the lattice (Con, ) is crucial for this direction.In fact without it ∆ I = δ + I does not necessarily hold as shown by the following counter-example.Example 28.Consider the non-distributive lattice M 3 and the space functions s 1 and s 2 in Fig. 3b.We obtain δ + I (b c) = δ + I (e) = a and δ + I (b) δ + I (c) = b a = b.Then, δ + I (b c) = δ + I (b) δ + I (c), i.e., δ + I is not a space function.
About Distributed Knowledge with Infinitely Many Agents a self map σ : Con → Con such that σ ∆ I and, for all i ∈ I, σ s i .A good starting point is σ(u) = {s i (u) | i ∈ I}, for all u ∈ Con.By definition of , σ(u) is the biggest function under all functions in {s i } i∈I , hence σ ∆ I .The algorithm computes decreasing upper bounds of ∆ I by correcting σ values not conforming to the space function property σ(u) σ(v) = σ(u v).The correction decreases σ and maintains the invariant σ ∆ I .

Algorithm 2
DeltaGen finds ∆ I .σ(u)← {s i (u) | i ∈ I} for all u ∈ Con while u, v ∈ Con ∧ σ(u) σ(v) = σ(u v) do if σ(u) σ(v) σ(u v) then case (1) σ(u v) ← σ(u) σ(v) else case (2) σ(u) ← σ(u) σ(u v) σ(v) ← σ(v) σ(u v)Assume a fixed group I of size m = |I| and that and are computed in O(1) time.The complexity of the initialization of DeltaGen is O(nm) with n = |Con |.Each element in Con can be decreased at most n times.Identifying an element to be decreased (in the test of the loop) takes O(n 2 ).Since there are n 2 possible decreases, worst time complexity of the loop is in O(n 4 ).