Skip to main content
Log in

Step traces

  • Original Article
  • Published:
Acta Informatica Aims and scope Submit manuscript

Abstract

In the classical Mazurkiewicz trace approach the behaviour of a concurrent system is described in terms of sequential observations that differ only with respect to their ordering of independent actions. This paper investigates an extension of the trace model to the case that actions can be observed as occurring simultaneously. Thus observations are sequences of steps, i.e., sets of actions. This leads to a step trace model based on three relations between events: simultaneity, serialisability, and interleaving. Whereas the underlying causal structures of traces are based on dependencies between actions leading to a partial order interpretation, more general causal structures are needed to describe the invariant relationships between the action occurrences in a step trace. We present a complete picture including dependence structures extending dependence graphs, and a characterisation of step traces in terms of invariant order structures.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. Note that \({\mathsf {os2soss}}({ ios })\ne \varnothing \) holds by Proposition 11.

References

  1. Baldan, P., Busi, N., Corradini, A., Pinna, G.M.: Domain and event structure semantics for Petri nets with read and inhibitor arcs. Inf. Comput. 323, 129–189 (2004)

    MathSciNet  MATH  Google Scholar 

  2. Biermann, I., Rozoy, B.: Reliable generalized and context dependent commutation relations. In: TAPSOFT’97, Lecture Notes in Computer Science, vol. 1214, pp. 165–176. Springer, Berlin (1997)

  3. Busi, N., Pinna, G.M.: Process semantics for place/transition nets with inhibitor and read arcs. Fundam. Inform. 40(2–3), 165–197 (1999)

    MathSciNet  MATH  Google Scholar 

  4. Clerbout, M.: Commutations partielles et familles de langages. Ph.D. thesis, University of Lille (1984)

  5. Diekert, V., Gastin, P., Petit, A.: Recognizable complex trace languages. In: MFCS 1991, Lecture Notes in Computer Science, vol. 520, pp. 131–140. Springer, Berlin (1991)

  6. Diekert, V., Rozenberg, G. (eds.): The Book of Traces. World Scientific, Singapore (1995)

    Google Scholar 

  7. Gaifman, H., Pratt, V.R.: Partial order models of concurrency and the computation of functions. In: LICS, pp. 72–85. IEEE Computer Society, Silver Spring, MD (1987)

  8. Gastin, P.: Infinite traces. In: Semantics of Systems of Concurrent Processes 1990, Lecture Notes in Computer Science, vol. 469, pp. 277–308. Springer, Berlin (1990)

  9. Hoogeboom, H.J., Rozenberg, G.: Dependence graphs. In: Diekert, V., Rozenberg, G. (eds.) The Book of Traces, pp. 43–67. World Scientific, Singapore (1995)

    Chapter  Google Scholar 

  10. Hoogers, P.W., Kleijn, H.C.M., Thiagarajan, P.S.: A trace semantics for Petri nets. Inf. Comput. 117(1), 98–114 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  11. Hung, D.V., Knuth, E.: Semi-commutations and Petri nets. Theor. Comput. Sci. 64, 67–81 (1989)

    Article  MATH  Google Scholar 

  12. Janicki, R., Kleijn, J., Koutny, M., Mikulski, Ł.: Causal structures for general concurrent behaviours. In: M.S. Szczuka, L. Czaja, M. Kacprzak (eds.) CS&P, CEUR Workshop Proceedings, vol. 1032, pp. 193–205. CEUR-WS.org (2013)

  13. Janicki, R., Kleijn, J., Koutny, M., Mikulski, Ł.: Generalising traces. TR-CS 1436, Newcastle University (2014)

  14. Janicki, R., Kleijn, J., Koutny, M., Mikulski, Ł.: Characterising concurrent histories. Fundam. Inform. 139, 21–42 (2015)

    Article  MathSciNet  Google Scholar 

  15. Janicki, R., Kleijn, J., Koutny, M., Mikulski, L.: Order structures for subclasses of generalised traces. In: LATA 2015, Lecture Notes in Computer Science, vol. 8977, pp. 689–700. Springer, Berlin (2015)

  16. Janicki, R., Koutny, M.: Invariants and paradigms of concurrency theory. In: PARLE 1991, Lecture Notes in Computer Science, vol. 506, pp. 59–74. Springer, Berlin (1991)

  17. Janicki, R., Koutny, M.: Structure of concurrency. Theor. Comput. Sci. 112(1), 5–52 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  18. Janicki, R., Koutny, M.: Semantics of inhibitor nets. Inf. Comput. 123(1), 1–16 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  19. Janicki, R., Le, D.T.M.: Modelling concurrency with comtraces and generalized comtraces. Inf. Comput. 209(11), 1355–1389 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  20. Janicki, R., Yin, X., Zubkova, N.: Modeling interval order structures with partially commutative monoids. In: CONCUR 2012, Lecture Notes in Computer Science, vol. 7454, pp. 425–439. Springer, Berlin (2012)

  21. Juhás, G., Lorenz, R., Mauser, S.: Causal semantics of algebraic Petri nets distinguishing concurrency and synchronicity. Fundam. Inform. 86(3), 255–298 (2008)

    MATH  Google Scholar 

  22. Juhás, G., Lorenz, R., Mauser, S.: Complete process semantics of Petri nets. Fundam. Inform. 87(3–4), 331–365 (2008)

    MATH  Google Scholar 

  23. Juhás, G., Lorenz, R., Neumair, C.: Synthesis of controlled behavior with modules of signal nets. In: ICATPN 2004, Lecture Notes in Computer Science, vol. 3099, pp. 238–257. Springer, Berlin (2004)

  24. Kleijn, J., Koutny, M.: Formal languages and concurrent behaviours. In: Enguix, G.B., Jiménez-López, M.D., Martín-Vide, C. (eds.) New Developments in Formal Languages and Applications, Studies in Computational Intelligence, vol. 113, pp. 125–182. Springer, Berlin (2008)

    Google Scholar 

  25. Kleijn, J., Koutny, M.: Mutex causality in processes and traces of general elementary nets. Fundam. Inform. 122(1–2), 119–146 (2013)

    MathSciNet  MATH  Google Scholar 

  26. Kuske, D., Morin, R.: Pomsets for local trace languages—recognizability, logic & Petri nets. In: CONCUR 2000, Lecture Notes in Computer Science, vol. 1877, pp. 426–441. Springer, Berlin (2000)

  27. Lamport, L.: The mutual exclusion problem: part I—a theory of interprocess communication. J. ACM 33(2), 313–326 (1986)

    Article  MathSciNet  MATH  Google Scholar 

  28. Le, D.T.M.: On three alternative characterizations of combined traces. Fundam. Inform. 113(3–4), 265–293 (2011)

    MATH  Google Scholar 

  29. Mazurkiewicz, A.: Concurrent program schemes and their interpretations. DAIMI Rep. PB 78, Aarhus University (1977)

  30. Mazurkiewicz, A.W.: Trace theory. In: Petri Nets: Central Models and Their Properties, Advances in Petri Nets 1986, Part II, Lecture Notes in Computer Science, vol. 255, pp. 279–324. Springer, Berlin (1987)

  31. Mazurkiewicz, A.W.: Basic notions of trace theory. In: J.W. de Bakker, W.P. de Roever, G. Rozenberg (eds.) REX Workshop, Lecture Notes in Computer Science, vol. 354, pp. 285–363. Springer, Berlin (1988)

  32. Mikulski, Ł., Koutny, M.: Folded Hasse diagrams of combined traces. Inf. Process. Lett. 114(4), 208–216 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  33. Nielsen, M., Plotkin, G.D., Winskel, G.: Petri nets, event structures and domains. Part I. Theor. Conput. Sci. 13, 85–108 (1981)

    Article  MathSciNet  MATH  Google Scholar 

  34. Penczek, W., Kuiper, R.: Traces and logic. In: Diekert, V., Rozenberg, G. (eds.) The Book of Traces, pp. 307–390. World Scientific, Singapore (1995)

    Chapter  Google Scholar 

  35. Pratt, V.: Modeling concurrency with partial orders. Int. J. Parallel Program 15(1), 33–71 (1986)

    Article  MathSciNet  MATH  Google Scholar 

  36. Reinhardt, K.: On the synchronization of semi-traces. In: Fundamentals of Computation Theory, Lecture Notes in Computer Science, vol. 965, pp. 393–403. Springer, Berlin (1995)

  37. Rozenberg, G., Engelfriet, J.: Elementary net systems. In: Lectures on Petri Nets I: Basic Models, Lecture Notes in Computer Science, vol. 1491, pp. 12–121. Springer, Berlin (1998)

  38. Shields, M.: Adequate path expressions. In: G. Kahn (ed.) Semantics of Concurrent Computation, Lecture Notes in Computer Science, vol. 70, pp. 249–265. Springer, Berlin (1979)

  39. Szpilrajn, E.: Sur l’extension de l’ordre partiel. Fundam. Math. 16, 386–389 (1930)

    MATH  Google Scholar 

  40. Thiagarajan, P., Walukiewicz, I.: An expressively complete linear time temporal logic for Mazurkiewicz traces. Inf. Comput. 179(2), 230–249 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  41. Vogler, W.: A generalization of trace theory. RAIRO Infornatique théorique et applications 25(2), 147–156 (1991)

    MathSciNet  MATH  Google Scholar 

  42. Vogler, W.: Partial order semantics and read arcs. Theor. Comput. Sci. 286(1), 33–63 (2002)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Acknowledgments

We are grateful to the reviewers for their useful comments and suggestions. This research was supported by Epsrc (Uncover project), the Polish National Science Center (Grant No. 2013/09/D/ST6/03928), and Nserc of Canada.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Maciej Koutny.

Appendices

Appendix: Proofs of Section 3

Proof of Proposition 1

Follows from the fact that \({\mathsf {ser}}\subseteq {\mathsf {sim}}\), and so if we consider an equation \(AB=_\psi A\cup B\) with \(A,B\in {\mathbb {S}}_\psi \), we have that \(A\cup B\in {\mathbb {S}}_\psi \). \(\square \)

Proof of Proposition 2

Follows from the fact that for an equation \(AB=_\psi A\cup B\) with \(A,B\in {\mathbb {S}}_\psi \), we have that \(A\cup B\subseteq {\mathsf {sim}}\). \(\square \)

Proof of Theorem 1

We first show that the mappings \({\mathsf {sa2gca}}\) and \({\mathsf {gca2sa}}\) are well-defined. Let \(\psi =\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {inl}},{\mathsf {ser}}\right\rangle \in \varPsi \). Then \( {\mathsf {sa2gca}}(\psi )=\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {inl}}\cup {\mathsf {ser}}\right\rangle \in \varTheta \). Indeed, \({\mathsf {inl}}\cup {\mathsf {ser}}\) is clearly irreflexive. Moreover, by \({\mathsf {ser}}\subseteq {\mathsf {sim}}\) and \({\mathsf {inl}}\cap {\mathsf {sim}}=\emptyset \), \(({\mathsf {inl}}\cup {\mathsf {ser}}){\setminus }{\mathsf {sim}}={\mathsf {inl}}{\setminus }{\mathsf {sim}}={\mathsf {inl}}\). Hence \(({\mathsf {inl}}\cup {\mathsf {ser}}){\setminus }{\mathsf {sim}}\) is symmetric as \({\mathsf {inl}}\) is.

Now, let \(\theta =\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {seq}}\right\rangle \in \varTheta \). Then

$$\begin{aligned} {\mathsf {gca2sa}}(\theta ) = \left\langle \varSigma ,{\mathsf {sim}},\left( {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\right) {\setminus }{\mathsf {sim}},{\mathsf {seq}}\cap {\mathsf {sim}}\right\rangle \in \varPsi \;. \end{aligned}$$

Indeed, \(({\mathsf {seq}}\cap {\mathsf {seq}}^{-1}){\setminus }{\mathsf {sim}}\) and \({\mathsf {seq}}\cap {\mathsf {sim}}\) are clearly irreflexive, \(({\mathsf {seq}}\cap {\mathsf {seq}}^{-1}){\setminus }{\mathsf {sim}}\) is symmetric, and \({\mathsf {seq}}\cap {\mathsf {sim}}\subseteq {\mathsf {sim}}\). Moreover, \((({\mathsf {seq}}\cap {\mathsf {seq}}^{-1}){\setminus }{\mathsf {sim}})\cap {\mathsf {sim}}=\varnothing \).

To show that the mappings are inverse bijections, we show that

$$\begin{aligned} {\mathsf {gca2sa}}\circ {\mathsf {sa2gca}}(\psi )=\psi ~~\text{ and }~~ {\mathsf {sa2gca}}\circ {\mathsf {gca2sa}}(\theta )=\theta \;, \end{aligned}$$

for all \(\psi =\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {inl}},{\mathsf {ser}}\right\rangle \in \varPsi \) and \(\theta =\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {seq}}\right\rangle \in \varTheta \). Indeed, we have that

where the last equality follows from

$$\begin{aligned}&\left( \left( {\mathsf {inl}}\cup {\mathsf {ser}}\right) \cap ({\mathsf {inl}}\cup {\mathsf {ser}})^{-1}\right) {\setminus }{\mathsf {sim}}\\&\quad = \left( \left( {\mathsf {inl}}\cap {\mathsf {inl}}^{-1}\right) \cup \left( {\mathsf {ser}}\cap {\mathsf {inl}}^{-1}\right) \cup \left( {\mathsf {inl}}\cap {\mathsf {ser}}^{-1}\right) \cup \left( {\mathsf {ser}}\cap {\mathsf {ser}}^{-1}\right) \right) {\setminus }{\mathsf {sim}}\\&\quad = \left( {\mathsf {inl}}\cap {\mathsf {inl}}^{-1}\right) {\setminus }{\mathsf {sim}}\cup \left( {\mathsf {ser}}\cap {\mathsf {ser}}^{-1}\right) {\setminus }{\mathsf {sim}}= {\mathsf {inl}}\cap {\mathsf {inl}}^{-1} = {\mathsf {inl}}\end{aligned}$$

and the symmetry of \({\mathsf {inl}}\), \({\mathsf {sim}}\cap {\mathsf {inl}}=\varnothing \), and \({\mathsf {ser}}\subseteq {\mathsf {sim}}\), as well as

$$\begin{aligned} \left( {\mathsf {inl}}\cup {\mathsf {ser}}\right) \cap {\mathsf {sim}}= \left( {\mathsf {inl}}\cap {\mathsf {sim}}\right) \cup \left( {\mathsf {ser}}\cap {\mathsf {sim}}\right) = {\mathsf {ser}}\cap {\mathsf {sim}}\end{aligned}$$

and \({\mathsf {ser}}\subseteq {\mathsf {sim}}\). We then observe that

$$\begin{aligned} {\mathsf {sa2gca}}\circ {\mathsf {gca2sa}}(\theta ) \!= & {} \! {\mathsf {sa2gca}}\left( \left\langle \varSigma ,{\mathsf {sim}},\left( {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\right) {\setminus }{\mathsf {sim}},{\mathsf {seq}}\cap {\mathsf {sim}}\right\rangle \right) \\ \!= & {} \! \left\langle \varSigma ,{\mathsf {sim}},\left( \left( {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\right) {\setminus }{\mathsf {sim}}\right) \cup \left( {\mathsf {seq}}\cap {\mathsf {sim}}\right) \right\rangle \!=\! \left\langle \varSigma ,{\mathsf {sim}},{\mathsf {seq}}\right\rangle \,, \end{aligned}$$

where the last equality follows from

$$\begin{aligned} (({\mathsf {seq}}\cap {\mathsf {seq}}^{-1}){\setminus }{\mathsf {sim}})\cup ({\mathsf {seq}}\cap {\mathsf {sim}})= & {} (({\mathsf {seq}}{\setminus }{\mathsf {sim}})\cap ({\mathsf {seq}}^{-1}{\setminus }{\mathsf {sim}})))\cup ({\mathsf {seq}}\cap {\mathsf {sim}}) \\= & {} ({\mathsf {seq}}{\setminus }{\mathsf {sim}})\cup ({\mathsf {seq}}\cap {\mathsf {sim}}) = {\mathsf {seq}}\end{aligned}$$

and \({\mathsf {seq}}{\setminus }{\mathsf {sim}}={\mathsf {seq}}{\setminus }{\mathsf {sim}}\cap {\mathsf {seq}}^{-1}{\setminus }{\mathsf {sim}}\) which holds because \({\mathsf {seq}}{\setminus }{\mathsf {sim}}\) is symmetric.

To prove that \({\mathsf {sa2gca}}\) and \({\mathsf {gca2sa}}\) are trace-preserving, it suffices to show that \({\mathsf {STR}}_{{\mathsf {sa2gca}}(\psi )}={\mathsf {STR}}_\psi \), for every \(\psi =\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {inl}},{\mathsf {ser}}\right\rangle \in \varPsi \).

Let \({\mathsf {sa2gca}}(\psi )=\left\langle \varSigma ,{\mathsf {sim}},{\mathsf {seq}}\right\rangle \). Then, clearly \({\mathbb {S}}_{{\mathsf {sa2gca}}(\psi )}={\mathbb {S}}_\psi \). Moreover, \({\mathsf {seq}}\cap {\mathsf {sim}}={\mathsf {ser}}\cap {\mathsf {sim}}={\mathsf {ser}}\) as we have \({\mathsf {inl}}\cap {\mathsf {sim}}=\varnothing \) and \({\mathsf {ser}}\subseteq {\mathsf {sim}}\), and so the serialisability equations induced by the two alphabets are the same. The interleaving equations are also the same, as we have:

Hence \(\psi \) and \({\mathsf {sa2gca}}(\psi )\) induce the same equations over \({\mathbb {S}}_{{\mathsf {sa2gca}}(\psi )}^*={\mathbb {S}}_\psi ^*\). We can therefore conclude that \({\mathsf {STR}}_{{\mathsf {sa2gca}}(\psi )}={\mathsf {STR}}_\psi \). \(\square \)

Proofs of Section 4

Proof of Proposition 3

Let \({ rs }=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \) be a separable label-ordered relational structure. Suppose that \(a\in \varSigma \) and \(x,y,z\in \ell ^{-1}(a)\) and \(x\prec z\prec y\). First, we observe that \(x\ne y\) since otherwise we would obtain a contradiction with the separability of \({ rs }\). Hence by \({ rs }\) being label-ordered, we have \(x\prec ^{ sym }y\). If \(y\prec x\), we again obtain a contradiction with the separability of \({ rs }\). Hence \(x\prec y\). \(\square \)

Proof of Proposition 4

Let \({ rs }\sim _\kappa { rs }'\) be isomorphic label-linear relational structures, and let \(a\in \varSigma \). By the label-preservation of \(\kappa \), \(\kappa \) is a bijection between \(\ell ^{-1}_{ rs }(a)\) and \(\ell ^{-1}_{{ rs }'}(a)\). Hence, by the label-linearity of \({ rs }\), \(\kappa \) restricted to \(\ell ^{-1}_{ rs }(a)\) is unique. \(\square \)

Proof of Proposition 5

(1) By Eq. (1), \({ rs }'\vartriangleleft {\mathsf {cls}}({ rs }')\). Moreover, \({ rs }'\vartriangleleft { rs }'\) and so, by Eq. (2), \({\mathsf {cls}}({ rs }')\vartriangleleft { rs }'\). Hence \({ rs }'\vartriangleleft {\mathsf {cls}}({ rs }')\vartriangleleft { rs }'\), and so \({\mathsf {cls}}({ rs }')={ rs }'\).

(2) Let \({ rs }''\in {\mathsf {F}}'\). We need to show that \({ rs }\vartriangleleft { rs }''\) iff \({\mathsf {cls}}({ rs })\vartriangleleft { rs }''\). The left-to-right implication follows from Eq. (2). Moreover, the right-to-left implication follows from Eq. (1). \(\square \)

Proof of Proposition 7

Clearly, \(\prec _{\bigcap { rss }}^a\subseteq \prec _{ rs }^a\). Moreover, \(\prec _{ rs }^a\subseteq \prec _{\bigcap { rss }}^a\) as otherwise \(\prec _{\bigcap { rss }}^a\) would not be a total order relation (note that \(\prec _{ rs }^a\) is a total order relation). \(\square \)

Proof of Proposition 8

(\(\Longrightarrow \)) Follows from the definition of isomorphism between \({ rss }\) and \({ rss }'\).

(\(\Longleftarrow \)) First, we observe that all relational structures within \({ rss }\) (and also within \({ rss }'\)) are non-isomorphic. Indeed, suppose that \({ rs }\sim _\kappa { rs }'\), for some \({ rs },{ rs }'\in { rss }\). Then, by Proposition 7, we have that \(\kappa \) is the identity on \(\varDelta _{ rss }\). Hence \({ rs }={ rs }'\). It therefore follows that there is a unique bijection \({ rss }\xrightarrow {\phi }{ rss }'\) relating isomorphic relational structures.

Suppose now that \({ rs }\sim _\kappa \phi ({ rs })\) and \({ rs }'\sim _{\kappa '}\phi ({ rs }')\). By Proposition 4, both \(\kappa \) and \(\kappa '\) are unique isomorphisms. It then follows from Proposition 7 that \(\kappa |_{\ell ^{-1}(a)}=\kappa '|_{\ell ^{-1}(a)}\), for every \(a\in \varSigma \). Hence \(\kappa =\kappa '\). \(\square \)

Proof of Proposition 10

Let \({ sos }=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \in {\mathsf {SOS}}\). First we show that \({ sos }\) is separable:

  • Suppose that \(x\sqsubset x\). Then \(x\sqsubset x\sqsubset x\) and so, by Axiom \({ L3 }\), \(x\ne x\) which produces a contradiction. Hence \(\sqsubset \) is irreflexive. Therefore, by Axiom \({ L2 }\), \(\rightleftharpoons \) is also irreflexive.

  • Suppose that \(x\not \rightleftharpoons y\) and \(x \ne y\). Then, by Axiom \({ L3 }\), we have \(x \sqsubset y \sqsubset x\) and thus also \(y \sqsubset x \sqsubset y\) which in turn implies \(y \not \rightleftharpoons x\). Hence \(\rightleftharpoons \) is symmetric.

  • Suppose that \(x \sqsubset ^\circledast y\). If \(x=y\) then, by the irreflexivity of \(\rightleftharpoons \), we have \(x \not \rightleftharpoons y\). If \(x \ne y\) then, by repeated application of Axiom \({ L1 }\), \(x \sqsubset y \sqsubset x\). Hence, by Axiom \({ L3 }\), \(x \not \rightleftharpoons y\) and so we can conclude that \(\rightleftharpoons \cap \sqsubset ^\circledast =\varnothing \).

As a result, \({ sos }\) is separable. Moreover, \({ sos }\) is label-ordered. Indeed, suppose that \(x\ne y\) and \(\ell (x)=\ell (y)\). Then, by Axiom \({ L4 }\), \(x \rightleftharpoons y\) and so, by Axiom \({ L2 }\), we have \(x\sqsubset ^{ sym }y\). Thus \(x\prec ^{ sym }y\).

We can therefore conclude that \({ sos }\in {\mathsf {OS}}\). To show that \({ sos }\in {\mathsf {SOS}}\), suppose that \({ os }\ne { sos }\) is an order structure such that \({ sos }\vartriangleleft { os }\). Then there must exist \(x,y\in \varDelta \) such that one of the following holds:

  • \(x\rightleftharpoons _{ os }y\) and \(x\not \rightleftharpoons y\). Since \(\rightleftharpoons _{ os }\) is irreflexive, \(x\ne y\). Hence, by Axiom \({ L3 }\), \(x\sqsubset y\sqsubset x\). Therefore, by \({ sos }\vartriangleleft { os }\), \(x \sqsubset ^\circledast _{ os }y\) which, together with \(x\rightleftharpoons _{ os }y\), contradicts the separability of \({ os }\).

  • \(x\sqsubset _{ os }y\) and \(x\not \sqsubset y\). Since \(\sqsubset _{ os }\) is irreflexive, \(x\ne y\). Hence, by Axiom \({ L3 }\), we have \(x\rightleftharpoons y\). Thus, by Axiom \({ L2 }\) and \(x\not \sqsubset y\), we obtain \(y\sqsubset x\). Therefore, by \({ sos }\vartriangleleft { os }\), \(x \sqsubset ^\circledast _{ os }y\) and \(x\rightleftharpoons _{ os }y\), contradicting the separability of \({ os }\).

Since in both cases we obtained a contradiction, \({ sos }\) is a saturated order structure.

Conversely, let \({ os }=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \in {\mathsf {SOS}}\). We first show that if \(x\ne y\) then:

  • (a) \(x\not \rightleftharpoons y\) implies \(x\sqsubset ^+y\sqsubset ^+x\).

  • (b) \(x\not \sqsubset y\) implies \(y\sqsubset ^+ x\) and \(x\rightleftharpoons y\).

(a) We first observe that \(y\not \rightleftharpoons x\), as \(\rightleftharpoons \) is symmetric. We then consider a relational structure \({ os }'\) obtained from \({ os }\) by adding the pair \(\left\langle x,y\right\rangle \) to \(\rightleftharpoons \). Since \({ os }'\ne { os }\) and \({ os }\vartriangleleft { os }'\), it follows from \({ os }\in {\mathsf {SOS}}\) that \({ os }'\notin {\mathsf {OS}}\). We then observe that in such a case \(\left\langle x,y\right\rangle \) must belong to \(\rightleftharpoons _{{ os }'}\cap \sqsubset ^\circledast _{{ os }'}\). Hence, by \(\sqsubset ^\circledast _{{ os }'}=\sqsubset ^\circledast \), we obtain that \(x\sqsubset ^+y\sqsubset ^+x\).

(b) We consider a relational structure \({ os }'\) obtained from \({ os }\) by adding the pair \(\left\langle x,y\right\rangle \) to \(\sqsubset \). As in the case of (a), \({ os }'\notin {\mathsf {OS}}\). We then observe that in such a case there is a pair \(\left\langle w,u\right\rangle \) belonging to \(\rightleftharpoons _{{ os }'}\cap \sqsubset ^\circledast _{{ os }'}\). Clearly, \(w\rightleftharpoons u\) and the only way that \(w\sqsubset ^\circledast _{{ os }'}u\) holds is that we created a cycle through adding \(\left\langle x,y\right\rangle \) to \(\sqsubset \). Hence we must have had \(y\sqsubset ^+ x\). Suppose that \(x\not \rightleftharpoons y\). Then, by (a), \(x\sqsubset ^\circledast y\) and so \(w\sqsubset ^\circledast u\) which produces a contradiction with the separability of \({ os }\). Hence \(x\rightleftharpoons y\), and so (b) holds.

We will now show that \({ os }\) is an so-structure, by checking the satisfaction of the defining conditions Axioms \({ L1 }\)\({ L4 }\):

  • Suppose that \(x\ne y\) and \(x\sqsubset z\sqsubset y\) and \(x\not \sqsubset y\). Then, by (b), \(y\sqsubset ^+ x\) and \(x\rightleftharpoons y\). Thus \(y\sqsubset ^+ x\sqsubset z\sqsubset y\), and so \(\left\langle x,y\right\rangle \) belongs to \(\rightleftharpoons \cap \sqsubset ^\circledast \), contradicting the separability of \({ os }\). As a result, \({ os }\) satisfies Axiom \({ L1 }\).

  • Suppose that \(x\rightleftharpoons y\) and \(x\not \sqsubset ^{ sym }y\) (i.e., \(x\not \sqsubset y\) and \(y\not \sqsubset x\)). Since \(\rightleftharpoons \) is irreflexive, \(x\ne y\). Then, by (a), \(y\sqsubset ^+ x\) and \(x\sqsubset ^+ y\). Thus \(y\sqsubset ^+ x\sqsubset ^+ y\), and so \(\left\langle x,y\right\rangle \) belongs to \(\rightleftharpoons \cap \sqsubset ^\circledast \), contradicting the separability of \({ os }\). As a result, \({ os }\) satisfies Axiom \({ L2 }\).

  • Suppose first that \(x\ne y\) and \(x\not \rightleftharpoons y\). Then, by (a), \(x\sqsubset ^+y\sqsubset ^+x\), and so, by an already demonstrated Axiom \({ L1 }\), \(x\sqsubset y\sqsubset x\). Conversely, suppose that \(x\sqsubset y\sqsubset x\). Then, by the irreflexivity of \(\sqsubset \), we have \(x\ne y\), and, by \(\rightleftharpoons \cap \sqsubset ^\circledast =\varnothing \), we have \(x\not \rightleftharpoons y\). As a result, \({ os }\) satisfies Axiom \({ L3 }\).

  • Suppose that \(x\ne y\), \(\ell (x)=\ell (y)\), and \(x\not \rightleftharpoons y\). Then \(x\not \prec ^{ sym }y\), contradicting the label-orderedness of \({ os }\). As a result, \({ os }\) satisfies Axiom \({ L4 }\).

Hence we can conclude that \({ os }\in {\mathsf {SOS}}\). \(\square \)

Proof of Proposition 11

Suppose that \({ soss }\in {\mathsf {SOSS}}\) and \({ os }={\mathsf {soss2os}}({ soss })=\bigcap { soss }\). Then \({ os }\) is separable by Proposition 6(2), and its label-orderedness follows from the definitions.

Suppose now that \({ os }\in {\mathsf {OS}}\) and \({ soss }={\mathsf {os2soss}}({ os })={\mathsf {ext}}({ os })\cap {\mathsf {SOS}}\). From Prop.4.7 and Th.4.13 in [14], it follows that \({ soss }\ne \varnothing \). Clearly, \({ soss }\) is label-ordered and consistent due to the definition of \({\mathsf {ext}}({ os })\). \(\square \)

Proof of Theorem 2

Suppose that \({ ios }\in {\mathsf {IOS}}\) and \({ soss }= {\mathsf {os2soss}}({ ios })\). Then, by Definition 6, \({ ios }= {\mathsf {soss2os}}\circ {\mathsf {os2soss}}({ ios })\). Hence \({ soss }= {\mathsf {os2soss}}({ ios }) = {\mathsf {os2soss}}\circ {\mathsf {soss2os}}\circ {\mathsf {os2soss}}({ ios }) = {\mathsf {os2soss}}\circ {\mathsf {soss2os}}({ soss })\) and so, by Definition 7, \({ soss }\in {\mathsf {HSOSS}}\).

Suppose now that \({ hsoss }\in {\mathsf {HSOSS}}\) and \({ os }= {\mathsf {soss2os}}({ hsoss })\). Then, by Definition 7, \({\mathsf {os2soss}}({ os }) = { hsoss }\). Hence \({ os }= {\mathsf {soss2os}}\circ {\mathsf {os2soss}}({ os })\) and \({ os }\in {\mathsf {IOS}}\). \(\square \)

Proof of Theorem 3

Let \({\mathsf {LGMOS}}\) be the set of all labelled generalised mutex order structures defined as the set of all relational structures \({ lgmos }\) satisfying the axioms in Theorem 3. Then, from Props. 4.7 & 4.8 and Thm.4.13 in [14], we obtain that: \(\square \)

Lemma 1

  1. 1.

    If \({ lgmos }\in {\mathsf {LGMOS}}\), then \({\mathsf {os2soss}}({ lgmos })\ne \varnothing \) and \({ lgmos }={\mathsf {soss2os}}\circ {\mathsf {os2soss}}({ lgmos })\).

  2. 2.

    \({\mathsf {os2ios}}\) is a structure-closure operator from \({\mathsf {OS}}\) to \({\mathsf {LGMOS}}\).

\({\mathsf {LGMOS}}\subseteq {\mathsf {IOS}}\) holds by Definition 6 and Proposition 1(1).

Suppose that \({ ios }\in {\mathsf {IOS}}\). Let \({ lgmos }={\mathsf {os2ios}}({ ios })\in {\mathsf {IOS}}\). By Propositions 5 and 1(2), \({\mathsf {os2soss}}({ ios })={\mathsf {os2soss}}({ lgmos })\). Hence \({\mathsf {soss2os}}\circ {\mathsf {os2soss}}({ ios })={\mathsf {soss2os}}\circ {\mathsf {os2soss}}({ lgmos })\) and so, by Definition 6 and Proposition 1(1), \({ ios }={ lgmos }\in {\mathsf {LGMOS}}\). Thus \({\mathsf {IOS}}\subseteq {\mathsf {LGMOS}}\).

Proof of Proposition 12

By Proposition 1(2) and Theorem 3, \({\mathsf {os2ios}}\) is a structure-closure operator from \({\mathsf {OS}}\) to \({\mathsf {IOS}}\).

Suppose \({\mathsf {OS}}\xrightarrow {{\mathsf {cls}}}{\mathsf {IOS}}\) is a structure-closure operator. Let \({ os }\in {\mathsf {OS}}\). Then \({\mathsf {os2soss}}({\mathsf {cls}}({ os }))={\mathsf {os2soss}}({ os })={\mathsf {os2soss}}({\mathsf {os2ios}}({ os }))\), by Proposition 5(ii) and Proposition 1(2). Hence, by \({\mathsf {cls}}({ os })\in {\mathsf {IOS}}\) and \({\mathsf {os2ios}}({ os })\in {\mathsf {IOS}}\), we obtain \({\mathsf {cls}}({ os })={\mathsf {os2ios}}({ os })\). \(\square \)

Proofs of Section 5

Proof of Proposition 13

Let \({\mathcal {X}}\) be the set of equivalence classes of \(\sqsubset ^\circledast \). For distinct \(X,Y\in {\mathcal {X}}\), we define \(X\dot{\rightleftharpoons } Y\) and \(X\dot{\sqsubset } Y\) if, respectively, \((X\times Y)\cap \rightleftharpoons \ne \varnothing \) and \((X\times Y)\cap \sqsubset \ne \varnothing \). We then show that, for distinct \(X,Y\in {\mathcal {X}}\), we have the following:

Let \(\alpha \in X\) and \(\beta \in Y\). Since \(X \ne Y\), also \(\alpha \ne \beta \).

(i) If \(X\dot{\sqsubset } Y\), then there exist \(\gamma \in X\) and \(\delta \in Y\) such that \(\gamma \sqsubset \delta \) which together with \(\alpha \ne \beta \) implies by Axiom \({ L1 }\) that \(\alpha \sqsubset \beta \).

(ii) If \(\alpha \not \rightleftharpoons \beta \) then \(\alpha \ne \beta \) implies, by Axiom \({ L3 }\), that \(\alpha \sqsubset \beta \sqsubset \alpha \), a contradiction.

(iii) Follows from the maximality of \(\sqsubset ^\circledast \).

(iv) We have \(\alpha \ne \beta \). If \(\alpha \not \rightleftharpoons \beta \) then, by Axiom \({ L3 }\), \(\alpha \sqsubset \beta \sqsubset \alpha \). Hence \(X\dot{\sqsubset } Y\dot{\sqsubset } X\) which contradicts (iii). Thus we have \(\alpha \rightleftharpoons \beta \) and so \(\alpha \sqsubset ^{ sym }\beta \), by Axiom \({ L2 }\).

Now define \(\dot{\prec }=\dot{\sqsubset }\cap \dot{\rightleftharpoons }\). From what we have just shown it follows that \(\dot{\prec }\) is a total order relation over \({\mathcal {X}}\). Moreover, the order in which the equivalence classes of \(\sqsubset ^\circledast \) are ordered by \(\dot{\prec }\) gives the desired sequence and verifies its uniqueness. \(\square \)

Proof of Proposition 14

Let \(i\le k\) and suppose that \(\alpha ,\beta \in \varDelta _i\), \(\alpha \ne \beta \) and \(\ell (\alpha )=\ell (\beta )\). Then, by Axiom \({ L4 }\), \(\alpha \rightleftharpoons \beta \). Hence \(\alpha \not \sqsubset ^\circledast \beta \) as, by Proposition 10, \({ sos }\) is an order structure, and so it is separable. We therefore obtained a contradiction with Proposition 13(2).

The second part follows from Proposition 13(2) and Eq. (5). \(\square \)

Proof of Theorem 5

We first show that the mappings \({\mathsf {sos2sseq}}\) and \({\mathsf {sseq2sos}}\) are well-defined.

The first part follows from Proposition 14. To show the second part, we proceed as follows.

Suppose that \(u\in {\mathsf {SSEQ}}_\theta \) and \({ sos }={\mathsf {sseq2sos}}(u)=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \). First we demonstrate that \({ sos }\in {\mathsf {SOS}}\) by showing that the Axioms \({ L1 }\)\({ L4 }\) hold.

Axiom \({ L1 }:\) Suppose that \(\alpha \ne \beta \) and \(\alpha \sqsubset \gamma \sqsubset \beta \). By Eq. (7), we have \({ pos }_u(\alpha )\le { pos }_u(\gamma )\le { pos }_u(\beta )\). Hence \({ pos }_u(\alpha )\le { pos }_u(\beta )\) and so, by Eq. (7), \(\alpha \sqsubset \beta \).

Axiom \({ L2 }:\) Suppose that \(\alpha \rightleftharpoons \beta \). By Eq. (7), we have \({ pos }_u(\alpha )\ne { pos }_u(\beta )\) and so also \(\alpha \ne \beta \). Hence, by Eq. (7), \(\alpha \sqsubset ^{ sym }\beta \).

Axiom \({ L3 }:\) Suppose that \(\alpha \ne \beta \) and \(\alpha \not \rightleftharpoons \beta \). Then, by Eq. (7), \({ pos }_u(\alpha )={ pos }_u(\beta )\). Hence, by Eq. (7), \(\alpha \sqsubset \beta \sqsubset \alpha \).

Conversely, suppose that \(\alpha \sqsubset \beta \sqsubset \alpha \). Then, by Eq. (7), \({ pos }_u(\alpha )={ pos }_u(\beta )\) and \(\alpha \ne \beta \). Moreover, by Eq. (7), \(\alpha \not \rightleftharpoons \beta \).

Axiom \({ L4 }:\) Suppose that \(\alpha \ne \beta \) and \(\ell (\alpha )=\ell (\beta )\). Then \({ pos }_u(\alpha )\ne { pos }_u(\beta )\) and so, by Eq. (7), \(\alpha \rightleftharpoons \beta \).

As a result, \({ sos }\in {\mathsf {SOS}}\).

Suppose now that \(\alpha =\left\langle a,i\right\rangle \in \varDelta \) and \(\beta =\left\langle a,j\right\rangle \in \varDelta \), where \(i\ne j\). Then \(i<j \Longleftrightarrow { pos }_u(\alpha )={ pos }_u(\beta )\). Hence, by Eq. (7), the first part of Eq. (5) holds.

Finally, suppose that \(\alpha =\left\langle a,i\right\rangle \in \varDelta \) and \(\beta =\left\langle b,k\right\rangle \in \varDelta \) are such that \(\alpha \sqsubset ^\circledast \beta \) and \(\alpha \ne \beta \). Then, by Eq. (7), \({ pos }_u(\alpha )={ pos }_u(\beta )\). Hence, by \(u\in {\mathsf {SSEQ}}_\theta \), we have \(\left\langle a,b\right\rangle \in {\mathsf {sim}}\), and so the second part of Eq. (5) holds.

As a result, \({ sos }\in {\mathsf {SOS}}_\theta \). Hence both mappings are well-defined.

Suppose now that \(u\in {\mathsf {SSEQ}}_\theta \). By Proposition 15, \(\tau _{{\mathsf {sseq2sos}}(u)}={ occseq }(u)\). Hence we obtain \({\mathsf {sos2sseq}}({\mathsf {sseq2sos}}(u))=\ell (\tau _{{\mathsf {sseq2sos}}(u)})= \ell ({ occseq }(u))=u\). \(\square \)

Proof of Proposition 15

Suppose that \({ occseq }(u)=\varDelta _1\ldots \varDelta _k\) and \({ sos }={\mathsf {sseq2sos}}(u)=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \). Clearly, \(\varDelta _1,\ldots ,\varDelta _k\) is a partition of \(\varDelta \). Moreover, from Eq. (7) it follows that \(\rightleftharpoons \;=\;\bigcup \{\varDelta _i\times \varDelta _j\mid i\ne j\}\), \(\sqsubset \;=\;\bigcup \{\varDelta _i\times \varDelta _j\mid i\le j\}{\setminus } { id }_\varDelta \) and \(\prec \;=\;\bigcup \{\varDelta _i\times \varDelta _j\mid i<j\}\). Hence, by Proposition 13(1), \(\tau _{{\mathsf {sseq2sos}}(u)}={ occseq }(u)\). \(\square \)

Proof of Proposition 16

  • (i) \(\rightleftharpoons \) is symmetric by \(({\mathsf {sim}}{\setminus }{\mathsf {seq}}^{-1})^{-1}={\mathsf {sim}}^{-1}{\setminus }{\mathsf {seq}}={\mathsf {sim}}{\setminus }{\mathsf {seq}}\) and Eq. (8). Clearly, it is also irreflexive by Eq. (8). Also, by Eq. (8) and the fact that \({\mathsf {sim}}{\setminus }{\mathsf {seq}}^{-1}\) is irreflexive, \(\sqsubset \) is irreflexive.

  • (ii) Follows directly from Eq. (8).

  • (iii) Clearly, \(\left\langle a,i\right\rangle \not \prec \left\langle a,j\right\rangle \) for \(i=j\), and so without loss of generality we can assume \(i<j\) and \({ pos }_u(\left\langle a,i\right\rangle )<{ pos }_u(\left\langle a,j\right\rangle )\).

    Then, by Eq. (8) and \(\left\langle a,a\right\rangle \notin ({\mathsf {sim}}\cap {\mathsf {seq}})\cup ({\mathsf {sim}}\cap {\mathsf {seq}}^{-1})\), \(\left\langle a,i\right\rangle \rightleftharpoons \left\langle a,j\right\rangle \rightleftharpoons \left\langle a,i\right\rangle \). Moreover, \(\left\langle a,a\right\rangle \notin {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\) and so, by Eq. (8), \(\left\langle a,i\right\rangle \sqsubset \left\langle a,j\right\rangle \). We then observe that \(\left\langle a,j\right\rangle \sqsubset \left\langle a,i\right\rangle \) is impossible by Eq. (8) and \({ pos }_u(\left\langle a,i\right\rangle )<{ pos }_u(\left\langle a,j\right\rangle )\).

  • (iv) By Eq. (8), \(\alpha \sqsubset ^\circledast \beta \) implies \({ pos }_u(\alpha )={ pos }_u(\beta )\). This and \(\alpha \ne \beta \) means that \(\ell (\alpha )\ne \ell (\beta )\). Hence \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in {\mathsf {sim}}\) since \(u\in {\mathsf {SSEQ}}_\theta \).

  • (v) The first part of Eq. (5) follows from (iii), and the second from (iv).

  • (vi) We need to show that \({ os }\) is label-linear and separable. The former follows from (iii). Moreover, if \(\alpha \sqsubset ^\circledast \beta \) and \(\alpha \ne \beta \) then, by (iv), \({ pos }_u(\alpha )={ pos }_u(\beta )\). Hence, by Eq. (8), \(\alpha \not \rightleftharpoons \beta \) and so \({ os }\) is separable. \(\square \)

Proof of Proposition 17

(1) Let \({ os }={\mathsf {sseq2os}}_\theta (u)=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \). By Theorem 5, it suffices to show that \({ sos }={\mathsf {sseq2sos}}(u)\) belongs to \({\mathsf {os2soss}}({ os })\).

Thus we prove that \({ sos }\) is a saturated version of \({ os }\). Suppose that \(\alpha \rightleftharpoons \beta \). Then, by Eq. (8), \({ pos }_u(\alpha )\ne { pos }_u(\beta )\). Hence \(\alpha \rightleftharpoons _{ sos }\beta \). Next suppose that \(\alpha \sqsubset \beta \). Then, by Eq. (8), \({ pos }_u(\alpha )\le { pos }_u(\beta )\). Hence \(\alpha \sqsubset _{ sos }\beta \). As a result, \({ sos }\in {\mathsf {os2soss}}({ os })\).

(2) Let \({\mathsf {sseq2os}}_\theta (u)=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \) and \({\mathsf {sseq2os}}_\theta (w)=\left\langle \varDelta ,\rightleftharpoons ',\sqsubset ',\ell \right\rangle \). It suffices to show the result in the following two cases.

Case 1: \(u=AB\), \(w=BA\) and \(A\times B\subseteq {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\). Then, by \({\mathsf {seq}}\) being irreflexive, we have that \({ occseq }(u)=\varDelta _1\varDelta _2\) and \({ occseq }(w)=\varDelta _2\varDelta _1\), for some \(\varDelta _1\) and \(\varDelta _2\). Clearly, \(\rightleftharpoons =\rightleftharpoons '\) as \(({\mathsf {sim}}\cap {\mathsf {seq}})^{-1}={\mathsf {sim}}\cap {\mathsf {seq}}^{-1}\). Moreover, \(\sqsubset =\sqsubset '\) as the following holds, by Eq. (8) and \(A\times B\subseteq {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\):

$$\begin{aligned} ((\varDelta _1\times \varDelta _2)\cup (\varDelta _2\times \varDelta _1))\cap \sqsubset = ((\varDelta _1\times \varDelta _2)\cup (\varDelta _2\times \varDelta _1))\cap \sqsubset ' =\varnothing \;. \end{aligned}$$

Case 2: \(u=AB\), \(w=A\cup B\) and \(A\times B\subseteq {\mathsf {seq}}\). Then, by \({\mathsf {seq}}\) being irreflexive, we have that \({ occseq }(u)=\varDelta _1\varDelta _2\) and \({ occseq }(w)=\varDelta _1\uplus \varDelta _2\), for some \(\varDelta _1\) and \(\varDelta _2\). We then have \(\rightleftharpoons =\rightleftharpoons '=\varnothing \) as \(A\times B\subseteq {\mathsf {sim}}\cap {\mathsf {seq}}\).

Suppose that \(\alpha \in \varDelta _1\) and \(\beta \in \varDelta _2\). Then \(\alpha \sqsubset \beta \) iff \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in {\mathsf {sim}}{\setminus }{\mathsf {seq}}^{-1}\). Moreover, \(\alpha \sqsubset '\beta \) iff \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \notin {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\) iff \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in {\mathsf {sim}}{\setminus }{\mathsf {seq}}^{-1}\) (since \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in {\mathsf {sim}}\cap {\mathsf {seq}}\)).

Suppose now that \(\alpha \in \varDelta _2\) and \(\beta \in \varDelta _1\), and so \(\left\langle \ell (\beta ),\ell (\alpha )\right\rangle \in {\mathsf {seq}}\). Then \(\alpha \not \sqsubset '\beta \), by Eq. (8). If \(\alpha \sqsubset \beta \) then \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in {\mathsf {sim}}{\setminus }{\mathsf {seq}}^{-1}\), contradicting \(\left\langle \ell (\beta ),\ell (\alpha )\right\rangle \in {\mathsf {seq}}\).

As a result, \(\sqsubset =\sqsubset '\). \(\square \)

Proof of Proposition 19

Let \(w=A_1\ldots A_k\) be a longest step sequence such that \(u\equiv _\theta w\). Suppose that w is not thin, and \(A_i\) is not a min-step, for some \(i\le k\). This means that there are steps BC such that \(A_i=B\uplus C\) and \(B\times C\subseteq {\mathsf {seq}}\cap {\mathsf {sim}}\). Hence \(w\approx _\theta A_1\ldots A_{i-1}BCA_{i+1}\ldots A_k\), contradicting the choice of w. \(\square \)

Proof of Proposition 20

We start by defining an auxiliary notion and a result.

A linearisation of an acyclic binary relation \(\ll \) over a finite set X is any enumeration \(u=x_1\ldots x_k\) of the elements of X such that \(x_i\ll x_j\) implies \(i<j\), for all \(i,j\le k\). Furthermore, we write \(u \bowtie w\) if \(w=x_1\ldots x_{i-1}x_{i+1}x_ix_{i+2}\ldots x_k\), where \(x_i\) and \(x_{i+1}\) are such that \(x_i\not \ll x_{i+1}\not \ll x_i\). \(\square \)

Lemma 2

If u and w are linearisations of \(\ll \) then \(u\bowtie ^*w\).

Proof

We proceed by induction on |X|. In the base case, \(|X|=0\), we have that both u and v are the empty enumeration. In the inductive case, \(|X|>0\), we proceed as follows.

Since X is nonempty and finite, and \(\ll \) acyclic, there is an \(x\in X\) such that there is no \(y\in X'=X{\setminus }\{x\}\) such that \(y\ll x\). We now observe that there is a \(u'\) such that \(u\bowtie ^*xu'\). Indeed, suppose that \(u=y_1\ldots y_mx u''\). Then, for all \(i\le m\), we have \(y_i\not \ll x\) (by the choice of x), and \(x\not \ll y_i\) (by u being a linearisation of \(\ll \)). Hence \(u\bowtie ^*xy_1\ldots y_m u''\). Similarly, there is \(w'\) such that \(w\bowtie ^*xw'\). We now observe that \(u'\) and \(w'\) are linearisations of \(\ll '=\ll \cap (X'\times X')\). Hence, by the induction hypothesis, \(u'\bowtie ^* w'\). As a consequence, \(xu'\bowtie ^* xw'\) and so \(u\bowtie ^*xu'\bowtie ^*xw'\bowtie ^*w\). \(\square \)

Let \(u=A_1\ldots A_k\) and \({ occseq }(u)=\varDelta _1\ldots \varDelta _k\). Moreover, let \({\mathcal {X}}\) be the set of all equivalence classes of \(\sqsubset ^\circledast \), and \(\ll \) be a binary relation over \({\mathcal {X}}\) such that \(X\ll Y\) if \((X\times Y)\cap \rightleftharpoons \ne \varnothing \) and \((X\times Y)\cap \sqsubset \ne \varnothing \).

Lemma 3

\(\ll \) is an acyclic relation, and \({ occseq }(u)\) is a linearisation of \(\ll \).

Proof

The first part is obvious, and the second follows from Eq. (7). \(\square \)

Lemma 4

\((X\times X)\cap \rightleftharpoons =\varnothing \), for every \(X\in {\mathcal {X}}\).

Proof

Follows from \({ os }\) being an order structure (and its separability). \(\square \)

Lemma 5

If \(\xi \) is a linearisation of \(\ll \) then \({ sos }_{\xi }={\mathsf {sseq2sos}}(\ell (\xi ))\in {\mathsf {os2soss}}(os)\) and \(\tau _{{ sos }_{\xi }}=\xi \).

Proof

Follows from Lemmata 3 and 4. \(\square \)

Lemma 6

\({\mathcal {X}}=\{\varDelta _1,\ldots ,\varDelta _k\}\).

Proof

Consider \(A_i\) and \(\varDelta _i\). Since \(A_i\) is a min-step, the graph of the relation \((A_i\times A_i){\setminus } {\mathsf {seq}}\) over \(A_i\) is strongly connected. Hence, by Eq. (8), the graph of \(\sqsubset \) restricted to the nodes of \(\varDelta _i\) is also strongly connected. Suppose that \(\alpha \in \varDelta {\setminus }\varDelta _i\) and \(\beta \in \varDelta _i\) are such that \(\alpha \sqsubset ^\circledast \beta \). Then, by Eq. (8), \({ pos }_u(\alpha )={ pos }_u(\beta )\) and so \(\alpha \in \varDelta _i\), a contradiction. It therefore follows that \(\varDelta _i\in {\mathcal {X}}\).

The result follows as both \(\varDelta _1,\ldots ,\varDelta _k\) and \({\mathcal {X}}\) are partitions of \(\varDelta \). \(\square \)

Lemma 7

Let \({ sos }'\in {\mathsf {os2soss}}({ os })\), \(\tau _{{ sos }'}=\varPhi _1\ldots \varPhi _m\) and \(j\le m\).

  1. (i)

    \(\varPhi _j\) is the union of some \(\varDelta _i\)’s.

  2. (ii)

    \((\varPhi _j\times \varPhi _j)\cap \rightleftharpoons =\varnothing \).

  3. (iii)

    If there is no \({ sos }''\in {\mathsf {os2soss}}({ os })\) such that \({ sos }'\dot{\approx }_\theta { sos }''\) and the length of \(\tau _{{ sos }''}\) is greater than m, then \(\tau _{{ sos }'}\) is a linearisation of \(\ll \).

  4. (iv)

    If X and Y are distinct elements of \({\mathcal {X}}\) satisfying \(X\not \ll Y\) and \(Y\not \ll X\), then \(\ell (X)\times \ell (Y)\subseteq {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}\).

  5. (v)

    If \(\xi \) is a linearisation of \(\ll \) then \({ sos }_\xi \dot{\equiv }_\theta { sos }'\).

Proof

  • (i) Follows from the fact that if \(\varPhi _j\cap \varDelta _i\ne \varnothing \) then \(\varDelta _i\subseteq \varPhi _j\) as \(\varDelta _i\) is an equivalence class of \(\sqsubset ^\circledast \).

  • (ii) Follows from Proposition 14.

  • (iii) By part (i), \(\varPhi _j=\varDelta _{i_1}\uplus \cdots \uplus \varDelta _{i_l}\). Suppose that \(l>1\). Since \(\ll \) is acyclic, there is \(s\le l\) such that there is no \(z\in Z=\{i_1,\ldots ,i_l\}{\setminus }\{i_s\}\) with \(\varDelta _z\ll \varDelta _{i_s}\) (i.e., \(\varDelta _{i_s}\) is \(\ll \)-minimal).

    Consider next the nonempty sets \(\varDelta _{i_s}\) and \(\varPhi _j{\setminus }\varDelta _{i_s}\). Suppose \(\alpha \in \varDelta _{i_s}\) and \(\beta \in \varDelta _z\), for some \(z\in Z\), which means that \({ pos }_u(\alpha )\ne { pos }_u(\beta )\). By Eq. (8) and \(\alpha \not \rightleftharpoons _{{ sos }'}\beta \), we have \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in {\mathsf {sim}}\). Suppose that \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \notin {\mathsf {seq}}\). Then, by Eq. (8), \(\beta \sqsubset \alpha \), contradicting the choice of \(\varDelta _{i_s}\) (\(\ll \)-minimality). As a result, \(A_{i_s}\times \bigcup _{z\in Z}A_z\subseteq {\mathsf {seq}}\). Hence

    $$\begin{aligned} { sos }'' = {\mathsf {sseq2sos}}( \ell ( \varPhi _1\ldots \varPhi _{i_s-1}\varDelta _{i_s}(\bigcup _{z\in Z}\varDelta _z)\varPhi _{i_s+1}\ldots \varPhi _m )) \end{aligned}$$

    is such that \({ sos }'\dot{\approx }{ sos }''\) and \({ sos }''\in {\mathsf {os2soss}}({ os })\). This produces a contradiction with the choice of \({ sos }'\). Hence \(\tau _{{ sos }'}\) is a linearisation of \(\ll \).

  • (iv) Let \(\alpha \in X\) and \(\beta \in Y\). Then, by Proposition 16(ii) (1st or 3rd line), we have \( \left\langle \ell (\alpha ),\ell (\beta )\right\rangle \in ({\mathsf {sim}}\cap {\mathsf {seq}}\cap {\mathsf {seq}}^{-1}) \cup ({\mathsf {seq}}\cap {\mathsf {seq}}^{-1}{\setminus } {\mathsf {sim}}) = {\mathsf {seq}}\cap {\mathsf {seq}}^{-1} \).

  • (v) By (iii), we can assume that \(\tau _{{ sos }'}\) is a linearisation of \(\ll \). By Lemma 2, there are linearisations \(v_1,\ldots ,v_r\) of \(\ll \) such that \(\tau _{{ sos }'}=v_1\sim \cdots \sim v_k=\xi \). We then observe that the result follows from (iv). \(\square \)

Lemma 8

Let \(u\in {\mathsf {SSEQ}}_\theta ^{ thin }\) and \(os={\mathsf {sseq2os}}_\theta (u)=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \). Then \({\mathsf {sseq2sos}}(u)\dot{\equiv }_\theta { sos }\), for every \({ sos }\in {\mathsf {os2soss}}(os)\).

Proof

Follows from Lemmata 3 and 7. \(\square \)

We now observe that Proposition 20 follows Propositions 17(1) and 19, Lemma 8.

Proof of Theorem 7

Follows from Theorems 4 and 6, Proposition 18, and the following argument.

Let \(u\in {\mathsf {SSEQ}}_\theta \). Suppose that \(w\equiv _\theta u\). Then, by Proposition 17(1), \({\mathsf {sseq2os}}_\theta (w)={\mathsf {sseq2os}}_\theta (u)\). Hence, by Proposition 17(1), \(w\in {\mathsf {sos2sseq}}\circ {\mathsf {os2soss}}\circ {\mathsf {sseq2os}}_\theta (u)\). As a result, \([\![u]\!]_\theta \subseteq {\mathsf {sos2sseq}}\circ {\mathsf {os2soss}}\circ {\mathsf {sseq2os}}_\theta (u)\). Moreover, by Proposition 20, \({\mathsf {sos2sseq}}\circ {\mathsf {os2soss}}\circ {\mathsf {sseq2os}}_\theta (u)\subseteq [\![u]\!]_\theta \). Hence \([\![u]\!]_\theta ={\mathsf {sos2sseq}}\circ {\mathsf {os2soss}}\circ {\mathsf {sseq2os}}_\theta (u)\). \(\square \)

Proof of Proposition 21

Let \({ os }=\left\langle \varDelta ,\rightleftharpoons ,\sqsubset ,\ell \right\rangle \). Since \(\ell \) is injective, we may assume that each \(\alpha \in \varDelta \) is of the form \(\left\langle a,1\right\rangle \) with \(\ell (\alpha )=a\). Hence \(\varDelta \) is an event domain.

By Proposition 11, there is \({ sos }\in {\mathsf {os2soss}}({ os })\ne \varnothing \). Clearly, \({ sos }\in {\mathsf {SOS}}_\theta \), for any generalised concurrency alphabet \(\theta =\left\langle \ell (\varDelta ),{\mathsf {sim}},{\mathsf {seq}}\right\rangle \). We will now show how to construct \({\mathsf {sim}}\) and \({\mathsf {seq}}\) in order to obtain a desired alphabet.

First, we observe that the layer sequence \(\tau _{ sos }\) is well-defined even though \(\theta \) is not fully defined. Moreover, \(\tau _{ sos }\) can be treated as a step sequence over the alphabet \(\varDelta \). We then construct \({\mathsf {sim}}\) and \({\mathsf {seq}}\) as follows, by taking all pairs of distinct \(\alpha ,\beta \in \varDelta \) with \(k={ pos }_{\tau _{ sos }}(\alpha )\) and \(m={ pos }_{\tau _{ sos }}(\beta )\):

  • Case 1: \(\alpha \not \sqsubset \beta \wedge \beta \not \sqsubset \alpha \wedge \alpha \not \rightleftharpoons \beta \). Then we add \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \) and \(\left\langle \ell (\beta ),\ell (\alpha )\right\rangle \) to both \({\mathsf {sim}}\) and \({\mathsf {seq}}\).

  • Case 2: \(\alpha \sqsubset \beta \wedge \beta \sqsubset \alpha \wedge \alpha \not \rightleftharpoons \beta \). Then \(k=m\) and we add \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \) and \(\left\langle \ell (\beta ),\ell (\alpha )\right\rangle \) to \({\mathsf {sim}}\).

  • Case 3: \(\alpha \not \sqsubset \beta \wedge \beta \not \sqsubset \alpha \wedge \alpha \rightleftharpoons \beta \). Then \(k\ne m\) and we add \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \) and \(\left\langle \ell (\beta ),\ell (\alpha )\right\rangle \) to \({\mathsf {seq}}\).

  • Case 4: \(\alpha \sqsubset \beta \wedge \beta \not \sqsubset \alpha \wedge \alpha \not \rightleftharpoons \beta \). Then \(k\le m\) and we add \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \) and \(\left\langle \ell (\beta ),\ell (\alpha )\right\rangle \) to \({\mathsf {sim}}\), and \(\left\langle \ell (\alpha ),\ell (\beta )\right\rangle \) to \({\mathsf {seq}}\).

  • Case 5: \(\alpha \sqsubset \beta \wedge \beta \not \sqsubset \alpha \wedge \alpha \rightleftharpoons \beta \). Then \(k< m\) and we do not add anything.

Note that the above construction follows from the characterisation provided by Proposition 16(2).

We observe that \(\theta \) is a generalised concurrency alphabet. Indeed, \({\mathsf {sim}}\) and \({\mathsf {seq}}\) are irreflexive by construction and the fact that \(\alpha \ne \beta \) implies \(\ell (\alpha )\ne \ell (\beta )\). Moreover, \({\mathsf {sim}}\) is symmetric by construction, and \({\mathsf {seq}}{\setminus }{\mathsf {sim}}\) is symmetric because it can only acquire pairs of elements in Case 3.

Let \(u={\mathsf {sos2sseq}}({ sos })=\ell (\tau _{ sos })\). Then \(u\in {\mathsf {SSEQ}}_\theta \) follows from the fact that, in the above construction, if \(k=m\) then we have Case 1 or Case 2 or Case 4. We then observe that \({ os }={\mathsf {sseq2os}}_\theta (u)\) follows from Eq. (8). \(\square \)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Janicki, R., Kleijn, J., Koutny, M. et al. Step traces. Acta Informatica 53, 35–65 (2016). https://doi.org/10.1007/s00236-015-0244-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-015-0244-z

Keywords

Navigation