A Cartesian Closed Category of Event Structures with Quotients

advertisement
Discrete Mathematics and Theoretical Computer Science
DMTCS vol. 8, 2006, 249–272
A Cartesian Closed Category of Event
Structures with Quotients
Samy Abbes †
LIAFA – Université Paris 7. France
received Feb 8, 2006, revised May 23, 2006, accepted Sep 3, 2006.
We introduce a new class of morphisms for event structures. The category obtained is cartesian closed, and a natural
notion of quotient event structure is defined within it. We study in particular the topological space of maximal configurations of quotient event structures. We introduce the compression of event structures as an example of quotient:
the compression of an event structure E is a minimal event structure with the same space of maximal configurations
as E.
Keywords: event structure, maximal elements, quotient semantics
1
Introduction
Prime event structures—we say event structures for short, always meaning prime event structures—have
been introduced by Winskel as a model of concurrent computational processes [14]. Applications of event
structures to concurrency theory are numerous, in particular to the theory of Petri nets and to trace theory
[11, 13, 12]. An event structure is defined as a triple (E, ≤, #), where (E, ≤) is a poset whose elements
are called events, and # is a binary symmetric and irreflexive relation satisfying e1 #e2 ≤ e3 ⇒ e1 #e3 .
The order relation ≤ is called the causality relation, while the relation # is called the conflict relation. An
event structure E—we identify event structures and sets of events—is called finitary if E is a countable
set, and if for every e ∈ E, the subset ↓ e =[def] {e0 ∈ E : e0 ≤ e} is finite. For E an event structure, the
b of configurations of E is defined as the set of conflict-free and downward closed subsets of E,
poset E
ordered by set-theoretic inclusion. Configurations represent the set of executions of the system modeled
by the event structure.
Event structures were introduced together with a definition of morphisms between them [15]. A mapping f : E → F between event structures is a Winskel morphism if f (x) is a configuration of F for
every configuration x of E, and if the restriction f |x : x → f (x) is injective for every configuration x
of E. Remark that each morphism of event structures f : E → F is associated with a morphism of partial
b → Fb between the associated posets of configurations, given by the set-theoretic action of f
orders fb : E
d
[ b ◦ fb.
on subsets. This association is moreover functorial, i.e., Id
E = IdE
b and g ◦ f = g
† Work
supported by grants from Conseil régional d’Ile-de-France
c 2006 Discrete Mathematics and Theoretical Computer Science (DMTCS), Nancy, France
1365–8050 250
Samy Abbes
In the present paper, we study an alternative definition of morphisms. To motivate this change, consider
the following situation: two communicating systems A and B represented by event structures are driven
in a non-deterministic fashion by one another. That is to say, the occurrence, say, of a in A, allows the
occurrences of b or b0 in B, and so on. Assume moreover that the behaviors of B allowed by the occurrence
of, say, two events a or a0 in A, are the same. For example, a server B may treat clients in a fair manner,
so that different requests of A lead to the same behavior of B. Hence, some events of A may be identified
from the point of view of B. A natural model for such a situation is to consider an equivalence relation
on events of A. This requires having at hand a theory for quotients of event structures.
Unfortunately, there is no hope that the original definition of morphisms allows the projection mapping,
from an event structure to its quotient set—assuming we can equip this quotient as an event structure—,
to be a morphism. Indeed, morphisms are supposed to be injective when restricted to configurations.
Hence, it is not possible to identify two compatible events. We are thus brought to relax the condition that
morphisms should map distinct compatible events to distinct events(i) . The topic of the following paper
is a systematic study of such general morphisms. The definition we introduce for a mapping f : E → F
to be a morphism is the following: f must be order-preserving with respect to the underlying posets, and
moreover, f (e)#f (e0 ) ⇒ e#e0 . This requires that compatible events are mapped to compatible events,
although the set-theoretic action f (x) of f on a configuration x may not be a configuration itself. Therefore, we define fb(x), the action of f on a configuration x, as the smallest configuration that contains f (x).
The association f → fb is then functorial, i.e., g[
◦ f = gb ◦ fb.
In the sense explained above, our definition relaxes Winskel’s definition. However all Winskel morphisms are not morphisms in our sense, since Winskel morphisms are not required to be order-preserving.
Our definition is thus simply different. It is based on the idea that a morphism f : E → F should transport
configurations of E into configurations of F , but not necessarily through the set-theoretic action of f .
It turns out that the mathematical framework that we define with our new class of morphisms presents
some interesting properties. In particular, the category that we define is cartesian closed, i.e., it has all
finite products and exponentiation, and moreover quotients of event structures can be naturally defined
within it. The importance of cartesian closed categories in Computer Science has been pointed out by
several authors [8, 6]. Indeed, the exponentiation is a natural computational operation, since it represents
the operation of evaluating a mapping on its argument.
Moreover, we study a sub-category of event structures, where morphisms have the property of mapping
maximal configurations to maximal configurations. The motivation for paying a particular attention to the
space of maximal configurations of event structures comes from domain theory. It is indeed a classical
domain theoretic approach to the computational study of some continuous space S to identify S with
the space of maximal elements of a domain, equipped with the restriction of the Scott topology of the
domain [9, 5]. For event structures, the space of maximal configurations of the domain of configurations
plays moreover a fundamental role in the theory of probabilistic event structures, since it represents the
space of complete histories of the system modeled by the event structure [1, 2]. This justifies that we study
in detail how the space of maximal configurations of an event structure fits into the present framework.
We show in particular the following result: let (E, ≤, #) and (F, ≤, #) be two event structures, and let
f : E → F be a mapping, order-preserving with respect to the underlying posets. Assume that f is onto,
and satisfies: ∀e, e0 ∈ E, e#e0 ⇐⇒ f (e)#f (e0 ). Then the spaces of maximal configurations of E and
(i)
Although morphisms like those proposed here have been recently considered by Winskel in [16] as “demand maps” obtained as
Kleisli maps through the presence of “persistent” events, no systematic study of such morphisms has been carried out.
A Cartesian Closed Category of Event Structures with Quotients
251
F are homeomorphic. The proof makes a fair use of the notion of adjunction pair between D CPO. As an
application, we introduce the notion of compression of an event structure: the compression of an event
structure E is a quotient of E, that shares the same space of maximal configurations as E.
The paper is organized in three sections. In Section 2, we define the category of event structures that will
be our study topic. We review some classical categorical constructions within this category. A subsection
analyzes the role of maximal configurations of events structures in this framework. We define quotients
of event structure in Section 3, and we give their main properties. The example of compression of event
structures is the topic of Section 4. Finally, Section 5 concludes the paper and proposes future work.
2
2.1
Event Structures and Morphisms
Posets and Prime Algebraic Coherent Posets
We rely on the classical notions for partially ordered sets—called posets for short. If (D, ≤) is a poset,
we do not mention the relation ≤ if it is clear from the context. The least upper bound (l.u.b.) of a subset
X ⊆ D is denoted sup X if it exists. A mapping f : D → F between two posets is said to be order
preserving if e ≤ e0 ⇒ f (e) ≤ f (e0 ) for all e, e0 ∈ D. For any subset A ⊆ D, we denote by ↓ A the
downward closure of A, defined by ↓ A = {e ∈ D : ∃e0 ∈ A, e ≤ e0 }. For singletons, we simply note
↓ e = ↓ {e}. We say that a set A is downward closed if ↓ A = A.
A subset A ⊆ D is said to be upward closed if for any a ∈ A, any element b ∈ D such that b ≥ a
belongs to A. A subset A ⊆ D is said to be directed if any two elements a, b ∈ A have an upper bound
in A. An ideal is a downward closed directed set. A poset D is called a D CPO (Directed Complete POset)
if every directed subset of D has a l.u.b. in D. A subset A ⊆ D of a D CPO D is said to be Scott-open if it
is upward closed, and if the following holds: for any directed subset X of D, sup X ∈ A ⇒ A ∩ X 6= ∅.
Scott-open sets form a topology on D, called the Scott topology. A function f : D → F between two
D CPO is said to be Scott-continuous if f is continuous with respect to the Scott topologies. Equivalently,
f is Scott-continuous if and only if f is order-preserving, and if f (sup X) = sup f (X) for every directed
subset X ⊆ D [6, Prop. II-2.1, p.157]; the later condition may only be verified on ideals instead of
directed subsets.
Let (D, ≤) be a D CPO. An element x ∈ D is said to be compact if for every ideal I ⊆ D, if x ≤ sup I
then x ∈ I. Observe that ↑ x = {y ∈ D : x ≤ y} is then a Scott-open set of D. The D CPO D is said
to be algebraic when every element x ∈ D is the l.u.b. of the set of compact elements y ∈ D such that
y ≤ x.
Quite subtle are the differences between the above concepts, and the following (definitions found
in [11]). A subset X of a poset D is said to be pairwise consistent if any two elements of X have an
upper bound in D. A poset D is said to be coherent if every pairwise consistent subset has l.u.b. in D.
An element p of a poset is a complete prime if for any subset X that has a l.u.b., if p ≤ sup X, then there
exists x ∈ X such that p ≤ x. We denote by P(D) the subset of complete primes of a poset D. Then a
poset D is said to be prime algebraic if for every x ∈ D, if we set Dx = {p ∈ P(D) : p ≤ x}, then
Dx has a l.u.b. and x = sup Dx . Obviously, coherent posets are D CPO and complete primes are compact,
thus prime algebraic coherent posets are algebraic D CPO. It is also quite easy to check that any coherent
poset is a complete semi-lattice, i.e., every subset has a greatest lower bound (indeed, for every subset X,
the set of lower bounds of X, even if empty, is coherent, and has thus a l.u.b., which is the greatest lower
bound of X).
252
Samy Abbes
We introduce the category PrAlg, with prime algebraic coherent posets as objects, and with morphisms between two objects D and D0 the mappings f : D → D0 such that:
1. f preserves complete primes, i.e., f P(D) ⊆ P(D0 );
2. f (x) = sup f (Dx ) for every x ∈ D.
Note that the existence of sup f (Dx ) follows from D0 being coherent. Observe also that f is then orderpreserving; for, if x ≤ y, then Dx ⊆ Dy and thus f (x) ≤ f (y) by property 2 above. A first result is the
following:
Proposition 2.1 Any arrow in PrAlg is Scott-continuous.
Proof: Let f : D → D0 be an arrow in PrAlg, let I be an ideal of D, and let d = sup I. We show
that f (d) = sup f (I). Put Dd = {p ∈ P(D) : p ≤ d}. Then Dd ⊆ I since I is an ideal and since
complete primes are compact, and sup Dd = d holds. Therefore: f (d) = sup f (Dd ) ≤ sup f (I). Since
f (d) ≥ sup f (I) is trivially true, the expected equality holds. Since f is known to be order-preserving,
this shows that f is Scott-continuous.
2
Observe that Scott-continuity is not enough a priori to guarantee that f (x) = sup f (Dx ) holds, since
the set Dx shall not be directed in general.
2.2
A Category of Event Structures
Event structures that we consider are defined as follows. Observe that the finitary assumption is considered
separately.
Definition 2.1 (event structures and morphisms) An event structure is a triple (E, ≤, #), where
(E, ≤) is a poset, called the underlying poset of the event structure, and # is a symmetric and irreflexive
binary relation on E satisfying the following
inheritance axiom:
∀e1 , e2 , e3 ∈ E,
(e1 #e2 , e2 ≤ e3 ) ⇒ e1 #e3 .
Elements of E are called events. We identify the event structure (E, ≤, #) with the set of events E when
no confusion occurs on the relations ≤ and # involved. The event structure E is said to be finitary if E is
countable, and if ↓ e is a finite subset of E for every e ∈ E.
A mapping f : E → F between two event structures is said to be a morphism of event structures,
or shortly a morphism, if f is order-preserving between the underlying posets and if moreover f reflects
conflict, in the following sense:
∀e1 , e2 ∈ E,
f (e1 )#f (e2 ) ⇒ e1 #e2 .
(1)
We denote by IdE : E → E the identity morphism.
A direct consequence of Definition 2.1 is the following:
Proposition 2.2 Morphisms of event structures compose: if g : F → G and f : E → F are two
morphisms of event structures, so is g ◦ f : E → G. Hence event structures form a category with the
morphisms of Definition 2.1, denoted ES.
A Cartesian Closed Category of Event Structures with Quotients
253
Note that finitary event structures form a full sub-category of ES.
Configurations of an event structure are understood as the states of the event structure. They are defined
as follows:
Definition 2.2 (compatible events, configurations, action of morphisms on configurations) Two
events e, e0 of an event structure E are said to be compatible if e#e0 does not hold. A subset x ⊆ E is said
to be a configuration if x is downward-closed and if any two events in x are compatible. By extension, an
event e is said to be compatible with a configuration x ⊆ E whenever x ∪ ↓ e is a configuration of E.
b the poset of configurations of E.
Configurations are ordered by set-theoretic inclusion. We denote by E
b → Fb by:
If f : E → F is a morphism of event structures, we define fb : E
b
∀x ∈ E,
fb(x) = ↓ f (x),
(2)
where f (x) = {f (e), e ∈ x} is the set-theoretic action of f on x.
b → Fb is well defined thanks to property (1) of morphisms.
Note that fb : E
b is a coherent prime algebraic poset [11, Th.9, p.102],
It is well known that, for each event structure E, E
b is one-to-one and onto, up to isomorphism, from
see also [4]. More precisely, the association E → E
b existing l.u.b. are given by set-theoretic union,
event structures to prime algebraic coherent posets. In E,
and greatest lower bounds are given by set-theoretic intersection. Moreover, for any event structure E,
b are exactly the configurations of the form ↓ e, with e ranging over E,
the complete prime elements of E
and the compact elements are the bounded, finite unions of complete primes. With our definition of
morphisms, this leads to the following:
b on objects, and by
Proposition 2.3 There is a functor F : ES → PrAlg , defined by F(E) = E
b
F(f ) = f on morphisms. The functor F determines an equivalence of categories.
b is a prime algebraic coherent poset
Proof: F : ES → PrAlg is a functor. The fact that F(E) = E
for every event structure E follows from the result already mentioned of [11]. We show that F(f ) is
a morphism of PrAlg for every morphism f : E → F of ES. A direct inspection of (2) shows that
b → Fb is order-preserving. Moreover fb maps complete prime elements to complete prime elements.
fb : E
Indeed, since f is order-preserving, we have for every e ∈ E:
fb(↓ e) = ↓ f (↓ e) = ↓ f (e).
b where Dx = {p ∈ P(E)
b : p⊆
It remains to show that fb satisfies fb(x) = sup fb(Dx ) for every x ∈ E,
x}. Thanks to (2), we have:
[
[
fb(x) =
↓ f (e) =
fb(↓ e) = sup fb(Dx ).
e∈x
e∈x
Hence F(f ) : F(E) → F(F ) is a morphism of PrAlg for every morphism f : E → F of ES.
It is clear that F(IdE ) = IdF(E) . To complete the proof that F is a functor, we show that F(g ◦ f ) =
F(g) ◦ F(f ) for any pair of morphisms f : E → F and g : F → G. Let h = g ◦ f . By (2), we have for
b
any x ∈ E:
[
[
b
h(x) =
↓ h(e) =
↓ g ◦ f (e).
(3)
e∈x
e∈x
254
Samy Abbes
S
Let y = fb(x) = e∈x ↓ f (e). We have:
gb(y) =
[
↓ g(e0 ) =
e0 ∈y
[
e∈x
[
↓ g(e0 ) .
(4)
e0 ∈↓ f (e)
From (3) and (4) it is clear that b
h(x) ⊆ gb(y). We prove the converse inclusion. For every e ∈ x and
every e0 ∈ ↓ f (e), we have e0 ≤ f (e) and thus ↓ g(e0 ) ⊆ ↓ g ◦ f (e) since g is order-preserving. Hence
gb(y) ⊆ b
h(x), which means gb ◦ fb(x) ⊆ b
h(x), as claimed. This shows that F(g ◦ f ) = F(g) ◦ F(f ), and
thus F : ES → PrAlg is a functor, what was to be shown.
Definition of a functor which will later prove to be the adjoint of F in an equivalence of categories. Let
G : PrAlg → ES be defined as follows: if D is an object of PrAlg, G(D) is defined as the natural
event structure with events the set of complete prime elements of D, see [11] for details. If u : D → D0
is a morphism of PrAlg, G(u) : G(D) → G(D0 ) is defined as follows: for any e ∈ G(D), G(u)(e) is
defined as the unique event e0 ∈ G(D0 ) such that u(↓ e) = ↓ e0 , which is well defined since by definition
of morphisms in PrAlg, u maps complete prime elements to complete prime elements.
We show that G is a functor. Clearly, G(IdD ) = IdG(D) holds for any object D in PrAlg. Let
u : D → D0 and v : D0 → D00 be arrows in PrAlg, and let f = G(u), g = G(v), and h = G(v ◦ u).
We show that h = g ◦ f . Let e be any event in E. By definition of G we have:
↓ f (e) = u(↓ e), ↓ g f (e) = v ↓ f (e) , v ◦ u(↓ e) = ↓ h(e).
Therefore:
↓ h(e) = v u(↓ e) = v ↓ f (e) = ↓ g ◦ f (e),
and thus h(e) = g ◦ f (e). This shows that G(v ◦ u) = G(v) ◦ G(u), hence G is a functor.
The pair (F, G) defines an equivalence of categories. We show that there are two natural isomorphisms
φ : IdES → G ◦ F,
and
ψ : F ◦ G → IdPrAlg .
For any event structure E, φE : E → G ◦ F(E) is the natural isomorphism that maps an event e ∈ E
b
to ↓ e, seen as an event in G(E).
For any object D in PrAlg, ψD : D → F ◦ G(D) is defined by ψD (x) = {p ∈ P(D) : p ≤ x},
for any x ∈ D. Then ψD is obviously an isomorphism in PrAlg. It remains only to show that ψ thus
defined is natural, i.e., for any arrow u : D → D0 in PrAlg, the following diagram commutes:
D
ψD
u
D0
/ F ◦ G(D)
F◦G(u)
ψD0
/ F ◦ G(D0 )
In other words, we must prove v ◦ ψD = ψD0 ◦ u, where v = F ◦ G(u). Since all four arrows belong
to PrAlg, it is enough to show:
∀q ∈ P(D),
v ◦ ψD (q) = ψD0 ◦ u(q).
(5)
A Cartesian Closed Category of Event Structures with Quotients
d _ Z U
d _ Z U
Q &
Q &
m i
m i
•O /o /o /o ? • Y _ e 4 •O
•O
• Y _ e 4 •O
?








• Y [ ] _ a c e 2•
• Y [ ] _ a c e 2•
`
i d
m
o
• _@/o /o /o •O Q/o S/o /o ? •
@@

@@
 W

@@ 

• Y [ ]
\
X
TR
P(
Y _ e 4 •O o/ k/o m/o 6? •
[ _ c g 


2
•
e
_ a c
•O

t

t


t

t
255
•
? O


•O
t
t
t: •O
•O
j j4 •O
j j
j
•O j
•O
•O
• _ _ _ _ _ _/ •
Fig. 1: Examples of morphisms of event structures. Dotted arrows depict the mappings.
Then, for any q ∈ P(D), we find that both members in (5) are equal to {p ∈ P(D0 ) : p ≤ u(q)},
which completes the proof.
2
As a consequence of Proposition 2.3, everything that is stated below on the category ES can be interpreted as statements on the category PrAlg. We believe however that the event structure representation
is more intuitive. Proposition 2.3 can be seen as a further mathematical justification of our definition for
morphisms of event structure.
2.3
Examples
Graphical conventions for drawing event structures. We depict event structures as follows (see Figure 1). Events are depicted by bullets. The causality relation is the reflexive transitive closure of the
relation depicted by the arcs. Some conflicts are depicted by wave arcs. The whole conflict relation is
obtained by inheritance from the conflicts depicted.
Figure 1 depicts 4 examples of morphisms of event structures.
Winskel morphisms are defined as follows [15]: f : E → F is a Winskel morphism if f (x) is a
configuration of F for any configuration x of E, and if the restriction f |x : x → f (x) is injective for
every configuration x.
A Winskel morphism is not necessarily a morphism in the sense of Definition 2.1, since it may not be
order-preserving. Conversely, the morphisms that we study may not be Winskel morphisms. For example,
the morphisms depicted in Figure 1 in the upper-right and lower-right corners are not Winskel. The two
other morphisms are both Winskel morphisms and morphisms in the sense of Definition 2.1.
Winskel’s rigid morphisms are defined as follows [15]: a Winskel morphism f : E → F is said to be
rigid if:
b ∀y ∈ Fb, y ⊆ f (x) ⇒ ∃z ∈ E
b : z ⊆ x, f (z) = y.
∀x ∈ E,
256
Samy Abbes
This implies in particular that a rigid morphism is order-preserving. Moreover any Winskel morphism
b such
satisfies ∀e, e0 ∈ E, f (e)#f (e0 ) ⇒ e#e0 . Indeed, if e, e0 ∈ E are not in conflict, there is a x ∈ E
0
0
that e, e ∈ x. Then f (x) is a configuration of F that contains f (e) and f (e ), hence f (e) and f (e0 ) are
not in conflict. We obtain thus: Winskel’s rigid morphisms are morphisms in the sense of Definition 2.1.
b fb(x) = f (x).
They satisfy: ∀x ∈ E,
The later point illustrates the idea that we use to build our morphisms: a morphism f of event structures
should act on configurations, but not necessarily through the set-theoretic action of f , as it occurs for
Winskel’s morphisms.
2.4
Categorical Constructions for Event Structures
In this subsection, we review some classical constructions from category theory, for the category ES. As
discussed in the Introduction, the most important fact is that the category ES is cartesian closed.
The category theoretic definitions involved are briefly recalled (initial and final objects, equalizers,
products, coproducts, pullbacks and exponentiation). The reader is referred for example to [10] for more
details. The proofs consist of direct verifications that the conditions stated in Definition 2.1 are satisfied.
Most of them do not present difficulty and are left to the reader as an exercise, except for the exponentiation, treated in details. The categorical properties of ES that we obtain are summarized in the following
theorem.
Theorem 2.1 The category ES has initial and final objects, which are both finitary. It has all finite
products and coproducts, it has equalizers and thus pullbacks, and is moreover cartesian closed. Products,
coproducts, equalizers and thus pullbacks preserve the finitary property.
The constructions are detailed below.
Initial and Final Event Structures. The category ES has both an initial and a final object. The initial
object is the empty event structure, denoted 0, defined as the unique event structure with the empty set as
set of events. For any event structure E, there is a unique morphism 0 → E.
A final object is any event structure with a singleton as set of events, and with the unique causality and
conflict relations making an event structure from it. We denote it 1. For any event structure E, there is a
unique morphism E → 1.
Sub-structures and equalizers. Let F be an event structure, and let E be a subset of F . Equip E with
the causality ≤ |E and with the conflict #|E , defined by:
≤ |E =≤ ∩(E × E),
#|F = # ∩ (E × E).
Then (E, ≤ |E , #|E ) is an event structure, we call it a sub-structure of F . The injection mapping i : E →
F is a morphism of event structures. If E is finitary, so is any sub-structure of E.
Sub-structures allow to define equalizers. Let E, F be two event structures, and let f, g : E → F two
morphisms. Define the substructure of E:
L = {e ∈ E : f (e) = g(e)}.
Then L with the injection i : L → E is the equalizer of f, g. That is to say, for any event structure H,
and any morphism h : H → E such that f ◦ h = g ◦ h, there is a unique morphism k : H → L such that
A Cartesian Closed Category of Event Structures with Quotients
257
i ◦ k = h, making the following diagram commutative:
LO HH
HHi
HH
H#
k
;E
vv
v
v
vv h
H
f
g
/
/F
If E is finitary, so is the equalizer of any pair f, g : E → F .
Products, Coproducts, Pullbacks. We consider two event structures (E1 , ≤1 , #1 ) and (E2 , ≤2 , #2 ).
The product of E1 and E2 is defined as the event structure with E =[def] E1 × E2 as set of events, and
which causality and conflict relations are defined by:
• Causality: (e1 , e2 ) ≤ (e01 , e02 ) if e1 ≤1 e01 and e2 ≤2 e02 ;
• Conflict: (e1 , e2 )#(e01 , e02 ) if e1 #1 e01 or e2 #2 e02 .
E1 × E2 is an event structure, and the projections p1 : E → E1 and p2 : E → E2 are two morphisms.
The product thus defined is indeed the categorical product in ES: for any event structure G, and pair of
morphisms f : G → E1 , g : G → E2 , there is a unique morphism h : G → E making the following
diagram commutative:
p1
p2
/ E2
E1 `Ao
EO
}>
AA
}
}
AA
h }}
g
f AA
}}
G
The construction of products allows the standard construction, for any two morphisms f : E → F and
g : G → H, of the product morphism f × g : E × G → F × H, defined as the unique morphism making
the following diagram commutative, where the vertical arrows are the projection morphisms:
EO
E×G
G
f
/F
O
f ×g
/ F ×H
g
/H
Since ES has products and equalizers, the pullback of any pair of morphisms E → A and G → A
exists in ES [10, Th.4.5 p.42].
The sum or coproduct of E1 and E2 is the event structure E =[def] E1 t E2 with set of events the
disjoint union of E1 and E2 , and with causality and conflict relations defined by:
• Causality: e ≤ e0 if e, e0 ∈ E1 and e ≤1 e0 , or if e, e0 ∈ E2 and e ≤2 e0 ;
258
Samy Abbes
• Conflict: e#e0 if e, e0 ∈ E1 and e#1 e0 , or if e, e0 ∈ E2 and e#2 e0 .
E is an event structure, the two injections i1 : E1 → E and i2 : E2 → E are two morphisms,
and (E, i1 , i2 ) is a coproduct in the category ES: for any event structure H, and pair of morphisms
f : E1 → H, g : E2 → H, there is a unique morphism h : E → H making the following diagram
commutative:
i1
/ E o i2 E 2
E1 A
AA
}
AA
}}
h }}
A
} g
f AA
~}}
H
Finally, note that products, coproducts and pullbacks of finitary event structures are finitary.
Exponentiation. The exponentiation of an event structure F by an event structure E is the event structure F E which events are the morphisms f : E → F , and with causality and conflict relations defined
by:
• Causality: f ≤ f 0 if ∀e ∈ E, f (e) ≤ f 0 (e);
• Conflict: f #f 0 if there exists two compatible events e, e0 ∈ E such that f (e)#f 0 (e0 ).
Let ev : F E × E → F be the evaluation mapping, defined by ev(f, e) = f (e) for any f ∈ F E and
e ∈ E. Then we claim that F E is an event structure, and that ev is a morphism of event structures with
the following exponentiation property: for any event structure G and morphism g : G × E → F , there is
a unique morphism g : G → F E making the following diagram commutative:
F OE
g
G
/
v: F
v
v
vv
g×IdE
vvg
v
vv
vv
G×E
FE ×
O E
ev
We prove the claim in details: it is clear that (F E , ≤) is a poset, and that # is symmetric. The conflict
is irreflexive: Assume that f ∈ F E satisfies f #f . Then there are two compatible events e, e0 ∈ E such
that f (e)#f (e0 ). Since f is a morphism of event structures, this implies that e#e0 , which contradicts
that e and e0 are compatible. Hence # is irreflexive. The conflict is inherited: Let f1 , f2 , f3 ∈ F E such
that f1 #f2 and f2 ≤ f3 . Then there are two compatible events e, e0 ∈ E such that f1 (e)#f2 (e0 ). Then
f2 (e0 ) ≤ f3 (e0 ), and this implies that f1 (e)#f3 (e0 ), and thus f1 #f3 , showing that # is inherited. Hence
we have shown that F E is an event structure.
We prove that ev : F E ×E → F is a morphism. Let (f, e), (f 0 , e0 ) ∈ F E ×E such that (f, e) ≤ (f 0 , e0 ).
Then, using the definition of the order on products, we have f ≤ f 0 and e ≤ e0 . Thus ev(f, e) = f (e) ≤
f 0 (e) ≤ f 0 (e0 ), the later ordering since f 0 is order-preserving. Hence ev(f, e) ≤ ev(f 0 , e0 ), and thus ev
is order-preserving. Assume that ev(f, e)#ev(f 0 , e0 ). Then, if f and f 0 are not in conflict, this implies
according to the definition of conflict in F E that e and e0 are in conflict. Hence we either have f #f 0
or e#e0 , i.e., according to the definition of conflict in products, (f, e)#(f 0 , e0 ). This shows that ev is a
morphism of event structures.
A Cartesian Closed Category of Event Structures with Quotients
259
We now prove the exponentiation property. Let G be an event structure, and let g : G × E → F be a
morphism. If g : G → F E exists as in the above diagram, it is necessarily given by g(e)(e0 ) = g(e, e0 ) for
any e ∈ G and e0 ∈ E. Hence let g : G → F E be defined by this way. g is a morphism: First we prove
that g is order-preserving. Let e1 , e2 ∈ G with e1 ≤ e2 . Then for any e0 ∈ E, we have (e1 , e0 ) ≤ (e2 , e0 )
and thus g(e1 )(e0 ) = g(e1 , e0 ) ≤ g(e2 , e0 ) = g(e2 )(e0 ). This shows that g(e1 ) ≤ g(e2 ), and thus g is
order-preserving. To complete the proof that g is a morphism, let e1 , e2 ∈ G such that g(e1 )#g(e2 ), and
we show that e1 #e2 . Indeed, there are two compatible events e0 , e00 ∈ E such that g(e1 , e0 )#g(e2 , e00 ).
By the definition of conflict for products, and since g is a morphism, this implies that e1 #e2 or e0 #e00 .
Since e0 and e00 are compatible, we have thus e1 #e2 , what was to be shown. Now by construction,
g × IdE makes the above diagram commute. Since g is the unique morphism with this property, we have
completed the proof of the exponentiation property.
2
The exponentiation of finitary event structures is not finitary in general. However if E is finite and F is
finitary, then F E is finitary.
2.5
The Max-Synchronous Sub-Category
The motivations for studying the topological space of maximal configurations of an event structure have
been discussed in the Introduction. This subsection analyzes how our framework can provide elements for
this study. The main result is the identification of a class of morphisms that preserve the space of maximal
configurations between event structures.
b of configurations of an event structure contains
Maximal configurations. As a D CPO, the domain E
b is subset
maximal elements. More precisely, it follows from Zorn’s lemma that every configuration x ∈ E
b y ⊇ v ⇒ y = v. We denote by
of a maximal configuration v, i.e., a configuration v such that ∀y ∈ E,
ΩE the set of maximal configurations of E.
b That is to say, an open
Topology of ΩE . ΩE is equipped with the restriction of the Scott topology on E.
b
set of ΩE has the form U = ΩE ∩ V , where V is a Scott-open set of E. Although this belongs to domain
theory folklore, we recall the proof of the following result:
Proposition 2.4 For any object D in PrAlg, the space Ω of maximal elements of D is Hausdorff.
Proof: Let u, u0 be two distinct elements of Ω. We claim that there are two compact elements x ≤ u
and x0 ≤ u0 , such that {x, x0 } has no upper bound. Assume there are no such x, x0 . Then for any two
compact elements x, x0 with x ≤ u and x0 ≤ u0 , the sup x ∨ x0 is well defined since D is a coherent
poset. For each compact element x ≤ u, consider the set Kx = {x ∨ x0 : x0 compact and x0 ≤ u0 }. Then
Kx is directed and satisfies sup Kx ≥ sup{x0 : x0 compact and x0 ≤ u0 } = u0 . Since u0 is maximal,
this implies sup Kx = u0 . Hence u0 ≥ x for any compact element x ≤ u, and therefore u = u0 , a
contradiction.
Now for such an unbounded pair x, x0 , the two open sets U = {ω ∈ Ω : ω ≥ x} and U 0 = {ω ∈ Ω :
ω ≥ x0 } separate u and u0 .
2
Max-synchronous morphisms. We have seen that, if f : E → F is a morphism of event structures,
b → Fb defined in Definition 2.2 is a morphism in PrAlg, and is in particular Scott-continuous.
fb : E
b to maximal elements of Fb.
However, nothing guarantees in general that fb maps maximal elements of E
260
Samy Abbes
We introduce therefore the following “pointwise” definition, to be interpreted later as a first step towards
a global preservation of the space of maximal configurations (Theorem 2.2 and Corollary 3.1 below).
Definition 2.3 We say that a morphism f : E → F in ES is max-synchronous if fb(v) is maximal in Fb
b
for every maximal configuration v ∈ E.
Max-synchronous morphisms form the arrows of a sub-category of ES. We denote by ESmax the
category of event structures whose arrows are max-synchronous morphisms.
Proposition 2.5 Let TOP be the category of Hausdorff topological spaces. There is a functor G :
ESmax → TOP defined by G(E) = ΩE on objects, and by G(f ) = fb|ΩE : ΩE → ΩF on arrows.
Proof: It is clear that G(f ◦ g) = G(f ) ◦ G(g) and that G(IdE ) = IdΩE . It remains to check that g =
G(f ) is continuous for every max-synchronous morphism f : E → F . This follows from the continuity
b which holds according to Proposition 2.1 since fb is an arrow in PrAlg (Proposition 2.3). 2
of fb on E,
The following result gives a sufficient condition for a morphism f : E → F to be max-synchronous.
Surprisingly, this sufficient condition implies that the spaces ΩE to ΩF are then homeomorphic. We first
need a lemma, that may be well known from domain theory although we didn’t find it explicitly in the
literature.
Lemma 2.1 Let f be the lower adjoint of an adjunction pair D o
f
g
/
D0 between two D CPO D
and D0 , i.e., f and g are order-preserving and satisfy [6, Def. O-3.1, p.22]:
∀x ∈ D,
∀y ∈ D0 ,
f (x) ≤ y ⇐⇒ x ≤ g(y).
Assume moreover that f is is onto. Then f maps the space ΩD of maximal elements of D homeomorphically onto the space ΩD0 of maximal elements of D0 .
Proof: Recall first that the properties of adjunction pairs imply that g ◦ f ≥ IdD , and that f ◦ g = IdD0
since f is onto [6, Section O-3]. Moreover, f is Scott-continuous since lower adjoints preserve directed
sups.
We claim first that f maps ΩD to ΩD0 : for any x ∈ ΩD and y ∈ D0 such that y ≥ f (x), then
g(y) ≥ g ◦ f (x) ≥ x, hence g(y) = x since x is maximal and thus f ◦ g(y) = f (x), i.e., y = f (x). This
shows that f (x) is maximal in D0 , and proves the claim. Let h = f |ΩD : ΩD → ΩD0 be the restriction of
f to ΩD . It is easy to see that h is onto: for any y ∈ ΩD0 , there is an element x ∈ D such that f (x) = y
since f is onto, and any element z ≥ x and maximal in D will satisfy h(z) = y since y is maximal. Now
we show that h is injective. This follows from the observation that g ◦ f (x) = x for any x ∈ ΩD , the later
since g ◦ f (x) ≥ x but x is maximal.
So far we have shown that h : ΩD → ΩD0 is a bijection. Also, h is continuous since f is. It remains
only to show that h is open, i.e., maps any open set of ΩD onto an open set of ΩD0 . But, since f is the
lower adjoint of an adjunction pair, this follows exactly from [6, Rem. IV-1.5 (2’), p.269]. The proof is
complete.
2
Theorem 2.2 Let f : E → F be a morphism of event structures. Assume that f is onto F , and that
f satisfies moreover f (#) ⊆ #, i.e.: ∀e, e0 ∈ E, e#e0 ⇒ f (e)#f (e0 ). Then f satisfies the following
properties:
261
A Cartesian Closed Category of Event Structures with Quotients
b → Fb is the lower adjoint of an adjunction pair, the upper adjoint of which is h : Fb → E
b
1. fb : E
−1
b
b
defined by h(y) = f (y) for all y ∈ F ; i.e., h(y) = {e ∈ E : f (e) ∈ y}. Moreover, f is onto.
2. f is max-synchronous, and the restriction fb|ΩE : ΩE → ΩF is a homeomorphism.
b is well defined. Let y ∈ Fb and let x = f −1 (y). Then x is
Proof: 1. First we show that h : Fb → E
downward closed since f is order-preserving. Moreover x only contains compatible events. Otherwise
there would be two events e, e0 ∈ x with e#e0 . This would imply f (e)#f (e0 ), contradicting that f (e)
and f (e0 ) belong to configuration y. Hence x is a configuration of E, and thus h is well defined. A
straightforward inspection shows that the following adjunction identity holds:
∀y ∈ Fb,
b
∀x ∈ E,
fb(x) ⊆ y ⇐⇒ x ⊆ h(y),
and that IdFb = fb ◦ h, hence fb is onto.
2. This follows from the above point, combined with Lemma 2.1.
3
2
Quotients of Event Structures
This section describes the operation of quotient on event structures—the motivation for introducing quotients of event structures has been discussed in the Introduction. This operation extends the same operation for posets, taking furthermore into account the conflict relation of event structures. The quotient of a
poset with respect to a general equivalence relation is a preorder, and is not necessarily a poset. A further
identification is needed to obtain a poset; the same phenomenon arises for event structures.
3.1
The Lattice of Event Structures Built upon a Poset
Given a poset (F, ≤), several binary relations # may define a conflict relation such that (F, ≤, #) is an
event structure. Seen as subsets of F × F , these relations # are ordered by set-theoretic inclusion. The
construction of quotient of event structures rests on the following key lemma:
Lemma 3.1 Let (E, ≤, #E ) be an event structure, let (F, ≤) be a poset, and let f : E → F be an
order-preserving mapping. Let Cf be the set of binary relations on F defined by:
Cf = # ⊆ F × F : (F, ≤, #) is an event structure
and f : E → F is a morphism in ES .
Then Cf is a nonempty complete lattice with ∅ as minimum.
Proof: Routine verifications show that, if (#i )i∈I is any family of conflict relations in Cf , then the join
and meet of (#i )i∈I in Cf are respectively given by:
_
[
^
\
#i =
#i ,
#i =
#i .
i∈I
i∈I
i∈I
i∈I
Since ∅ ∈ Cf , Cf is nonempty and ∅ is indeed the minimum of Cf .
2
262
Samy Abbes
Remark. We open a short parenthesis that makes clearer the relationship between event structures and
their underlying posets. A similar result to Lemma 3.1 is the following (proof left to the reader):
Lemma 3.2 Let (E, ≤) be a poset. The family of binary relations # on E such that (E, ≤, #) is an
event structure is a complete lattice, whose minimal and maximal elements #0 and #1 are respectively
given by:
#0 = ∅,
0
∀e, e ∈ E,
e#1 e0 ⇐⇒ e and e0 are unbounded in E.
The lemma can be interpreted in terms of adjunctions of functors [10, p.89]. Let PO be the category of
posets, and let F : ES → PO be the forgetful functor defined by F(E, ≤, #) = (E, ≤) on objects, and
that leaves unchanged the morphisms. Let F0 , F1 : PO → ES be the two functors defined as follows:
F0 (E, ≤) = (E, ≤, #0 ),
F1 (E, ≤) = (E, ≤, #1 ),
where #0 and #1 are the conflict relations defined in Lemma 3.2. Then we leave to the reader to prove:
Proposition 3.1 (F, F0 ) and (F1 , F) are two adjunction pairs of functors.
Since the forgetful functor F is both a left and a right adjoint, it preserves products, coproducts and
exponentiation. This explains that the partial order structures on products, coproducts and exponentiation
defined in §2.4 for event structures coincide with the analogous for posets. We close the parenthesis.
3.2
Quotients of Event Structures
We are now ready to define the quotient of event structures. Let (E, ≤, #) be an event structure, and let
∼ be an equivalence relation on E. We first follow the classical construction of quotient posets (see for
instance [3]). Let ≤ be the transitive closure of the relation (∼ ∪ ≤). Define also the equivalence relation
R on E by:
∀e, e0 ∈ E, eRe0 ⇐⇒ e≤e0 and e0 ≤e.
We denote by [e]R the equivalence class of e with respect to R, by F = E R the quotient set, and by
π : E → F the canonical projection. F is equipped with the relation defined by:
∀u, u0 ∈ F,
u u0 ⇐⇒ ∃e, e0 ∈ E : [e]R = u, [e0 ]R = u0 , e≤e0
⇐⇒ ∀e, e0 ∈ E,
( [e]R = u, [e0 ]R = u0 ) ⇒ e≤e0 .
By construction, (F, ) is a poset, called the quotient poset, and π : E → F is order preserving.
Definition 3.1 With the above notations, we define the quotient of (E, ≤, #) with respect to the equivalence relation ∼ as the event structure (F, , #F ), with underlying poset (F, ) defined above, and with
conflict relation #F defined by:
#F = max(Cπ ),
where π : E → F is the canonical projection.
Intuitively, we keep in the quotient as much conflicts as we can from the original event structure. The
definition is motivated by the following property of quotients:
A Cartesian Closed Category of Event Structures with Quotients
263
Theorem 3.1 Let E an event structure, let F be the quotient of E with respect to an equivalence
relation ∼, as defined in Definition 3.1, and let π : E → F be the canonical projection. Then π is a
morphism of event structures, and the pair (F, π) has the following universal property: for any event
structure G, and morphism f : E → G satisfying:
∀e, e0 ∈ E,
e ∼ e0 ⇒ f (e) = f (e0 ),
there is a unique morphism g : F → G making the following diagram commutative:
/F
~
~
~
f
~~g
~
~
G
E
π
The pair (F, π) is unique, up to a unique isomorphism, with this property.
Proof: By construction of #F , F is an event structure and π : E → F is a morphism of event structures.
Now let G be an event structure and let f : E → G be a morphism satisfying e ∼ e0 =⇒ f (e) =
f (e0 ). By the universal property of the quotient poset (F, ), there is a unique order preserving mapping
g : F → G making the following diagram commutative:
/F
~
~~
f
~~g
~
~
G
E
π
Therefore, if it exists, the morphism of event structures g in the statement of the theorem must be this one.
We need thus only to check that g thus defined is a morphism of event structures.
Consider the binary relation #g on F defined by:
∀v, v 0 ∈ F,
v#g v 0 ⇐⇒ g(v)#g(v 0 ).
Then #g is symmetric, and irreflexive. Moreover #g satisfies the inheritance axiom: if v, v 0 , v 00 ∈ F
are such that v#g v 0 and v 0 v 00 , then g(v)#g(v 0 ), and g(v 0 ) ≤ g(v 00 ) since g is order-preserving, and
therefore g(v)#g(v 00 ). This shows that v#g v 00 , and thus (F, , #g ) is an event structure. Moreover,
π : E → (F, , #g ) is a morphism of event structures. Indeed, we have already observed that π is order0
0
preserving.
And 0ife, e ∈ E are two0 events such that π(e)#g π(e ), then by definition of #g , this implies
g π(e) #g π(e ) , i.e., f (e)#f (e ). Since f is a morphism of event structures, this implies that e#e0 .
This shows that π : E → (F, , #g ) is a morphism of event structures, and thus, #g ∈ Cπ . By definition
of the conflict relation #F in F , this implies:
#g ⊆ #F .
Therefore, for any two events v, v 0 ∈ F , we have:
g(v)#g(v 0 ) ⇒ v#g v 0 ⇒ v#F v 0 ,
(6)
264
Samy Abbes
•O e3






•O "#%$ e2
e4 '&!•
G• e7
e6
•O
e1 '&!• /o /o o/ •%$"# e5
Fig. 2: Quotient of an event structure.
[e2 ]≤[e3 ]≤[e4 ] = [e2 ].
• [e7 ]
u5 5u 5u @
u
5
u
5
u5
5u u5 u5
5/o u /o 5u /o 5u
•O [e6 ] [e2 ] • _@
@@
@@
@@ [e1 ] •
Remark that e3 is identified with e2 and e4 because of the cycle
the later implication thanks to (6). We have shown that g : F → G is a morphism of event structures,
as claimed. This completes the proof of the universal property of the pair (F, π). The uniqueness of
the pair (F, π), up to a unique isomorphism, follows from the usual argument from category theory: if
(H, ρ) satisfies the same universal property, then we apply both universal properties to π : E → F and
to ρ : E → H to get the existence and uniqueness of two arrows g and h making the following diagrams
commutative:
ρ
π /
E
H @o
E
F
@@
~~
@
~
ρ
π
@
~~g
h @@
~~~
H
F
From π = h ◦ ρ and ρ = g ◦ π we obtain π = h ◦ g ◦ π, whence IdF = h ◦ g. Conversely, IdH = g ◦ h
holds. Hence (F, π) is uniquely determined, up to a unique isomorphism.
2
Example. Let (E, ≤, #) be the event structure E = {e1 , e2 , . . . , e7 } with causality defined by:
e1 ≤ e2 ≤ e3 ≤ e4 ,
e5 ≤ e6 ,
e5 ≤ e7 ,
and conflict relation such that e1 #e5 (and other conflicts obtained by inheritance). The event structure is
depicted in Figure 2, left. Let also ∼ be the reflexive transitive closure of the relation e1 ∼ e5 , e2 ∼ e4 .
The quotient is depicted in Figure 2, right (see below the note about the drawing conventions of quotients).
Graphical convention for drawing quotients. We depict equivalence relations on event structures as
follows (see Figure 2, left). Events belonging to a same equivalence classes are circled within a curved
frame. Singleton classes are not depicted. The quotient of the event structure is depicted at right, following
our usual conventions for drawing event structures.
In the following subsection, we analyze a class of event structures for which the conflict relation can
be simply described. The example of the compression of event structures, detailed in Section 4, falls into
this class. This example also shows that the quotient operation may not preserve the finitary condition of
event structures.
3.3
Max-synchronous Properties of Quotients.
Maybe surprisingly, the natural projection π : E → F from an event structure E to its quotient F with
respect to an equivalence relation is not max-synchronous in general. Figure 3 depicts the example of
265
A Cartesian Closed Category of Event Structures with Quotients
'&!•
"#
•O %$
•O
•O
•O
• /o /o o/ •
•
•
Fig. 3: A quotient of event structure with a non max-synchronous projection. An event structure E is depicted at
left together with an equivalence relation. The quotient event structure F is depicted at right. Remark that #F = ∅.
The configuration consisting of the three left events of E is maximal in E, but its image (the two left events) is not
maximal in the quotient.
such a quotient. We can however state a sufficient condition for the projection to be max-synchronous
(Corollary 3.1 below).
We begin with the following notion. Let (E, ≤, #) be an event structure, and let ∼ be an equivalence
relation on E. Say that the conflict relation # is a ∼-congruence if the following holds:
e0 #e1
∀e0 , e1 , e ∈ E,
⇒ e#e1 .
(7)
e0 ∼ e
In other words, the conflict is a ∼-congruence if it is closed under the equivalence relation ∼.
The main property of congruent conflicts is the following:
Proposition 3.2 Let (E, ≤, #) be an event structure, let ∼ be an equivalence relation on E, and let
(F, , #F ) be the quotient event structure with π : E → F the natural projection. Then # is ∼-congruent
if and only if the quotient conflict relation #F satisfies:
∀e, e0 ∈ E,
π(e)#F π(e0 ) ⇐⇒ e#e0 .
(8)
Proof: It is clear that, if #F satisfies (8), then # is ∼-congruent.
To prove the converse, assume that # is ∼-congruent. In (8), the implication ⇒ is trivial since it follows
from the definition of morphisms, so we focus on the implication ⇐.
Consider the conflict relation # on F defined by:
∀u, v ∈ F,
u#v ⇐⇒ (∀e, e0 ∈ E,
[e]R = u, [e0 ]R = u0 ⇒ e#e0 ).
We claim that (F, , #) is an event structure. Indeed, # is obviously symmetric and irreflexive. We
prove the inheritance axiom. Assume that u, u0 , u00 are three elements in F with u#u0 and u0 u00 , and
let e ∈ u and e00 ∈ u00 . Pick e0 ∈ u0 . Then e#e0 since u#u0 , and e0 ≤e00 since u0 u00 . But, since # is
∼-congruent, this implies that e#e00 , and this shows that u#u00 . Hence (F, , #) is an event structure.
Obviously, π : (E, ≤, #) → (F, , #) is then a morphism, so that # ∈ Cπ . In turn, this implies that
e#e0 ⇒ π(e)#F π(e0 ) for any two events e, e0 ∈ E. This completes the proof of the proposition.
2
As a consequence, we have the following sufficient condition for π : E → F to be max-synchronous:
Corollary 3.1 Let (E, ≤, #) be an event structure. Let ∼ be an equivalence relation on E, and
let (F, , #F ) be the quotient event structure. If # is a ∼-congruence, then the canonical projection
π : E → F is max-synchronous and π
b|ΩE : ΩE → ΩF is a homeomorphism.
Proof: By construction, π : E → F is onto. Since # is assumed to be ∼-congruent, it follows from
Proposition 3.2 that π satisfies both conditions of Theorem 2.2. The conclusion follows.
2
266
4
Samy Abbes
Compression of Event Structures
We introduce the compression of event structures as an example of quotient. It is a canonical example
in the sense that it can be applied to any event structure. It completes the study of the category ESmax
introduced in §2.5 by giving for each event structure E a canonical event structure sharing the same space
of maximal elements as E, and minimal in some sense.
4.1
The compression equivalence.
To begin with, we introduce the following equivalence relation:
Definition 4.1 Let (E, ≤, #) be an event structure, with ΩE the space of maximal configurations of E.
Let ∼ be the equivalence relation on E defined by:
∀e, e0 ∈ E,
e ∼ e0 ⇐⇒ (∀v ∈ ΩE ,
e ∈ v ⇐⇒ e0 ∈ v).
(9)
We call ∼ the compression equivalence. The quotient event structure is called the compression of E.
The relation ∼ is obviously an equivalence relation. It identifies events that cannot be distinguished
from the point of view of maximal configurations. An equivalent (proof left to the reader), more operational definition of the compression equivalence is the following: for any two events e, e0 ∈ E, e ∼ e0 if
and only if
∀e00 ∈ E, e#e00 ⇐⇒ e0 #e00 .
We give in Proposition 4.1 below some elements that describe more explicitly the quotient event structure. Using the notations of §3.2, we have:
Proposition 4.1 Let (E, ≤, #) be an event structure, and let (F, , #F ) be the compression of E.
1. The equivalence relation R coincides with the compression equivalence.
2. The conflict relation # is a ∼-congruence. Therefore, #F is given by:
∀e, e0 ∈ E,
[e]#F [e0 ] ⇐⇒ e#e0 ,
(10)
the projection π : E → F is max-synchronous, and π
b|ΩE : ΩE → ΩF is a homeomorphism.
Proof: 1. It is enough to show that for any e, e0 ∈ E, the following holds: eRe0 ⇒ e ∼ e0 , since the
converse implication is trivial. Hence let e, e0 ∈ E with eRe0 , i.e., e≤e0 ≤e. By definition of ≤, there are
events a0 , . . . , an and b0 , . . . , bm of E such that:
e ∼ a0 ≤ a1 ∼ a2 ≤ · · · ≤ an ∼ e0 ∼ b0 ≤ b1 ∼ b2 ≤ · · · ≤ bm ∼ e.
Pick v ∈ ΩE with e ∈ v. Then bm ∈ v since bm ∼ e. Therefore bm−1 ∈ v since bm−1 ≤ bm , and thus
bm−2 ∈ v since bm−2 ∼ bm−1 . Iterating m times, we finally obtain that b0 ∈ v, and thus e0 ∈ v since
e0 ∼ b0 . This shows that e ∈ v ⇒ e0 ∈ v holds for any v ∈ ΩE . Exchanging the roles of e and e0 , we
obtain the converse implication and thus e ∼ e0 .
2. We show that # is ∼-congruent. Let e, e0 ∈ E such that e#e0 , and let a ∼ e. If ¬(a#e0 ) holds,
then there is a maximal configuration v that contains both a and e0 . But v also contains e since a ∼ e0 , a
contradiction with e#e0 . The remaining properties follow from Proposition 3.2 and Corollary 3.1.
2
A Cartesian Closed Category of Event Structures with Quotients
/.
•-,
O
'&%$
•*+
•O
e2 ()•Y4 h(
44 h( h( h( O b" b"
(
h
44
h( h( "b "b
h( h( "b
44
h(
44 '&%$
!"#
• e3
•O
44
44
4
!"#
• e1
267
[e2 ] •O
_ _
_ _
• [e3 ]
[e1 ] •
Fig. 4: Example of compression of an event structure. An event structure is depicted at left, together with its compression equivalence. The compressed event structure is depicted at right.
Example. Figure 4 depicts an example of compression.
Point 2 of Proposition 4.1 shows that the compression of E is a particular event structure sharing the
same space of maximal configurations, up to homeomorphism, as E. The fact that it is a canonical event
structure with this property follows from the study of the compression seen as an idempotent functor,
which is our next topic.
4.2
The compression functor.
The properties of the natural projection π : E → F from an event structure to its compression motivate
the introduction of the following sub-category of ESmax :
Definition 4.2 We denote by ES0max the sub-category of ESmax with event structures as objects, and
with arrows from E to F those max-synchronous morphisms f : E → F which are onto and preserve
conflict, i.e.:
∀e, e0 ∈ E, e#e0 ⇐⇒ f (e)#f (e0 ).
Observe that, according to Theorem 2.2, point 2, it is enough for a morphism f : E → F to be onto
and to satisfy f (#) = # in order to be max-synchronous. It turns out that ES0max is the right category to
consider in order to see the compression operation as a functor:
Theorem 4.1 Let f : E → G be a morphism in ES0max , and let F, H be the respective compressions
of E and G, with natural projections π : E → F and ρ : G → H. Then there is a unique morphism C(f )
in ES0max such that the following diagram is commutative:
E
π
f
G
/F
C(f )
ρ
/H
(11)
There is a functor C : ES0max → ES0max defined as follows: for E an event structure, C(E) is the
compression of E, and for f : E → F a morphism in ES0max , C(f ) is the morphism defined above. The
functor C is idempotent, i.e., C ◦ C = C.
268
Samy Abbes
Proof: Let f : E → G be a morphism in ES0max . Let ∼E and ∼G denote respectively the compression
equivalences in E and in G. We first show the following:
∀e, e0 ∈ E,
e ∼E e0 ⇒ f (e) ∼G f (e0 ).
(12)
Let e, e0 ∈ E such that e ∼E e0 . For any ξ ∈ ΩG such that f (e) ∈ ξ, there exists v ∈ ΩE such
−1
that fb(v) = ξ—according to Theorem 2.2, point 2, this unique v is given by v = fb|Ω
(ξ). The event
E
e is compatible with v. Otherwise, there would be an event e0 ∈ v such that e0 #e. But this would
imply f (e)#f (e0 ), contradicting that both f (e) and f (e0 ) belong to configuration ξ. Hence e is indeed
compatible with v. Since v is maximal, this implies that e ∈ v, which in turns imply that e0 ∈ v since
e ∼E e0 , and thus f (e0 ) ∈ ξ. Hence we have shown f (e) ∈ ξ ⇒ f (e0 ) ∈ ξ. By symmetry, we would
show the converse implication. Therefore, f (e) ∼G f (e0 ), which completes the proof of (12).
According to the universal property of quotients (Theorem 3.1) applied to the mapping ρ ◦ f , there is
thus a unique morphism of event structures g : F → H such that the following diagram is commutative:
/F
E@
@@
@@
g
ρ◦f @@
H
g is onto, since ρ ◦ f is itself onto as a composite of surjective mappings. Therefore, to show that g is
an arrow of ES0max , it remains only to show that g(#F ) ⊆ #H . And indeed, if a, a0 ∈ F are such that
a#F a0 , we pick e, e0 ∈ E such that π(e) = a and π(e0 ) = a0 . Then e and e0 are in conflict in E since
π : E → F is a morphism of event structures. Since both ρ and f are morphisms of ES0max , this implies
that ρ ◦ f (e)#H ρ ◦ f (e0 ), i.e., g(a)#H g(a0 ), as claimed. Therefore g = C(f ) is the requested morphism
of diagram (11). We use the usual argument from category theory shows that C is a functor.
We now show that C is idempotent. Let E be an event structure, and let F be the compression of E.
We show that the compression equivalence ∼F of F is the identity relation. Let a, a0 ∈ F such that
a ∼F a0 , we claim that a = a0 . Indeed, let e, e0 ∈ E such that π(e) = a, π(e0 ) = a0 , and we show
b(v) ∈ ΩF and a ∈ π
b(v), hence a0 ∈ π
b(v). This
that e ∼E e0 . Let v ∈ ΩE such that e ∈ v. Then π
0
0
implies that e is compatible with v, and therefore e ∈ v since v is maximal. We have thus shown:
e ∈ v ⇒ e0 ∈ v. The converse implication is shown in the same manner, hence e ∼E e0 , and thus a = a0 ,
as claimed. This shows that the compression of F is F itself. We have shown that C ◦ C(E) = E for
any event structure E. We now show that C is idempotent on morphisms. Let f : E → G be a morphism
of ES0max , and let F and H be the respective compressions of E and G. Then, applying the compression
functor C to C(f ) : F → H gives the following commutative diagram:
E
f
G
/F
Id
/F
Id
/H
C(f )
/H
C◦C(f )
This shows that C ◦ C(f ) = C(f ), and completes the proof.
2
269
A Cartesian Closed Category of Event Structures with Quotients
e1,1
• a1
7w w7 A O
7
w
A
7w 7w A
A
7w 7w
'&!•
%$ e1,2
•O "#
• a
w7 w7 O 2
w7 w7 ? ?
7
w
w7
? ?
w7 w7
•O %$"# e2,2
e2,1 '&!•
6v • a3
v6 v6 }= =}
6
v
v6
}=
v6 v6
}= }=
v6 v6
•O%$"# e3,2
• a4
e3,1 '&!•
6v v6
v6 v6 ~> >~
6
v
v6 v6
~> ~>
v6 v6
'&!· · ·
· · ·%$"#
···
[e1,· ] •O /o /o o/ /o < • [a1 ]
y
yy
y
yy
yy/o /o /o /o
• [a2 ]
[e2,· ] •O
y<
yy
y
yy
yy/o /o /o /o
[e3,· ] •O
< • [a3 ]
yy
y
y
yy
yy/o /o /o /o
• [a4 ]
[e4,· ] •O
x<
xx
x
xx
xx
x
o
/
. . . /o /o . . .
with additional conflicts:
ei,1 #aj
∀i, j ≥ 1, i ≤ j ⇒
ei,2 #aj
Fig. 5: Example of a finitary event structure (left), the compression of which (right) is not finitary.
4.3
Compression of Finitary Event Structures.
In general, the compression of a finitary event structure may not be finitary. Figure 5 (left) depicts an
example of such an event structure. On the other hand, some non finitary event structure may have a
finitary compression. Think for example of the event structure (R, ≤, ∅), where R denotes the set of
real numbers, equipped with the usual ordering relation ≤ and empty conflict relation. Then R is not
countable, neither well-founded, and thus it is not finitary. But its compression is a singleton, and so is
finitary.
Although we couldn’t give a criterion to guarantee that a compression is finitary, Theorem 4.2 below
proposes some elements in this direction. We need the following definition.
Definition 4.3 Let (E, ≤, #) be an event structure. Say that two events e, e0 are concurrent if neither
e ≤ e0 nor e0 ≤ e nor e#e0 holds. We denote by co the concurrency relation thus defined. Say that the
event structure (E, ≤, #) has finite concurrency width if there is no infinite concurrency clique. That is
to say, if A ⊆ E satisfies:
∀e, e0 ∈ A, e 6= e0 ⇒ e co e0 ,
then A is finite.
Event structures with finite concurrency width are very common in practice. They represent systems
where only finitely many events can occur concurrently. For example, unfoldings of safe Petri nets [11]
have finite concurrency width. Observe that the event structure of Fig. 5 (top-left) does not have finite
concurrency width.
If E is a countable event structure, and if E is not finitary, E is at least in one of the following situations:
1. There is in E an infinite strictly descending sequence;
2. There is an event e ∈ E and an infinite concurrency clique in ↓ e;
270
/. -,
. .O . /o /o o/ .> . .
4 . .O .
i
| W
i
i
|
i
i
|
i
W iiii
||
|| iiiiiiWiW
|
|iii
W
•O i/o /o /o /o < •
W
iii4 •O
y
y
Z iWiW iiii
y
i
Z
y
i
yy iiii Z Z W W
yy/oii/o ii/o i/o
i
Z W ii4 •
•O
<•
O
Z
i
yy ` ` iiiZ iiW iW
y
i
Z
y
i
yy iiii ` ` Z W W
` ` Z Z W
yy/oii/o ii/o i/o
i
•O
< • g' g'
` iiZ iW 4 •O
y
y
g' iig' iii` ` Z W
y
i
i
g' g' ` Z W
y
i
g' g' ` Z W
yyiiiiiii
y
g'
y/oii/o /o /o
i
o/ o/ () *+
/
o
/
o
/
o
/
o
/
o
/
o
•O
<•
iw7 i4 w7 •
i
y
i
i
yy
iii w7 w7
yy iiiiiiiw7 w7 w7
y
i
7
w
w7
yyiiii
• i/o /o /o /o •
Samy Abbes
•O [ei ], i ≥ 1
O
. .O . /o /o o/ .< . .
x
xx
xx
x
x
xx
•O /o /o /o /o < •
yy
yy
y
y
yy
•O /o /o /o /o < •
y
yy
yy
y
yy
•O /o /o /o /o < •
yy
yy
y
y
yy
• /o /o /o /o •
e4
e3
e2
e1
Fig. 6: Example of a finitary event structure with finite concurrency width (left), the compression of which (right) is
not finitary. Observe the infinite ascending sequence of events in the compressed event structure.
3. There is an event e ∈ E and an infinite strictly increasing sequence of events in ↓ e.
The following result shows that the compression of a finitary event structure with finite concurrency
width can at most be in case 3. Figure 6 (left) depicts a finitary event structure with finite concurrency
width, which compression is actually in case 3.
Theorem 4.2 If (E, ≤, #) is a finitary event structure with finite concurrency width, then the compression of E is countable, is well-founded (i.e., there is no infinite strictly decreasing sequence) and has finite
concurrency width.
Proof: Let (E, ≤, #) be a finitary event structure with finite concurrency width, and let (F, , #F ) be
the compression of E, with π : E → F the natural projection.
We show that (F, ) is well founded. Assume it is not. Then there is an infinite sequence a1 a2 a3 . . . in F , with all ai pairwise distinct, i ≥ 1. For each i ≥ 1, pick ei ∈ E such that [ei ] = ai . Observe
that:
∀i, j ≥ 1, i < j ⇒ ¬(ei ≤ ej ).
(13)
For, if ei ≤ ej with i < j, then ai aj since π : E → F is order preserving. But we also have aj ai
by construction, and thus ai = aj , contradicting that all ai are pairwise distinct. This proves (13). Note
that (13) implies that the ei are pairwise distinct, i ≥ 1. Moreover, we have:
∀i, j ≥ 1,
¬(ei #ej ).
(14)
Indeed, if ei #ej for some i, j ≥ 1, it follows from Proposition 4.1, point 2, that ai #aj , and this contradicts that ai and aj are causally related.
A Cartesian Closed Category of Event Structures with Quotients
271
Consider now the following inductive construction. Let i1 = 1. Since the set ↓ ei1 is finite, and since
the ei are pairwise distinct, there are only finitely many integers i ≥ 1 such that ei ≤ ei1 . Hence there is
an integer i2 > i1 such that:
∀i ≥ i2 , ¬(ei ≤ ei1 ).
For the same reasons, there is an integer i3 > i2 such that:
∀i ≥ i3 ,
¬(ei ≤ ei2 ).
Continuing inductively, we construct a strictly increasing sequence (ik )k≥1 of integers such that:
∀k, k 0 ≥ 1,
k < k 0 ⇒ ¬(eik0 ≤ eik ).
(15)
Set A = {eik , k ≥ 1}. It follows from (13), (14) and (15) that A is a concurrency clique. But, since
(ik )k≥1 is strictly increasing, and since the ei are pairwise distinct, the eik are pairwise distinct, k ≥ 1.
Hence A is an infinite concurrency clique, and this contradicts that E has finite concurrency width. This
shows that (F, ) is well founded.
F has finite concurrency width. Indeed, let B be a concurrency clique of F . Pick for every a ∈ B an
event e ∈ E such that [ea ] = a. Then we show as above that A = {ea , a ∈ B} is a concurrency clique
of E. Therefore A is finite. Since π|A : A → B is onto, it follows that B is finite. This proves the claim,
and completes the proof of the theorem.
2
5
Conclusion
We have introduced a cartesian closed category of event structures. Although the set-theoretic action of a
morphism f : E → F on a configuration of E may not be a configuration, morphisms naturally defined
an action from configurations of E to configurations of F . This action respects prime elements.
We have defined a notion of quotient event structure within this category. We have introduced the
compression of event structure as an example of quotient. The compression of an event structure E is a
quotient of E sharing the same topological space of maximal configurations as E.
Several extensions are to be considered for the notion of quotient. From the mathematical viewpoint, the
quotient of an event structure induces a quotient in the domain of configurations. A first question would
be to analyze, conversely, under which condition the quotient of a domain can be realized as the quotient
of the associated event structure. In particular, is the so-called observational equivalence of processes of
this type?
Since we have analyzed the cartesian closure properties of the category ES of event structures, an
extension of this work would be to consider the domain of valuations defined on the domain of configurations of event structures. In particular, does the probabilistic powerdomain [7] of an event structure
factorize through its compression?
Acknowledgements
I would like to express my gratitude to Albert Benveniste for bringing the topic of quotient event structures
to my attention, and to anonymous referees that have greatly helped in improving the corectness of the
original manuscript.
272
Samy Abbes
References
[1] S. Abbes and A. Benveniste. Branching cells as local states for event structures and nets: probabilistic applications. In V. Sassone, editor, FOSSACS 2005, volume 3441 of LNCS, pages 95–109,
2005.
[2] S. Abbes and A. Benveniste. Probabilistic models for true-concurrency: branching cells and distributed probabilities for event structures. Information and Computation, 204(2):231–274, 2006.
[3] G. Birkhoff. Lattice Theory. American Mathematical Society, 1967. Third edition.
[4] M. Droste. Event structures and domains. Theoretical Computer Science, 68(1):37–47, 1989.
[5] A. Edalat and R. Heckmann. A computational model for metric spaces. Theoretical Computer
Science, 193(1–2):53–73, 1998.
[6] G. Gierz, K.H. Hofmann, K. Keimel, J.D. Lawson, M.W. Mislove, and D.S. Scott. Continuous
Lattices and Domains. Cambridge University Press, 2003.
[7] C. Jones and G. Plotkin. A probabilistic powerdomain of evaluations. In LICS 1989, pages 186–195.
IEEE Computer Society Press, 1989.
[8] A. Jung. Cartesian closed categories of algebraic CPOs. Theoretical Computer Science, 70(2):233–
250, 1990.
[9] J. Lawson. Spaces of maximal points. Mathematical Structures in Computer Science, 7(5):543–555,
1997.
[10] C. McLarty. Elementary Categories, Elementary Toposes. Oxford University Press, 1992.
[11] M. Nielsen, G. Plotkin, and G. Winskel. Petri nets, event structures and domains, part 1. Theoretical
Computer Science, 13:85–108, 1981.
[12] M. Nielsen and G. Winskel. The Book of Traces, chapter Trace structures and other models for
concurrency. V. Diekert and G. Rozenberg, editors, World Scientific, 1995.
[13] B. Rozoy and P.S. Thiagarajan. Event structures and trace monoids. Theoretical Computer Science,
91(2):285–313, 1991.
[14] G. Winskel. Events in computation. PhD thesis, University of Edimburgh, 1980.
[15] G. Winskel. Event structures semantics for CCS and related languages. Technical Report PB-159,
DAIMI, 1983. Full version of ICALP’82 paper, volume 140 of LNCS, pages 561–576, 1982.
[16] G. Winskel. Relations in concurrency. In LICS 2005, pages 2–11. IEEE Computer Society Press,
2005. Invited talk.
Download