This paper formalizes the concept of sculpting in higher-dimensional automata, explores its limitations and expressiveness, and establishes connections with geometric models, providing a new perspective on modeling concurrent systems.
Contribution
It introduces a formal definition of sculpting for HDA, analyzes its expressiveness, and links it to Euclidean cubical complexes and PV models, with an algorithm for sculptability decision.
Findings
01
Not all HDA can be sculpted, including the 'broken box' example.
02
Sculptures are equivalent to regular ST-structures and Chu spaces over 3.
03
Sculptures correspond to Euclidean cubical complexes, including PV models.
Abstract
We give a formalization of Pratt's intuitive sculpting process for higher-dimensional automata (HDA). Intuitively, an HDA is a sculpture if it can be embedded in (i.e., sculpted from) a single higher dimensional cell (hypercube). A first important result of this paper is that not all HDA can be sculpted, exemplified through several natural acyclic HDA, one being the famous "broken box" example of van Glabbeek. Moreover, we show that even the natural operation of unfolding is completely unrelated to sculpting, e.g., there are sculptures whose unfoldings cannot be sculpted. We investigate the expressiveness of sculptures, as a proper subclass of HDA, by showing them to be equivalent to regular ST-structures (an event-based counterpart of HDA) and to (regular) Chu spaces over 3 (in their concurrent interpretation given by Pratt). We believe that our results shed new light on the intuitions…
Equations107
αk,n−1βℓ,n=βℓ−1,n−1αk,n(k<ℓ)
αk,n−1βℓ,n=βℓ−1,n−1αk,n(k<ℓ)
qn−1siqn with si(qn)=qn−1 or qntiqn−1 with ti(qn)=qn−1.
qn−1siqn with si(qn)=qn−1 or qntiqn−1 with ti(qn)=qn−1.
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
\lsuperbNorwegian University of Science and Technology, Gjøvik, Norway
,
Christopher A. Trotter\rsuperc
\lsupercInstitute of Informatics, University of Oslo, Oslo, Norway
and
Krzysztof Ziemiański\rsuperd
\lsuperdFaculty of Mathematics, Informatics and Mechanics, University of Warsaw, Warsaw,
Poland
Abstract.
We give a formalization of Pratt’s intuitive sculpting process for
higher-dimensional automata (HDA).
Intuitively, an HDA is a sculpture if it can be embedded in (i.e., sculpted from) a single higher dimensional cell (hypercube).
A first important result of this paper is that not all HDA can be sculpted, exemplified through several natural acyclic HDA, one being the famous “broken box” example of van Glabbeek. Moreover, we show that even the natural operation of unfolding is completely unrelated to sculpting, e.g., there are sculptures whose unfoldings cannot be sculpted.
We investigate the expressiveness of sculptures, as a proper subclass of HDA, by showing them to be equivalent to regular ST-structures (an event-based counterpart of HDA) and to (regular) Chu spaces over 3 (in their concurrent interpretation given by Pratt).
We believe that our results shed new light on the intuitions behind sculpting as a method of modeling concurrent behavior, showing the precise reaches of its expressiveness.
Besides expressiveness, we also develop an algorithm to decide whether an HDA can be sculpted.
More importantly, we show that sculptures are equivalent to Euclidean cubical complexes (being the geometrical counterpart of our combinatorial definition), which include the popular PV models used for deadlock detection. This exposes a close connection between
geometric and combinatorial models for concurrency which may be of
use for both areas.
In approaches to non-interleaving concurrency, more than one event may
happen simultaneously. There is a plethora of formalisms for modeling
and analyzing such concurrent systems, e.g. Petri
nets [Pet62], event
structures [NPW81], configuration
structures [vGP09, vGP95],
or more recent variations such as dynamic event
structures [AKPN15] or
ST-structures [Joh16, Pri12].
They all share the idea of differentiating between concurrent and
interleaving executions; i.e., in CCS notation [Mil89],
a∣b is not the same as a.b+b.a.
In [vG06a], van Glabbeek shows that (up to
history-preserving bisimilarity) higher-dimensional automata
(HDA), introduced by Pratt and van Glabbeek
in [Pra91, vG91], encompass all other
commonly used models for concurrency.
However, their generality make HDA
quite difficult to work with, and so the quest for useful and general
models for concurrency continues.
In [Pra00], Pratt introduces sculpting as a
process to manage the complexity of HDA.
Intuitively, sculpting takes one single hypercube, having enough
concurrency (i.e., enough events), and removes cells until the desired
concurrent behavior is obtained. This is
orthogonal to composition, where a system is built by putting
together smaller systems, which in HDA is done by gluing cubes. Pratt
finishes the introduction of [Pra00] saying that
“sculpture on its own suffices […] for the abstract modeling of
concurrent behavior.”
In this paper we make precise the intuition of
Pratt [Pra00] and give a definition of sculptures.
We show that there is a close correspondence between sculptures, Chu
spaces over 3 [Pra95], and ST-structures. We develop
an algorithm to decide whether an HDA can be sculpted and show in
Theorem 32 several natural examples of acyclic HDA that
cannot be sculpted. We will carefully introduce these concepts
later, but spend some time here to motivate our developments.
Combinatorial sculpting as described above is not to be confused with
geometric sculpting, which consists of taking a geometric cube
of some dimension and chiseling away hypercubes which one does not
want to be part of the structure. Figure 1 shows a
geometric sculpture; for a combinatorial sculpture see
Figure 2.
Geometric sculpting has been used by Fajstrup et al. in [FRG06, FGR98] and other papers to model and
analyze so-called PV programs: processes which interact by locking and
releasing shared resources. In the simplest case of linear processes
without choice or iteration this defines a hypercube with
forbidden hyperrectangles, which cannot be accessed due
to resources’ access limits. See Figure 3 for an
example.
Technically, geometric sculptures are Euclidean cubical
complexes; rewriting a proof in [Zie18] we show that
such complexes are precisely (combinatorial) sculptures. In other words, an HDA
is Euclidean iff it can be sculpted, so that the geometric models for
concurrency [FRG06, FGR98] are closely related to the
combinatorial ones [Pra91, vG91],
through the notion of sculptures. Much work has been done in the
geometric analysis of Euclidean
HDA [FRGH04, GH07, FGR98, MR17, RZ14, Zie18]; through our equivalences
these results are made available for the combinatorial models.
The notion of unfolding
is commonly used to turn a complicated
model into a simpler, but potentially infinite one.
It may thus be expected that even if an HDA cannot be sculpted, then at
least its
unfolding can, as illustrated by the two examples in
Figure 4.
However, this is not always the case, as witnessed by the
example in Figure 5 which shows an HDA
which cannot be sculpted and which is its own unfolding.
This concurrent system, introduced in [Joh16], cannot
be modeled as an ST-structure, but can be modeled as an
ST-structure with
cancellation [Joh16, Sec. 5].
Even more concerning is the fact that there are HDA which can be
sculpted, but their unfoldings cannot; in fact, Figure 2
exposes one such example. This shows that for HDA, unfolding does not
always return a simpler model.
In the geometric setting, this means that there are Euclidean cubical
complexes whose unfoldings are not Euclidean. Since Goubault and
Jensen’s seminal paper [GJ92],
directed topology has been developed in order to analyze
concurrent systems as geometric objects [Gra09, FRG06, FGH*+*16]. Directed topology has
been developed largely in analogy to algebraic topology, but the
analogy sometimes breaks.
The mismatch we discover here, between Euclidean complexes and
unfoldings, shows such a broken analogy. Unfoldings of HDA are
directed analogues of universal covering spaces in
algebraic topology [vG91, Fah05a, Fah05b].
There are several other problems with this notion,
and finding better definitions of directed coverings is active ongoing
research [Dub19, FL15].
Another motivation for Pratt’s [Pra00] is that HDA
have no explicit notion of events. From the work
in [Joh16] on ST-structures, introduced as event-based counterparts of HDA, we know that it is not
always possible to identify the events in an HDA. The example in
Figure 6 shows the (strong) asymmetric conflict
from [vGP09, Pra03, Joh16], with two events a, b such that occurrence
of a disables b. This can be modeled as a general event structure,
but not as a pure event structure, hence also not as a configuration
structure [vGP09]. It can also be
modeled as an ST-structure, but when using HDA, one faces the problem
that HDA transition labels do not carry events. The right part of
Figure 6 shows two different ways of sculpting the
corresponding structure from an HDA, one in which the two a-labeled
transitions denote the same event and one in which they do not;
a priori there is no way to tell which HDA is the “right” model.
This also shows that the same HDA may be sculpted in several different
ways.
Structure of the paper
We start in Section 2 by recalling the definitions
of HDA, ST-structures, and Chu spaces.
In Section 3 we introduce sculptures and show that
they are isomorphic to regular ST-structures. The triple
equivalence
[TABLE]
embodies Pratt’s event-state
duality [Pra92].
Regularity is a geometric closure condition introduced for
ST-structures in [Joh16] which ensures that for any
ST-configuration, also all its faces are part of the structure, and
they are all distinct. If regularity is dropped, then one has to pass
to partial HDA [FL15] on the
geometric side, and then the above equivalence becomes one between
ST-structures and sculptures from partial HDA. For clarity of
exposition we do not pursue this here, but also in that case, there
will be acyclic partial HDA which cannot be sculpted.
Section 4 contains our main contribution, an
algorithm to decide whether a given HDA Q can be sculpted. The
algorithm essentially works by covering Q with the ST-structure
STπ(Q) which is built out of all paths in Q, and then trying
to find a quotient of STπ(Q) which is isomorphic to Q. We
show that such a quotient exists iff Q can be sculpted.
Figure 7 shows a simple example: the empty square,
a one-dimensional HDA with two interleaving transitions. The covering
STπ(H) splits the upper-right corner, and the algorithm finds
an equivalence on the four events which recovers (an ST-structure
isomorphic to) H: in this case we equate q1∼q3 and
q2∼q4, which corresponds to the standard way of identifying events in HDA as
opposite sides of a filled-in square when it exists.
Another example is shown in Figure 8. This
one-dimensional acyclic HDA cannot be sculpted, and the algorithm
detects this by noting that (1) all the a-labeled transitions indeed
need to be the same event, but then (2) the two states connected
with a dashed line need to be identified, so that the ST-structure
covering cannot be isomorphic to the original HDA model.
In Section 5 we make the connection between the
combinatorial and geometric models and show that HDA can be sculpted
precisely if they are Euclidean. This necessitates a few notions from
directed topology which can be found in appendix.
Figure 9 sums up the relations between the different
models which we expose in this paper. (The dashed line indicates the
common belief that Chu spaces over 3 and acyclic HDA are
equivalent, which we prove not to be the case.)
2. HDA, ST-Structures, and Chu Spaces
HDA are automata in which independence of events is indicated by
higher-dimensional structure. HDA consist of states, transitions,
and cubes of different dimensions which represent events running
concurrently.
Precubical sets
A precubical set is a graded set Q=⋃n∈\mathbbmNQn,
with Qn∩Qm=∅ for all n=m, together with mappings
sk,n,tk,n:Qn→Qn−1, k=1,…,n,
satisfying the following precubical identities,
for α,β∈{s,t},
[TABLE]
Elements of Qn are called n-cells (or simply cells), and
for q∈Qn, n=dimq is its dimension. The mappings
sk,n and tk,n are called face maps, and we will
usually omit the extra subscript n and simply write sk and tk.
Intuitively, each n-cell q∈Qn has nlower facess1q,…,snq and nupper facest1q,…,tnq, whereas the precubical identity expresses the fact
that (n−1)-faces of an n-cell meet in common (n−2)-faces;
see Figure 10 for an example.
Morphismsf:Q→R of precubical sets are graded functions
f={fn:Qn→Rn}n∈\mathbbmN which commute with the face
maps: αk∘fn=fn−1∘αk for all
n∈\mathbbmN, k∈{1,…,n}, and α∈{s,t}. This
defines a category pCub of precubical sets.
A precubical morphism
is an embedding if it is
injective; in that case we write f:Q↪R. Q and R
are isomorphic, denoted Q≅R, if there is a bijective
morphism Q→R.
If two cells
q,q′∈Q
are in a face relation
q=αi11⋯αinnq′,
for
α1,…,αn∈{s,t}, then this sequence can be
rewritten in a unique way, using the precubical
identities (1), so that the indices
i1<⋯<in, see [GM03]. Q is said to be
non-selflinked if up to this rewriting, there is at most one
face relation between any of its cells, that is, it holds for all
q,q′∈Q that there exists at most one index sequence
i1<…<in such that
q=αi11⋯αinnq′ for
α1,…,αn∈{s,t}.
In other words, Q is non-selflinked iff any q∈Q is
embedded in Q, hence iff all q’s iterated faces are
genuinely different.
This conveys a geometric intuition of regularity and is frequently
assumed [Faj05, FRG06], also in algebraic topology
[Bre93, Def. IV.21.1]. It means that for all cells
in Q, each of their faces (and faces of faces etc.) are present in
Q as distinct cells.
Higher-dimensional automata
A precubical set Q is finite if Q is finite as a set. This
means that Qn is finite for each n∈\mathbbmN and that Q is
finite-dimensional: there exists N∈\mathbbmN such that
Qn=∅ for all n>N (equivalently, dimq≤N for all
q∈Q). In that case, the smallest such N is called the
dimension of Q and denoted dimQ=max{dimq∣q∈Q}.
A higher-dimensional automaton (HDA) is a finite precubical set Q with a designated initial cell I∈Q0.
Morphisms f:Q→Q′ of HDA are precubical morphisms that
fix the initial cell, i.e., have f(I)=I′.
We often call cells from Q0 and Q1 respectively states and transitions.
Note that we only deal with unlabeled HDA here, i.e., HDA without
labellings on transitions and/or higher cells. We are interested here in the
events, not in their labeling.
A step in an HDA,
with qn∈Qn, qn−1∈Qn−1, and 1≤i≤n,
is either
[TABLE]
A pathπ=△q0α1q1α2q2α3…
is a sequence of steps qj−1αjqj, with
αj∈{s,t}.
The first cell is denoted st(π) and the ending cell in a
finite path is en(π).
The string α1…αn consisting of letters s, t is the type of the path π.
Two paths are elementary homotopic [vG06a], denoted π⟷homπ′, if one can be obtained
from the other by replacing, for q∈Q and i<j, either
(1) a segment
siqsj by
sj−1q′si,
(2) a segment
tjqti by
tiq′tj−1,
(3) a segment
siqtj by
tj−1q′si, or
(4) a segment
sjqti by
tiq′sj−1. Homotopy is the
reflexive and transitive closure of the above and is denoted the
same. Two homotopic paths thus share their respective start and end
cells.
A cell q′ in an HDA Q is reachable from another cell q if
there exists a path π with st(π)=q and
en(π)=q′. Q is said to be connected if any cell
is reachable from the initial state I. Q is acyclic
if there are no two different cells q,q′ in Q such that q′ is
reachable from q and q is reachable from q′.
If an HDA is not connected, then it contains cells which are not
reachable during any computation.
We will hence assume all HDA to be connected.
Universal event labeling
Let Q be a precubical set and define ∼ev to be the
equivalence relation on Q1 spanned by
{(siq,tiq)∣q∈Q2,i∈{1,2}}. Let
UE(Q)=Q1/∼ev be the set of equivalence
classes; this is called the set of universal labels of Q. The universal label of a transition q1 will be denoted by λ(q1).
For every precubical morphism f:Q→R and transitions e,e′∈Q1, e∼eve′ implies f(e)∼evf(e′). As a consequence, f induces a map between the sets of universal labels fitting into the diagram:
[TABLE]
This makes UE a functor from the category of precubical sets pCub into the category of sets.
Q is said to be inherently self-concurrent if there is
q∈Q2 for which s1q∼evs2q or (equivalently)
t1q∼evt2q.
In that case, UE(Q) does not identify
events, as there are cells in which more than one occurrence of an
event is active. We say that Q
is consistent
if it is not
inherently self-concurrent.
{exa}
The examples (1) and (2) are not consistent, though the first one is selflinked, whereas the second one is non-selflinked. Example (3) is consistent and selflinked.
(1)
Consider the HDA with three cells {Q0={q0},Q1={q1},Q2={q2}} where all the four maps of the square point to the same transition αi(q2)=q1, for α∈{s,t} and i∈{1,2} and the two maps of the transition point to the same state α1(q1)=q0, which is also the initial state.
For visual help we draw states as circles, transitions as squares, and 2-cells as hexagons.
(2)
Consider the HDA formed of three squares q2,q2′,q2′′∈Q2 that are adjacent, i.e., t1(q2)=s1(q2′) and t1(q2′)=s1(q2′′), but the first square shares with the third one a transition, namely s1(q2)=s2(q2′′)=e.
(3)
Consider the HDA formed of a single 2-cell q2 having two of its vertices identified, i.e., t1(s1(q2))=v=t1(s2(q2)).
Let <ev⊆UE(Q)×UE(Q) be the transitive closure of the relation
[TABLE]
We say that Q is
ordered
if for every a,b∈UE(Q) the conditions a<evb and b<eva cannot hold simultaneously or, equivalently, <ev is antisymmetric and a<eva for all a∈UE(Q).
For a precubical morphism f:Q→R, the induced map UE(f):UE(Q)→UE(R) preserves the relation <ev. This makes UE a functor into the category of sets with a transitive relation and relation-preserving maps.
If Q is not consistent, then it is not ordered.
Indeed, if a=λ(s1(q))=λ(s2(q)) for some q∈Q2, then a<eva, which
excludes ordered.
For every square q we can assign a pair of universal labels (λ(α2(q)),λ(β1(q))), which does not depend on the choice α,β∈{s,t}. This generalizes for higher-dimensional cubes: for q∈Qn and i∈{1,…,n} let
[TABLE]
Again, we can replace some of s’s with t’s and get the same result. Denote λ(q)=(λ1(q),…,λn(q)).
Lemma 1**.**
Some properties:
(1)
For q∈Qn, α∈{s,t},
[TABLE]
2. (2)
λ1(q)<evλ2(q)<ev⋯<evλn(q).
3. (3)
Q*
is consistent
iff for every n and q∈Qn, all λi(q) are different.*
4. (4)
If Q is
ordered,
then λi(q)<evλj(q) implies i<j.
Proof 2.1**.**
(1)
For j≥i we have
[TABLE]
For j<i,
[TABLE]
2. (2)
Fix q∈Qn and i∈{1,…,n−1} and let z=s1s2…si−1si+2…sn(q).
Using (1) we obtain that λ1(z)=λi(q), λ2(z)=λi+1(q); therefore, λi(q)<evλi+1(q).
3. (3)
If Q is not consistent, then there exists q∈Q2 such that
[TABLE]
If λi(q)=λj(q) for some q∈Qn, i<j, then
[TABLE]
4. (4)
If λi(q)<evλj(q) for j≤i, then either λj(q)<evλi(q) (if j<i) or λi(q)<evλi(q) (if i=j). In both cases Q cannot be ordered.
{exa}
The following HDA is not ordered (due to a “wrong” numbering of the face maps), but we can swap the directions of one of the squares to obtain an ordered HDA.
Consider the following HDA Q:
•
Q2={A,B,C},
•
Q1={a,b,c,d,e,f,g,h,i}
•
Q0={0,1,2,3,4,5,6,7}, [math] being the initial state,
with the following face maps:
•
s2(A)=s1(B)=a,
•
s2(B)=s1(C)=b,
•
s2(C)=s1(A)=c,
•
s1(a)=s1(b)=s1(c)=0
•
the other face maps are not of importance for the example.
This is not ordered because antisymmetry is broken by the following:
λ(a)=λ1(A)<evλ2(A)=λ(c) and
λ(b)=λ1(B)<evλ2(B)=λ(a) and
λ(c)=λ1(C)<evλ2(C)=λ(b).
Note that Q is almost the union of the three start faces of a 3-cell, except that the face maps of A are in the “wrong” order, i.e., in a cube we would have the following:
•
s1(A)=s1(B)=a,
•
s2(B)=s1(C)=b,
•
s2(C)=s2(A)=c.
However, we can create a slightly different HDA (called symmetric variant) that would be ordered, by only changing the maps of one of the offending squares, i.e., take the HDA from above only with A′ instead of A, such that s1(A′)=a and s2(A′)=c. We could have, alternatively, reordered the maps of B or C to obtain other ordered symmetric variants.
In the rest of the paper we consider only ordered HDAs. As we show
later, in Proposition 6, only
ordered HDAs can be sculpted. The result below shows that
this is not a restriction, as any consistent precubical set can be
ordered by re-arranging its face maps.
Proposition 2**.**
For every consistent precubical set Q there exists
an ordered
precubical set Q′ that is a symmetric variant of Q.
By a “symmetric variant” we mean that Q and Q′ are isomorphic when regarded as symmetric precubical sets [GM03]. In particular, there is a bijection between the set of paths on Q and the set of paths on Q′ (see the proof details in Appendix A).
ST-structures
An ST-configuration over a finite set E of events is a
pair (S,T) of sets T⊆S⊆E. An
ST-structure is a pair ST=(E,C) consisting of a finite
set E of events and a set C of ST-configurations over
E.
Intuitively, in an ST-configuration (S,T) the set S contains
events which have started and T contains events which have
terminated. Hence the condition T⊆S: only events
which have already started can terminate. The events in
S∖T are running concurrently, and we call
∣S∖T∣ the concurrency degree of (S,T).
The notion of having events which are currently running, i.e., started
but not terminated, is a key aspect captured by ST-structures and also
by HDA through their higher dimensional cells. Other event-based
formalisms such as configuration structures [vGP95, vGP09] or event
structures [NPW81, Win86] cannot
express this.
A step between two ST-configurations is either
**s-step: **
(S,T)es(S′,T′) with T=T′, e∈/S
and S′=S∪{e}, or
**t-step: **
(S,T)et(S′,T′) with S=S′, e∈/T,
and T′=T∪{e}.
When the type is unimportant we write e.
A path of an ST-structure, denoted π, is a sequence of steps, where the end of one is the beginning of the next, i.e.,
[TABLE]
A path is rooted if it starts in (∅,∅).
An ST-structure ST=(E,C) is said to be
(A)
rooted if (∅,∅)∈C;
2. (B)
connected if for any (S,T)∈C there exists a
rooted path ending in (S,T);
3. (C)
closed under single events if, for all (S,T)∈C
and all e∈S∖T, also (S,T∪{e})∈C and
(S∖{e},T)∈C.
ST is regular if it satisfies all three conditions above.
Figure 6(center) shows a regular ST-structure.
ST-structures were introduced in [Joh16] as an
event-based counterpart of HDA that are also a natural extension of
configuration structures and event structures.
The notions of rootedness and connectedness for ST-structures are
similar to connectedness for HDA. The notion of being closed under
single events mirrors the fact that cells in HDA have all their faces,
and (by non-selflinkedness) these are all distinct.
Thus regularity is assumed in some of the results below.
A morphism of ST-structures (E,C)→(E′,C′) is a
partial function f:E⇀E′ of events which preserves
ST-configurations (i.e., for all (S,T)∈C we have f(S,T):=(f(S),f(T))∈C′)
and is locally total and injective (i.e., for all (S,T)∈C, the restriction
f↿S:S→E′ is a total and injective function).
This defines a
category ST of ST-structures.
Two ST-structures are isomorphic, denoted ST≅ST′,
if there exists a bijective morphism between them.
{defi}
Let ST=(E,C) be an ST-structure and
∼⊆E×E an equivalence relation. The
quotient of ST under ∼ is the ST-structure
ST/∼=(E/∼,C/∼), with
C/∼={(S/∼,T/∼)∣(S,T)∈C}.
It is clear that ST/∼ is again an ST-structure.
To ease notation we will sometimes denote
(S/∼,T/∼)=(S,T)/∼. The quotient map
γ:ST→ST/∼:e↦[e]∼ is
generally not an ST-morphism, failing local injectivity.
{defi}
An equivalence relation ∼⊆E×E on an
ST-structure ST=(E,C) is collapsing if there is
(S,T)∈C and e,e′∈S with e=e′ and e∼e′.
Otherwise, ∼ is non-collapsing.
Lemma 3**.**
∼⊆E×E* is non-collapsing iff the quotient
map
γ:ST→ST/∼:e↦[e]∼
is an ST-morphism.*
Proof 2.2**.**
If ∼ is collapsing, then γ is not locally
injective. For the other direction, assume that γ is
not locally injective, then there is (S,T)∈C and
e,e′∈S with e=e′ and
γ(e)=γ(e′), thus e∼e′: ergo ∼
is collapsing.
We want to compare sculptures and ST-structures. To this end, we
introduce a small but important modification to ST-structures which
consists in ordering the events.
Let E be a totally ordered set of events with ordering <. An
ordered ST-structure is an ST-structure on E, and morphisms
f:(E,C)→(E′,C′) of ordered ST-structures respect the
ordering, i.e., if f(e1) and f(e2) are defined and e1<e2, then
f(e1)<f(e2). This defines a category of ordered ST-structures.
Chu spaces
The model of Chu spaces has been developed by Gupta and
Pratt [Gup94, Pra95] in order to study the
event-state duality [Pra92]. A Chu space over a
finite set K is a triple Chu=(E,r,X) with E and X sets
and r:E×X→K a function called the matrix of
the Chu space.
Chu spaces can be viewed in various equivalent
ways [Gup94, Chap. 5]. For our setting, we take the
view of E as the set of events and X as the set of configurations.
The structure K is representing the possible values the events may
take, e.g.: K=2={0,1} is the classical case of an event
being either not started ([math]) or terminated (1), hence Chu spaces
over 2 correspond to configuration
structures [vGP95, vGP09] where an
order of 0<1 is used to define the steps in the system, i.e., steps
between states must respect the increasing order when lifted pointwise
from K to X.
ST-structures capture the “during” aspect in the event-based
setting, extending configuration structures with this
notion. Therefore we need another structure
K=3={0,\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture,1} with the order
0<\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture<1, introducing the value to stand for
during, or in transition. Note
that [Gup94] studies Chu spaces over 2,
whereas Pratt proposed to study Chu spaces over 3 and other
structures in [Pra03].
A Chu space is extensional [Gup94] if it holds
for every x=x′ that there exists e∈E such that
r(e,x)=r(e,x′). We assume extensionality. Using currying,
we can view a Chu space (E,r,X) over K as a structure
X⊆KE (this needs extensionality). Consequently, we will
often write x(e) instead of r(e,x) below.
A Chu space is separable [Pra02] (called T0 in
[Gup94]) if no two events are the same, that is, for all
e=e′ there is x∈X such that r(e,x)=r(e′,x).
{defi}
[translations between ST and Chu]
For an ST-structure ST=(E,C) construct (E,X)ST
the associated Chu space over 3 with E the set of events
from ST, and X⊆3E containing for each
ST-configuration (S,T)∈C the state x(S,T)∈X formed
by assigning to each e∈E:
•
e→0 if e∈S and e∈T;
•
e→\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture if e∈S and e∈T;
•
e→1 if e∈S and e∈T.111The
case e∈/S∧e∈T is dismissed by the
requirement T⊆S of ST-configurations.
Call this mapping ChuST(S,T) when applied to an
ST-configuration and ChuST(ST) when applied to an
ST-structure.
The other way, we translate an extensional Chu space (E,X)
into an ST-structure over E with one ST-configuration (S,T)x
for each state x∈X using the inverse of the above mapping. We
use STChu(x) for the ST-configuration obtained from the event
listing x.
For any ST-structure ST,
STChu(ChuST(ST))≅ST. For any
(extensional) Chu space Chu over 3,
ChuST(STChu(Chu)≅Chu.
3. Sculptures
Inspired by the Chu notation for states, we define a bulk in two equivalent ways, both of which can be seen as the complete Chu over 3.
{defi}
Let d∈\mathbbmN. The d-dimensional bulk Bd is the
precubical set defined as follows. For n=0,…,d, let
[TABLE]
be the set of tuples with precisely n occurrences of .
For n=1,…,d and k=1,…,n, define face maps
sk,tk:Bnd→Bn−1d as follows: for
x=(x1,…,xd)∈Bnd with
xi1=⋯=xin=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture, let
skx=(x1,…,0ik,…,xd) and
tkx=(x1,…,1ik,…,xd) be the tuples with the
k-th occurrence of set to [math] or 1, respectively.
The initial stateIBd of the bulk Bd is the
cell (0,…,0). This turns bulks into HDA.
Let Sd=(\oldvecE,C) be the complete ordered
ST-structure on \oldvecE=(1,…,d), with
C={(S,T)∣T⊆S⊆\oldvecE}.
There is a bijection between Sd and the bulk Bd which maps a
configuration (S,T) to the cell (x1,…,xd) given by
[TABLE]
cf. Def. 2, and using the inverse of the above when mapping the other way.
This bijection induces face maps in Sd as follows:
for
x=(x1,…,xd)∈Bnd with
xi1=⋯=xin=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture and
skx=(x1,…,0ik,…,xd), i.e., with the
k-th occurrence of set to [math], then for the respective ST-configuration (S,T)x the map is sk((S,T)x)=(S,T)(x1,…,0ik,…,xd)=(Sx∖{ik},Tx).
Conversely, Sd can be equipped with face maps as sk((S,T))=(S∖{ik},T) and tk((S,T))=(S,T∪{ik})
with ik∈\oldvecE being the kth event in the subset listing \oldvecE↾S∖T.
We will use these two notions of bulk interchangeably and denote this bijection as Sd↔Bd.
Let d≤d′ and b:{1,…,d}→{1,…,d′} a strictly
increasing function. This defines an embedding, also denoted b:Bd↪Bd′, mapping any cell (t1,…,td) to (u1,…,ud′) given by
[TABLE]
Every HDA morphism Bd→Bd′ is of this form (but not
every precubical morphism because these do not need to preserve the initial state), and there are no morphisms Bd→Bd′ for d>d′.
Lemma 4**.**
Fix a bulk Bd and take two transitions (t1,…,td) and (u1,…,ud), and let k be the unique index s.t. tk=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture, and the same for ul=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture. Then the two transitions represent the same event, i.e., (t1,…,td)∼ev(u1,…,ud), iff k=l.
Therefore, the set of universal events is UE(Bd)={1,…,d}.
Moreover, the order <ev on UE(Bd) agrees with the natural order on {1,…,d}.
Proof 3.1**.**
For a transition t=(t1,…,td) in Bd let dir(t) be the unique index such that tdir(t)=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture. Let y=(y1,…,yd) be an arbitrary 2-cube and its two unique indices k<l such that yk=yl=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture. We have dir(s1(y))=dir(t1(y))=l and dir(s2(y))=dir(t2(y))=k. Therefore, t∼evu implies dir(t)=dir(u).
We will show that t∼evu for any two transitions t,u with dir(t)=dir(u)=k. Induction with respect to the number m of indices i such that ti=ui. If m=0, then t=u and there is nothing to prove. If m>0, then choose any index j such that tj=uj; the square
[TABLE]
assures that t∼ev(t1,…,tj−1,uj,tj+1,…,td)=t′, and t′∼evu by the inductive hypothesis. As a consequence, dir:UE(Bd)→{1,…,d} is a bijection.
For a square y with yk=yl=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture, k<l, we have dir(s2(y))=k<l=dir(s1(y)) and λ(s2(y))<evλ(s1(y)). Therefore, the order <ev on UE(Bd) agrees with the order on {1,…,d}.
{defi}
A sculpture, denoted Q↪emBd, is an HDA Q together with a bulk Bd and
an HDA embedding em:Q↪Bd.
A morphism of sculptures
Q↪emBd,
Q′↪em′Bd′
is a pair of HDA
morphisms f:Q→Q′, b:Bd→Bd′ such that the
square
[TABLE]
commutes, i.e., b∘em=em′∘f.
We say that an HDA Q is sculptable if there exists a sculpture Q↪emBd.
For a morphism (f,b) as above, we must have d′≥d and b
injective, hence also f is injective. Two sculptures are
isomorphic, denoted ≅, when f and b are isomorphisms
(implying d=d′ and b=id).
For the special case of Q=Q′ above, we see that any sculpture
Q↪emBd
can be
over-embedded into a sculpture
Q↪b∘emBd′
for d′>d. Conversely, any sculpture
Q↪emBd admits a minimal
bulk Bdmin for which
Q↪em′Bdmin↪b′Bd with b′∘em′=em,
i.e., such that there is no factorization of the embedding of Q through Bd′ for any
d′<dmin. We call such a minimal embedding
simplistic.
Remark 5**.**
One precubical set can be seen as sculpted
from two different-dimensional bulks, in both cases being a
simplistic sculpture, i.e., it all depends on the embedding morphism
(cf. Figure 6). Because of this we cannot determine
from an HDA alone in which sculpture it enters (if any).
Working with unfoldings is not particularly good either. The
interleaving square from Figure 7 (left) can be
sculpted from B2, but its unfolding may be sculpted
simplistically from
B3 or B4; we cannot decide which.
All the sculptures in Figs. 6
and 7 are simplistic.
Proposition 6**.**
If an HDA Q is not
ordered,
then it is not sculptable.
Proof 3.2**.**
Any precubical morphism em:Q→Bd induces a map
[TABLE]
If Q is not
ordered,
then there exists a∈UE(Q) such that a<eva, which implies UE(em)(a)<evUE(em)(a), which is a contradiction.
We show that sculptures and regular ordered ST-structures are
in bijective correspondence
while also respecting the computation steps. This result also
resolves the open problem noticed in
[Joh16, Sec. 3.3] that there is no adjunction between
ST-structures and general HDA.
Recall that an ST-structure is regular if it is rooted, connected, and
closed under single events. Through the
observation from Section 2 the results in this
section extend to (regular) Chu spaces over 3 as well.
{defi}
[from ordered regular ST-structures to
sculptures]
We define a mapping H that for any regular ordered
ST-structure S on events \oldvecE={e1,…,ed},
generates an HDA, as well as a bulk and an embedding, thus a
sculpture, H(S), as follows. By the
bijection
between the complete ST-structure Sd on events
\oldvecE and Bd, there is an embedding S↪Sd↔Bd, where ↪ simply maps ei∈\oldvecE to i∈Sd.
H(S) is given by the composed embedding.
{defi}
[from sculptures to ordered regular ST-structures]
Define a mapping ST which to a sculpture
Q↪emBd associates the
ST-structure ST(Q↪emBd) as follows. By the
bijection
between Bd and the complete ST-structure Sd
on events {1,…,d}, there is an embedding
Q↪emBd↔Sd.
ST(Q↪emBd) is given by the composed embedding.
It is clear that
ST(Q↪emBd) is rooted, connected and closed under
single events, i.e., regular.
The following result shows a one-to-one correspondence between regular ordered
ST-structures and sculptures; the proof is clear by composition of the
mappings
above.
Theorem 7**.**
For any regular ordered ST-structure ST,
ST(H(ST))≅ST. For any
sculpture Q↪emBd,
H(ST(Q↪emBd))≅Q↪emBd.
We can also understand ST as labeling every cell of the
sculpture with an ST-configuration, or equivalently (because of
Theorem 2) with a Chu state.
Lemma 8**.**
The mapping H is functorial, in the sense that an
ordered ST-morphism f:ST1→ST2 is translated into an HDA
morphism
H(f):H(ST1)→H(ST2), given by H(f)((S,T))=H(f(S,T)).
If f
is total and injective, then H(f) is also a
sculpture morphism.
Proof 3.3**.**
The first part of the lemma is trivial.
For the second part we denote S1=(E1,C1) and S2=(E2,C2).
The morphism b:Bd1≅S∣E1∣→S∣E2∣≅Bd2 is defined by the map f:E1→E2, which makes the sculptures morphism diagram commute.
[TABLE]
4. Decidability for the Class of Sculptures
We proceed to develop an algorithm to decide whether a given HDA can
be sculpted.
At first one could simply search for embedding into bulks of any dimension limited by the number of edges in the HDA.
But a naive calculation reveals this to be more than doubly exponential in the number of edges.222For an HDA Q with ∣Q1∣=n it is enough to check for embeddings into the single bulk of the largest dimension n, because any sculpture can be over-embedded. There are ∣Bn∣∣Q∣ maps to check, which is larger than focusing on maps between transitions only, i.e., larger than ∣B1n∣n=(n∗2(n−1))n. This should also be multiplied with the amount of time it takes to check whether an individual map is an embedding, i.e., checking injectivity, cubical laws, face maps preservation for all higher cells, etc.
In this section we work out a more algorithmic approach which is also more efficient.
First we define a way of translating HDA into ST-structures without the need of a bulk and an embedding.
Instead we give an inductive construction that works with rooted paths.
{defi}
A path having the following form, for vi∈Q0 and ej∈Q1,
[TABLE]
will be called sequential. An HDA Q has non-repeating events if for every sequential path
all universal labels λ(e1),λ(e2),…,λ(en) are different.
Proposition 9**.**
If Q has repeating events, then it cannot be sculpted.
Proof 4.1**.**
If a path π in Q repeats events, then its image em(π) in Bd also repeats events, by the functoriality of UE;
but bulks have non-repeating events.
Proposition 10**.**
If Q has non-repeating events, then it
is consistent.
Proof 4.2**.**
Easy.
{exa}
An HDA that has repeating events is the full square, q, to the right which has the upper-left and lower-right corners identified into q0.
We find the sequential path
Iss2(q)tq0st2(q)tq0′ on which the same label λ1(q) appears twice.
This example is acyclic; otherwise, the non-repeating property implies acyclicity.
[from HDA to ST-structures through paths]
Define a map STπ:HDA→ST which builds an
ST-structure STπ(Q)=(UE(Q),C) in the following way. For every path π=π′αq we assign an ST-configuration STπ(π)=(Sπ,Tπ) in the following way.
(1)
For the minimal rooted path we associate
STπ(I)=(∅,∅).
2. (2)
If α=si, then we put
STπ(π)=STπ(π′)∪({λi(q)},∅)=(Sπ∪{λi(q)},Tπ), i.e., we start the
event λi(q).
3. (3)
If α=ti, then we put
STπ(π)=STπ(π′)∪(∅,{λi(en(π′))}), i.e., we terminate the event
λi(en(π′)).
Finally, C is the set of all these ST-configurations, i.e.,
[TABLE]
where Path(Q)∗ denotes the set of all rooted paths of Q.
The construction is similar to an unfolding [FL15];
see [Joh16, Def. 3.39] for a related construction.
The next lemmas are used to establish that for every path π the pair (Sπ,Tπ) is indeed an ST-configuration.
Homotopic paths have the same associated ST-configurations (i.e., if π∼ϱ, then Sπ=Sϱ, Tπ=Tϱ).
Proof 4.4**.**
It is enough to consider the case when π and ϱ are elementary homotopic and that the homotopy changes the final segments of these paths. Thus
[TABLE]
where one of the following cases holds (denote s=en(σ)).
•
α=β=s, i<j, k=j−1, l=i. Then Tπ=Tσ=Tϱ and
[TABLE]
•
α=s, β=t, i>k=j, l=i−1. Then
[TABLE]
•
α=s, β=t, i=l<j, k=j−1.
•
α=β=t, k=j<i, l=i−1.
Calculations in the last two cases are similar.
{lemC}
[[Fah05b, Lem.4.38]]
Every rooted path is homotopic to a path of the type (st)ksn, for
any n,k≥0.
Proof 4.5**.**
Assume that π has a segment of type sst, namely
[TABLE]
If j=l, then we replace it by a homotopic segment
•
si(sj(r))=sj−1(si(r))sj−1si(r)sirtltl(r)* if i<j*
•
si(sj(r))=sjsi+1(r)sjsi+1(r)si+1rtltl(r)* if i≥j*
to assure that j=l. Next, we replace it by
(1)
si(sj(r))sisj(r)tl−1tl−1(sj(r))=sj(tl(r))sjtl(r)* if j<l,*
2. (2)
si(sj(r))sisj(r)tltl(sj(r))=sj−1(tl(r))sj−1tl(r)* if j>l,*
and obtain a homotopic segment of type sts. We repeat this procedure as long as there is a type sst subpath (which is finitely many times). Eventually we obtain a path homotopic to π having the required type.
Lemma 13**.**
Fix n≥1 and i∈{1,…,n}. Every path of type sn,
starting in a vertex, is homotopic to a path of type s1s2…sn−2sn−1si.
Proof 4.6**.**
For i=n this follows from the canonical presentation of an iterated face map. In general, we start with s1…sn and move si to the rightmost place using precubical identities,
i.e., s1…si−1sisi+1si+2…sn=s1…si−1sisisi+2…sn=s1…si−1sisi+1sisi+3…sn=⋯=s1…sn−2sisn=s1…sn−2sn−1si.
Lemma 14**.**
For every n,k≥0, every rooted path π ending in q∈Qn,
and any i∈{1,…,n}, there exists a path that is homotopic
to π and has the type
(s1t1)ks1s2…sn−2sn−1si.
Proof 4.7**.**
This follows from the two preceding lemmas.
Proposition 15**.**
For every rooted path π, (Sπ,Tπ) is an ST-configuration (i.e., Sπ⊇Tπ).
Proof 4.8**.**
Induction with respect to π; enough to check the case when π=π′titi(q), q=en(π′). By Lemma 14 there exists a path ϱ′=ϱ′′siq homotopic to π′. Thus,
[TABLE]
Proposition 16**.**
Assume that an HDA Q has non-repeating events. Then Sπ∖Tπ=λ(en(π)) for every rooted path π.
Proof 4.9**.**
Note that λ(en(π)) is a tuple, thus a set of universal labels with an order on them; and similarly, the set of events on the left are ordered.
We use induction with respect to the structure of π. If π=I — obvious. By Lemmas 14 and 12 we can assume that π has the type (s1t1)ls1…sn. Denote q=en(π)∈Qn. Consider two cases:
•
n=0. Then π=π′t1q, with λ(q)=∅. Using the inductive hypothesis we obtain
[TABLE]
•
n>0. Let π′ be the prefix of π of length 2l. Since en(π′) is a state, then Sπ′=Tπ′ (by the previous case) and Sπ=Sπ′∪λ(q), Tπ=Tπ′ (by Definition 4.2). It remains to show that λ(q)∩Sπ′=∅. For every i
[TABLE]
and the path π′s1s1…si−1si+1…sn(q)t1s1…si−1tisi+1…sn(q)
is sequential. Since Q has non-repeating events, Lemma 11 implies that λi(q)∈Sπ′.
Corollary 17**.**
Assume that Q has non-repeating events. Then for every i and q∈Q and every rooted path π∈Path(Q)∗ that can be extended to πsiq, then λi(q)∈Sπ.
Proof 4.10**.**
Otherwise, Sπsiq=Sπ, which implies that λ(si(q))=λ(q).
Proposition 18**.**
If Q has non-repeating events, then STπ(Q) is a regular ST-structure.
Proof 4.11**.**
Conditions (A) and (B) are obvious. To prove (C), fix π∈Path(Q)∗ and
[TABLE]
where q=en(π).
Let ϱ be a rooted path such that ϱsiq is homotopic to π
and let ϱ′=πtiti(q).
Then
[TABLE]
and
[TABLE]
But e∈Sϱ by Corollary 17, so (Sϱ,Tϱ)=(Sπ∖{e},Tπ)∈STπ(Q).
If the HDA in question is a sculpture, then there is a natural
equivalence relation on its cells which captures the notion of
event better than the universal event labelling.
{defi}
For a sculpture Q↪emBd, define
UE(em):UE(Q)→UE(Bd)≃UE(Sd)≃{1,…,d} to be the map induced by em, i.e., UE(em)(λ(q))=λ(em(q)).
This induces an equivalence relation on UE(Q) which we
denote ∼em, i.e., λ(q)∼emλ(q′) iff
UE(em)(λ(q))=UE(em)(λ(q′)).
Lemma 19**.**
Let Q↪emSd be a sculpture, then (Sπ,Tπ)/∼em=em(en(π)) for every rooted path π.
Proof 4.12**.**
Note that we work with a sculpture that is embedded directly in the Sd, which is isomorphic to Bd. We do this to simplify the arguments, for otherwise we would have had to go through the isomorphism using the STChu to translate between tuples and ST-configurations.
We use induction on the length of the path π. By Lemmas 14 and 12 we may assume that π has type (s1t1)ns1…sk, q=en(π)∈Qk.
For π=I, (Sπ,Tπ)=(∅,∅)=em(I).
For k=0, then π=π′s1et1q is sequential. By Definition 4.2Sπ=Sπ′∪{λ(e)} and Tπ=Tπ′∪{λ(e)} with λ(e)∈Sπ′ (because of Corollary 17 since a sculpture has non-repeating events).
On the right side, the path em(π)=em(π′)s1em(e)t1em(en(π)) has all universal labels different too, thus λ(em(e))∈S′ for (S′,T′)=em(en(π′)), and by construction (S′∪{λ(em(e))},T′∪{λ(em(e))})=em(en(π)).
We finish this case by applying the induction hypothesis to obtain
(Sπ,Tπ)/∼em=(Sπ′/∼em∪{UE(em)(λ(e))},Tπ′/∼em∪{UE(em)(λ(e))})=ind(S′∪{UE(em)(λ(e))},T′∪{UE(em)(λ(e))})=\refdefeventEquivSculpt(S′∪{λ(em(e))},T′∪{λ(em(e))}).
For k>0, then
π=π′s1q1⋯skq=π′′skq
with π′ sequential. From Proposition 16 we
have Sπ=Tπ∪{λ(q)} and
Tπ′′=Tπ=Tπ′=Sπ′. Denote by
(S,T)=em(en(π))=em(q) and by
(S′′,T′′)=em(en(π′′))=em(sk(q)). By
construction, (S,T)=(S′′∪{λk(q)},T′′) and by the
induction hypothesis we have
(S′′∪{λk(q)},T′′)=ind(Sπ′′/∼em∪{λk(q)},Tπ′′/∼em)=(Sπ′/∼em∪{λ(sk(q))}∪{λk(q)},Tπ′/∼em)=(Sπ′/∼em∪{λ(q)},Tπ′/∼em)=(Sπ/∼em,Tπ/∼em),
since by the consistency and non-repeated events properties we know
that
λk(q)∈Sπ′′/∼em.
Proposition 20**.**
For a (connected) simplistic sculpture Q↪emBn we have
[TABLE]
Proof 4.13**.**
Note that the requirement of being simplistic is only needed in order to have the same set of events on both sides.
The events generated on the left side by ST are {1,…,n}=UE(Bn) which are the events obtained on the right side due to the application of ∼em, having the same order.
The isomorphism is then exhibited by the identity map f on the above sets of events.
Showing that f preserves ST-configurations is easy by using the previous Lemma 19 since every ST-configuration is generated as em(q), but since all cells are reachable then there exists a path π ending in q so that we need to show f(em(en(π)))=(Sπ,Tπ)/∼em, which is done by the lemma.
Corollary 21**.**
For a sculpture Q↪emSd the equivalence ∼em is non-collapsing.
{defi}
Let Q be an HDA. A proper event identification on Q is an equivalence relation ∥ on UE(Q) such that
(1)
The quotient preorder on UE(Q)/∥ induced from UE(Q) is antisymmetric. Equivalently, if a<evb, c<evd, a∥d, b∥c for a,b,c,d∈UE(Q), then a∥b∥c∥d.
2. (2)
If en(π)=en(π′), then (Sπ/∥,Tπ/∥)=(Sπ′/∥,Tπ′/∥).
3. (3)
If (Sπ/∥,Tπ/∥)=(Sπ′/∥,Tπ′/∥), then en(π)=en(π′).
Remark 22**.**
An equivalence relation ∥ is a proper event identification if the sequence of relations
[TABLE]
forms an injective function. Note that the right-most map is not (in general) an ST-map.
Lemma 23**.**
Let ∥ be a proper event identification on Q. Then for every π∈Path(Q)∗, ∥ is trivial when restricted to Sπ.
Proof 4.14**.**
Assume that there exists a path π∈Path(Q)∗ and a=b∈Sπ such that a∥b. Without loss of generality we may assume that en(π) is a state (extending π with some t1–type segments if needed), and also that π is sequential (by Lemma 12 and 14). Denote
[TABLE]
and let πj denote the prefix of π ending at vj. Since Sπ={λ(ei)}i=1n, then there exist k<l integers such that λ(ek)∥λ(el). But then
[TABLE]
so ∥ is not a proper identification, breaking 4(3).
Corollary 24**.**
A proper event identification equivalence on Q is non-collapsing.
Theorem 25**.**
Let Q be a connected HDA with non-repeating events. The following are
equivalent:
(1)
Q* can be sculpted.*
2. (2)
There exists a proper event identification on Q.
Proof 4.15**.**
(2)⇒(1).
Let ∥ be a proper event identification equivalence. Fix an order-preserving bijective map j:UE(Q)/∥→{1,…,d}, which exists by Definition 4(1), with d being the dimension of the quotient.
For q∈Qn choose a path π ending at q and put
[TABLE]
Lemma 23 tells that the equivalence classes in Sπ/∥ and Tπ/∥ are singletons, thus making em(q)=(j(Sπ),j(Tπ)). We abused the notation here, as the map j should be applied to an equivalence class, but instead we apply it to elements of UE(Q), since for a particular path as we have here, the equivalence classes are singletons.
Condition 4(2) assures that em(q) does not depend on the choice of π as long as en(π)=q. It remains to prove that em is a morphism of precubical sets, i.e., it preserves the precubical maps.
Let q∈Qn, i∈{1,…,n},
π=π′siq;
then em(q)=(j(Sπ),j(Tπ)).
Since j is injective and order-preserving, we have
[TABLE]
Now let π′′=πtiti(q). A similar calculation shows that
[TABLE]
As a consequence, em is a precubical map Q→Sd.
(1)⇒(2). Let Q↪emSd be a sculpture involving Q. Consider the equivalence relation ∼em from Definition 4. Since this was defined using the functor UE then we know that it preserves the order, thus respecting property 4(1) of being a proper event identification.
The other two properties are derived using Lemma 19.
For two paths with en(π)=q=en(π′) we have (Sπ,Tπ)/∼em=L.\reflem:SpiSculptem(en(π))=em(en(π′))=L.\reflem:SpiSculpt(Sπ′,Tπ′)/∼em.
For the last property, start with em(en(π))=L.\reflem:SpiSculpt(Sπ,Tπ)/∼em=(Sπ′,Tπ′)/∼em=L.\reflem:SpiSculptem(en(π′)), and because of the injectivity of em we have en(π)=en(π′).
Since the number of equivalence relations on UE(Q)×UE(Q) is finite,
then Theorem 25 translates into an algorithm to
determine whether Q is a sculpture: First apply STπ(Q); then choose some equivalence relation on UE(Q)×UE(Q) and check whether it is a proper event identification.
The dimension m=∣UE(Q)∣ is smaller than or equal (when there is no concurrency) to the number of edges ∣Q1∣=n. Therefore, the number of relations on UE(Q) that need to be checked is 2m2<2n2, which in the worst case can be more than exponential in the number of edges of Q. For each relation we need to check both that it is an equivalence and the proper event identification properties. If we know how to pick only the equivalence relations, which are exponential in number (i.e., using the Bell numbers333See the Bell numbers sequence as https://oeis.org/A000110 in the OEIS. they are exactly (e⋅lnmm)m<Bm<(ln(m+1)0.792⋅m)m, see [BT10]) then we have to check these only for proper event identification. But we can do better by constructing a proper event identification (when it exists) while we traverse the HDA with the STπ.
In the following we give a more intuitive algorithm, using
constructions which iteratively repairSTπ(Q) by
constructing a finite sequence of increasing equivalence relations, in the end reaching a proper event identification.
For an HDA Q, using the notation of Def. 4.2, let
ρ0⊆Q×STπ(Q) be the relation
ρ0={(q,STπ(π))∣en(π)=q}.
We call this an ST-labeling, forming the composition of the first two relations from Remark 22.
For an equivalence relation ∼⊆UE(Q)×UE(Q), let
ρ∼={(q,(S,T)/∼)∣(q,(S,T))∈ρ0}.
First, the following lemma
shows that we can restrict our attention to only ST-labellings of [math]-cells
(and because of the previous results, it is enough to apply STπ only to sequential paths).
Lemma 26**.**
If ∣{σ∣(q,σ)∈ρ0}∣>1 for some q∈Qk,
k≥1, then also ∣{σ′∣(q′,σ′)∈ρ0}∣>1
for some q′∈Q0.
Proof 4.16**.**
Assume ∣{σ∣(q,σ)∈ρ0}∣>1, then there exist two different paths π,π′ ending in q s.t. (q,(Sπ,Tπ)), (q,(Sπ′,Tπ′))∈ρ0 with
Tπ=Tπ′; this being the only case since, by Proposition 16, Sπ∖Tπ=λ(en(π))=Sπ′∖Tπ′.
We can complete both π and π′ by the same sequence of t-steps from q to its upper corner, i.e., there exist
π0=πtk⋯t1q0 and
π0′=π′tk⋯t1q0,
with en(π0),en(π0′)∈Q0.
By definition Tπ0=Tπ∪λ(q) and Tπ0′=Tπ′∪λ(q), which are different, meaning that we found the state q0 for the lemma.
We can immediately rule out ST-labellings in which a cell receives
ST-configurations with different numbers of events (this would break the property 4(2) of a proper event identification in an irreparable way, cf. Lemmas 23 and 11):
Lemma 27**.**
If there is q∈Q0 and (q,(S,S)),(q,(S′,S′))∈ρ0
with ∣S∣=∣S′∣, then Q cannot be sculpted.
Proof 4.17**.**
Assume to the contrary that Q is in a sculpture with embedding
em:Q→Bn. By construction of ρ0, there
are two rooted paths π, π′ in Q which both end in q, but
with different lengths. By injectivity of em, the
images of these paths under em, here denoted
em(π) and em(π′), are paths in
Bn from the initial state to em(q). But
inside the bulk em(π) and em(π′)
are homotopic, in contradiction to them having different lengths.
We will inductively construct equivalence relations ∼n, with the
property that ∼n⊊∼n+1. This
procedure will either lead to a relation
∼N=∥ that is a proper event identification equivalence as required in Theorem 25
or to an irreparable conflict as explained below.
Let ∼1={(λ(q),λ(q))∣λ(q)∈UE(Q)},
the minimal equivalence relation on UE(Q).
If Q is a sculpture, then
∼1⊆∼em,
hence we can safely start our procedure with ∼1.
Moreover, this minimal equivalence is antisymmetric (preserving the order of Q).
Assume, inductively, that ∼n has been constructed for some
n≥1. The next lemma shows that if there are two different cells
which receive the same labeling under ρ∼n, then either Q
is not a sculpture or we need to backtrack, i.e., we would break property 4(3) since we have equated too much.
Lemma 28**.**
If there are (q,σ),(q′,σ)∈ρ∼n with
q=q′, and Q can be sculpted, then ∼n⊆∼em for any embedding em:Q↪Bk.
Proof 4.18**.**
The proof is by reductio ad absurdum; suppose that there is
an embedding for which
∼n⊆∼em. However,
since according to Proposition 20STπ(Q)/∼em produces the
same labels as ST(Q↪emBd), and since
ST labels each different cell with a different label
(because of the injectivity of the embedding), we have a
contradiction.
We construct ∼n+1 from ∼n by finding and repairing
homotopy pairs, which consist of two paths of the form
[TABLE]
The shortest homotopy pair is an interleaving, a pair of
two transitions.
Lemma 29**.**
If q∈Q0 is such that
∣{σ∣(q,σ)∈ρn}∣>1, then there exists a
homotopy pair
with final state q.
Proof 4.19**.**
We have
∣{STπ(π)∣en(π)=q}∣≥∣{σ∣(q,σ)∈ρn}∣≥2, hence at least two different rooted paths must
lead to q. These might share a common prefix π, which can also be the empty path, i.e., starting at the root.
According to Lemma 26 we look only at states, and because of Lemma 14 we can look only at sequential paths, which according to Lemma 11 the corresponding ST-configuration is formed of summing up their events, and since by Lemma 27 these have the same number of events, the paths have the same length.
Now if the homotopy pair is an interleaving
πseatvsebtq,
πsectv′sedtq, then we must repair by identifying
λ(ea) with λ(ed) and λ(ec) with λ(eb). If it
is not, then there are several choices for identifying events, and
some of them may lead into situations like in Lemma 28. Let τ be any permutation on
{1,…,n} with
τ(1)=1 and τ(n)=n, then we can identify λ(ei) with λ(eτ(i)′)
for all i=1,…,n.
The restriction on the permutation is imposed by
the fact that we only identify transitions that can possibly be
concurrent, which is not the case for two transitions starting
from, or ending in, the same cell.
Let ∼n+1⊋∼n be the
equivalence relation thus generated which should still be antisymmetric (otherwise choose another permutation).
As this inclusion is proper, it
is clear that the described process either stops with a
Lemma 28 situation, which cannot be
resolved without backtracking, or with a relation ρN which
satisfies Theorem 25.
{exa}
We give an example to illustrate why backtracking might be necessary
when applying the algorithm. Figure 11 is a
variation of the example in Figure 8 which, as the
labeling on the top right shows, can be sculpted. However, if
we start our procedure by resolving the homotopy pair on the
left in a “wrong” way, see the bottom of the figure, then we get
into a contradiction in the top right corner and must backtrack.
Remark 30**.**
In conclusion, our final algorithm has the following steps:
(1)
Traverse the HDA using the STπ, but because of Lemma 26 we can restrict to only states from Q0, and because of Lemmas 12 and 4.4 we can look only at sequential paths. This means that applying STπ is like traversing the graph formed of the Q0∪Q1. This forms the ρ0.
2. (2)
During the graph traversal, at each state check the Lemma 27 in constant time.
The algorithm can stop here if the check does not succeed.
3. (3)
Form the minimal equivalence relation on UE(Q), called ∼1 which produces the coarser labeling ρ1. This is the same way as the definition of proper event identification starts, i.e., with an equivalence relation on UE(Q). To build ∼1 we need to also traverse all the concurrency 2-cells from Q2.
4. (4)
Check in each state the Lemma 28 in constant time.
The algorithm can stop here if the check for ρ1 does not succeed.
5. (5)
Traverse one more time the graph formed of the Q0∪Q1 to find any homotopy pair, as in Lemma 29.
(a)
For each homotopy pair add more equivalences to the previous ρn resulting from choosing one of the permutations of the transitions of this pair, as explained before.
2. (b)
For all states that have their ST-labels changed by the new equated transitions, check again the Lemma 28.
If the check fails, then either backtrack and try another permutation, or the algorithm stops.
3. (c)
For each homotopy pair we may need to try out all the possible permutations, which are (k−1)!, with k the length of the homotopy pair.
The complexity of this simple algorithm is mostly influenced by the backtracking that needs to be done for each homotopy pair in step (5).
Therefore, the complexity increases with the number of homotopy pairs that exist in the graph, their respective lengths, and the amount of relabeling which triggers checking of Lemma 28. Note that the less concurrency is in the HDA, the more homotopy pairs might exist, which at the same time reduces the amount of work done in step (3), since this decreases with the decrease in amount of concurrency. The length of the homotopy pairs contributes the most, since this induces a factorial amount of backtracking. For the minimal homotopy pair of length 2 (the interleaving square) there is only one choice of permutation. Whereas, the worst case is for a 1-dimensional HDA consisting of a single homotopy pair of length ∣Q1∣/2.
Calculating precisely the complexity is left as future work, the same as finding more efficient algorithms (e.g., how to combine all into a single traversal).
5. Euclidean Cubical Complexes are Sculptures
This section provides a connection between the combinatorial
intuition of sculptures and the geometric intuition of Euclidean
HDA.
It thus gives a concrete way of identifying precisely the events
that a grid imposes on any of its subsets. This is how several works
on deadlock detection model their studied systems, as “grids with
holes”, which are geometric sculptures in our terminology.
We give below only strictly necessary definitions, and one is kindly pointed to [Gra09, FGH*+*16]
for background in directed topology.
Directed topological spaces
A directed topological space, or d-space, is a pair
(X,\oldvecPX) consisting of a topological space X and a set
\oldvecPX⊆XI of directed paths in X which contains
all constant paths and is closed under concatenation, monotone
reparametrization, and subpath.
Prominent examples of d-spaces are the directed interval
\oldvecI=[0,1] with the usual ordering and its cousins, the directed
n-cubes \oldvecIn for n≥0. Similarly, we have the directed
Euclidean spaces \oldvec\mathbbmRn, with the usual ordering, for n≥0.
Morphisms f:(X,\oldvecPX)→(Y,\oldvecPY) of d-spaces are those
continuous functions that are also directed, that is, satisfy
f∘γ∈\oldvecPY for all γ∈\oldvecPX. It can be
shown that for an arbitrary d-space (X,\oldvecPX),
\oldvecPX=X\oldvecI.
Geometric realization
The geometric realization of a precubical set Q is the
d-space
∣Q∣=⨆n≥0Qn×\oldvecIn/∼,
where the equivalence relation ∼ is generated by
[TABLE]
(Technically, this requires us to define disjoint unions and quotients
of d-spaces, but there is nothing surprising about these definitions,
see [Fah05b].)
Geometric realization is naturally extended to morphisms of
precubical sets: if f:Q→R is a precubical morphism, then
∣f∣:∣Q∣→∣R∣ is the directed map given by
∣f∣(q,(u1,…,un))=(f(q),(u1,…,un)). Geometric
realization then becomes a functor from the category of precubical
sets to the category of d-spaces.
Euclidean Precubical Sets
Intuitively, a precubical set is Euclidean if its geometric
realization can be embedded into a hypercube lattice in some
\oldvec\mathbbmRd. We make this precise below.
{defi}
A non-selflinked precubical set Q with dimQ=d<∞ is a
grid if there exist M1,…,Md∈\mathbbmN and a bijection
Φ:{1,…,M1}×⋯×{1,…,Md}→Qd, such that for all k∈{1,…,d} and all
(i1,…,id)∈{1,…,M1}×⋯×{1,…,Mk−1}×{1,…,Mk−1}×{1,…,Mk+1}×⋯×{1,…,Md},
[TABLE]
and there are no other face relations between cubes in Q.
Hence a grid is a product444Technically, a tensor
product, see [Fah05b]. of long intervals:
one-dimensional precubical sets with 1-cells 1,…,Mj which
are connected such that the upper face of Mi is the lower face of
Mi+1 for all i=1,…,j−1. Figure 12 shows
an example of a two-dimensional grid with M1=4 and M2=2. The
geometric realization of a grid is a subdivided cube: it can be
embedded into \oldvec\mathbbmRd as the product of intervals
[0,M1]×⋯×[0,Md].
{defi}
A precubical set Q is Euclidean if there exists a grid G
and an embedding Q↪G.
Intuitively, these are precisely the “geometric sculptures” referred
to in the introduction: subcomplexes of subdivided cubes. The next
theorem shows that geometric sculptures and combinatorial
sculptures are the same.
Theorem 31**.**
A precubical set can be sculpted iff it is Euclidean.
Proof 5.1**.**
First off, any bulk is a grid, hence any sculpture can be embedded
into a grid.
For the reverse direction, it suffices to show that any grid is a
sculpture.
Consider a grid of dimension d with M1,…,Md as the
number of grid positions in any dimension. We develop a naming
scheme using Chu-style labels as in the canonical naming of bulks
from Section 3. We use the following list of
events:
(e11,…,e1M1,e21,…,e2M2,…,ed1,…,edMd) and to each event we give values
from {0,\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture,1}. The tuples have dimension
m=∑1≤i≤dMi. Construct the bulk Bm of
dimension m using the canonical naming starting with the m-tuple
of the events ordered as above containing only values.
Each d-cell of Xd is identified by one of the grid cells
(i.e., the bijection of the grid) as a d-tuple of indices
(i1,…,id) to which we give an m-tuple label
constructed as follows:
[TABLE]
for 1≤k≤d.
We then label all the faces of each d-cell with the canonical naming
starting from the above. This face labeling is consistent with the
face equality restrictions (3) of the grid. Indeed, take
two d-cells of the grid that have faces equated, i.e., pick two d-tuples
differing in only one index (…,ik,…) and
(…,ik+1,…) which are named by the m-tuples
(…,1,ekik=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture,0,…) respectively
(…,1,1,ekik+1=\leavevmodeto7.29pt\vboxto4.71pt\pgfpicture\makeatletter\lower-0.2ptto0.0pt\pgfsys@beginscope\pgfsys@invoke\definecolorpgfstrokecolorrgb0,0,0\pgfsys@color@rgb@stroke000\pgfsys@invoke\pgfsys@color@rgb@fill000\pgfsys@invoke\pgfsys@setlinewidth0.4pt\pgfsys@invoke\nullfontto0.0pt\pgfsys@beginscope\pgfsys@invoke\pgfsys@moveto0.0pt0.0pt\pgfsys@lineto3.44443pt0.0pt\pgfsys@lineto3.44443pt4.30554pt\pgfsys@lineto6.88885pt4.30554pt\pgfsys@stroke\pgfsys@invoke\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\pgfsys@discardpath\pgfsys@invoke\lxSVG@closescope\pgfsys@endscope\hss\lxSVG@closescope\endpgfpicture,…) called qdik
respectively qdik+1. The face maps are named as:
tk(qdik)=(…,1,ekik=1,0,…) and
sk(qdik+1)=(…,1,1,ekik+1=0,…) which are
the same, thus the equality (3) is respected.
Using the above naming, it is easy to construct an embedding from the grid (M1,…,Md) into the bulk Bm: it maps each cell of the grid named by some m-tuple into the cell from the bulk that has the same name.
All the cells are uniquely named in the grid, and thus the mapping is correctly defined.
6. Conclusion
Using a precise definition of sculptures as higher-dimensional
automata (HDA), we have shown that sculptures are isomorphic to
regular ST-structures and also to regular Chu spaces. This nicely
captures Pratt’s event-state duality [Pra92]. We have
also shown that sculptures are isomorphic to Euclidean cubical
complexes, providing a link between geometric and combinatorial
approaches to concurrency.
We have made several claims in the introduction about HDA that can or
cannot be sculpted. We sum these up in the next theorem; detailed
proofs are in Appendix B.
Theorem 32**.**
(1)
There are acyclic HDA
which cannot be sculpted.
2. (2)
There is an HDA which cannot be sculpted, but whose unfolding
can be sculpted.
3. (3)
There is an HDA which can be sculpted, but whose unfolding
cannot be sculpted.
4. (4)
There is an HDA which can be sculpted and whose unfolding can be sculpted.
5. (5)
There is an HDA which cannot be sculpted and whose unfolding
cannot be sculpted.
The HDA from Figs. 2 (right)
and 5 are acyclic but cannot be sculpted. It
is enough to apply the minimal equivalence of the decision algorithm
to obtain two cells with the same ST-label, cf. Lemma 28. This proves part (1) of the theorem.
Both these examples are also their own unfoldings, which proves
part (5). Part (2) is proven by the triangle in
Figure 4, which cannot be sculpted due to
Lemma 27. For part (4) we can use the
triangle’s unfolding and the fact that this is its own unfolding.
Part (3) is proven by Figure 2.
Finally, also the one-dimensional HDA from Figure 8 cannot be sculpted.
There are several interleaving squares (Lemma 29), so
the algorithm has to identify all transitions labeled a, which leads
to a contradiction à la Lemma 28.
Acknowledgements
The authors are grateful to Lisbeth Fajstrup, Samuel Mimram and
Emmanuel Haucourt for multiple fruitful discussions on the subject
of this paper, and to Martin Steffen and Olaf Owe for help with an
early version of this paper.
Appendix A Ordered precubical sets
Fix a consistent precubical set Q and an order <ev on the set UE(Q) of universal labels of Q. For every n>0 and every n–cell q∈Qn let σ(q):{1,…,n}→{1,…,n} be the unique permutation such that
[TABLE]
Let Q′ be a precubical set that has the same cells as Q, i.e., Qn′=Qn for all n≥0, and face maps given by
[TABLE]
It remains to check that the face maps si′ and ti′ satisfy the precubical relations.
Define functions di:{1,…,n−1}→{1,…,n}:
[TABLE]
Lemma 33**.**
Let Qn, n≥0 be a family of sets and for every n let si,ti:Qn→Qn−1, i∈{1,…,n} be maps. The following conditions are equivalent:
•
The maps si,ti satisfy the precubical relations (i.e., Qn with the maps si,ti form a precubical set);
•
αiβj=βkαl* for α,β∈{s,t} and all integers i,j,k,l such that {dj(i),j}={dl(k),l}.*
Proof A.1**.**
The latter condition is satisfied only when (i,j,k,l)=(i,j,i,j) (for any i,j) or when (i,j,k,l)=(i,j,j−1,i)\mboxor(j−1,i,i,j) (for i<j).
Lemma 34**.**
For q∈Qn, α∈{s,t} and k∈{1,…,n}
[TABLE]
Proof A.2**.**
Both maps have the same image {1,…,n}∖{σ(q)(k)} so it is enough to show that they both are increasing. The compositions of both sides with λ(q), which when seen as a function from {1…n}→UE(Q), it is increasing, are
[TABLE]
and
[TABLE]
They are increasing since λ(x)∘σ(x) is increasing for all x.
The equation above follows from Lemma 1.(1).
Lemma 35**.**
The maps si′ and ti′ satisfy the precubical relations.
Proof A.3**.**
We will use the criterion in Lemma 33.
Choose i,j,k,l such that (dj(i),j)=(l,dl(k)). We have
The two first examples of the theorem are 2-dimensional HDAs which are also their own history unfoldings.
To show that the broken box cannot be sculpted (refer to Figure 14 for annotations) we apply the labeling strategy described in Section 4.
First we apply the unfolding procedure STπ and for the two problematic corner states q01 and q02 we obtain the following ST-configurations STπ(π1)=({q11,q14},{q11,q14}) respectively STπ(π2)=({q12,q13},{q12,q13}), where π1 is the lower rooted path ending in q01 and π2 is the other lower path ending in q02.
The second step is to apply the minimal equivalence ∼ev, since this is required for any HDA. Applying ∼ev on our example equates q11∼evq13 because of the three squares: front, top, back, which share horizontal faces. (Transitivity of the equivalence was applied.)
The same argument equates q12∼evq14, this time going through the squares left-side, top, right-side.
We now see that through ρ∼ev we have labeled both q01 and q02 with the same label ({[q12],[q13]},{[q12],[q13]}), made of equivalence classes.
However, for a sculpture we cannot have two cells labeled the same.
Showing that the example of Fig. 5 is similar and is enough to look at the transitions labeled with d. After applying the minimal equivalence the first two lower states where the lower d-transitions (call these q11 and q12) end are labeled with ([q11],[q11]) and ([q12],[q12]). But these are equated by the minimal equivalence due to the two squares that share the upper d-transition.
The example from Fig. 8 is a one-dimensional acyclic HDA that cannot be sculpted (refer to Figure 14 for annotations used in this argument), which also shows that no two-dimensional structure is needed
for things to turn problematic: already in dimension 1 there are acyclic HDA which cannot be sculpted.
Our algorithm detects this without using the minimal equivalence ∼ev, because this is not applicable for this example.
However, there are several homotopy pairs of length 2, i.e., called interleaving squares.
Each interleaving square forces the equating of their parallel transitions. In this example, the horisontal transitions of the inner interleaving square, as well as the two ones (upper and lower) connected to it equate the four transition cells that we named b1∼b2∼b3∼b4. Similarly, we must equate the vertical transitions of the inner interleaving square, and the two (left and right) connected to it, making c1∼c2∼c3∼c4.
Now the four outer interleaving squares that we already treated the b and c transitions have in common the parallel transitions labeled by a1∼a2∼a3∼a4∼a5.
This necessary equivalence
makes the two states connected with a dashed line to be identified because they now receive the same ST-configuration as label ({[a1],[b1],[c1]},{[a1],[b1],[c1]}), which cannot be. Moreover, there is no backtracking possible because for the interleaving squares there is only one possible way to equate their transitions; unlike for longer homotopy pairs where we can try several possible equating alternatives, as it was the case in Example 4 with Figure 11.
Bibliography39
The reference list from the paper itself. Each links out to its DOI / PubMed record.
1[AKPN 15] Youssef Arbach, David Karcher, Kirstin Peters, and Uwe Nestmann. Dynamic causality in event structures. In Formal Techniques for Distributed Objects, Components, and Systems - 35th IFIP WG 6.1 International Conference, FORTE 2015, Proceedings , volume 9039 of Lecture Notes in Computer Science , pages 83–97. Springer-Verlag, 2015.
2[Bre 93] Glen E. Bredon. Topology and Geometry . Springer-Verlag, 1993.
3[BT 10] Daniel Berend and Tamir Tassa. Improved bounds on Bell numbers and on moments of sums of random variables. Probability and Mathematical Statistics , 30(2):185–205, 2010.
4[Cle 92] Rance Cleaveland, editor. CONCUR ’92, Third International Conference on Concurrency Theory, Stony Brook, NY, USA, August 24-27, 1992, Proceedings , volume 630 of Lecture Notes in Computer Science . Springer-Verlag, 1992.
5[DGG 15] Jérémy Dubut, Eric Goubault, and Jean Goubault-Larrecq. Natural homology. In Magnús M. Halldórsson, Kazuo Iwama, Naoki Kobayashi, and Bettina Speckmann, editors, Automata, Languages, and Programming - 42nd International Colloquium, ICALP 2015, Proceedings, Part II , volume 9135 of Lecture Notes in Computer Science , pages 171–183. Springer-Verlag, 2015.
6[Dub 19] Jérémy Dubut. Trees in partial higher dimensional automata. In Mikolaj Boja’nczyk and Alex Simpson, editors, Foundations of Software Science and Computation Structures - 22nd International Conference, FOSSACS 2019, Proceedings , volume 11425 of Lecture Notes in Computer Science , pages 224–241. Springer-Verlag, 2019.
7[Fah 05a] Ulrich Fahrenberg. A category of higher-dimensional automata. In Vladimiro Sassone, editor, Foundations of Software Science and Computational Structures, 8th International Conference, FOSSACS 2005, Proceedings , volume 3441 of Lecture Notes in Computer Science , pages 187–201. Springer-Verlag, 2005.
8[Fah 05b] Ulrich Fahrenberg. Higher-Dimensional Automata from a Topological Viewpoint . Ph D thesis, Aalborg University, 2005.