Skip to main content
Log in

Replication, refinement & reachability: complexity in dynamic condition-response graphs

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

Abstract

We explore the complexity of reachability and run-time refinement under safety and liveness constraints in event-based process models. Our study is framed in the DCR\(^\star \) process language, which supports modular specification through a compositional operational semantics. DCR\(^\star \) encompasses the “Dynamic Condition Response (DCR) graphs” declarative process model for analysis, execution and safe run-time refinement of process-aware information systems; including replication of sub-processes. We prove that event-reachability and refinement are np-hard for DCR\(^\star \) processes without replication, and that these finite state processes recognise exactly the languages that are the union of a regular and an \(\omega \)-regular language. Moreover, we prove that event-reachability and refinement are undecidable in general for DCR\(^\star \) processes with replication and local events, and we provide a tractable approximation for refinement. A prototype implementation of the DCR\(^\star \) language is available at http://dcr.tools/acta16.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

Notes

  1. We deviate from the implemented solution when it makes our examples clearer. In particular, many reasonable constraints—such as “the deadline can only occur once the round has begin”—have been left out in order to keep the example small.

References

  1. Anderson, G., Rathke, J.: Dynamic software update for message passing programs. In: Jhala, R., Igarashi, A. (eds.) APLAS, Springer, Lecture Notes in Computer Science, vol. 7705, pp. 207–222 (2012)

  2. Arbach, Y., Karcher, D., Peters, K., Nestmann, U.: Dynamic causality in event structures. In: Graf, S., Viswanathan, M. (eds.) Formal Techniques for Distributed Objects, Components, and Systems: 35th IFIP WG 6.1 International Conference, FORTE 2015, Held as Part of the 10th International Federated Conference on Distributed Computing Techniques, DisCoTec 2015, Grenoble, France, June 2–4, 2015, Proceedings, Springer International Publishing, Cham, pp. 83–97. doi:10.1007/978-3-319-19195-9_6 (2015)

  3. Baldan, P., Corradini, A., Montanari, U.: Contextual Petri nets, asymmetric event structures, and processes. Inf. Comput. 171, 149 (2001). doi:10.1006/inco.2001.3060

    Article  MathSciNet  MATH  Google Scholar 

  4. Barthe, G., Pardo, A., Schneider, G. (eds.): Software Engineering and Formal Methods—9th International Conference, SEFM 2011, Montevideo, Uruguay, November 14–18, 2011. Proceedings, LNCS, vol. 7041, Springer (2011)

  5. Bravetti, M., Di Giusto, C., Pérez, J.A., Zavattaro, G.: Steps on the road to component evolvability. In: Proceedings of the 7th International Conference on Formal Aspects of Component Software, FACS’10, pp. 295–299. doi:10.1007/978-3-642-27269-1_19 (2012a)

  6. Bravetti, M., Giusto, C.D., Pérez, J.A., Zavattaro, G.: Adaptable processes. Log. Methods Comput. Sci. 8(4) (2012b)

  7. Carbone, M., Hildebrandt, T.T., Perrone, G., Wasowski, A.: Refinement for transition systems with responses. FIT, EPTCS 87, 48–55 (2012)

    Article  Google Scholar 

  8. Debois, S., Hildebrandt, T., Marquard, M., Slaats, T.: A case for declarative process modelling: agile development of a grant application system. In: EDOCW/AdaptiveCM ’14, IEEE, pp. 126–133 (2014a). doi:10.1109/EDOCW.2014.27

  9. Debois, S., Hildebrandt, T.T., Slaats, T., Yoshida, N.: Type checking liveness for collaborative processes with bounded and unbounded recursion. FORTE, Springer, Lecture Notes in Computer Science 8461, 1–16 (2014c)

  10. Debois, S., Hildebrandt, T.T., Slaats, T.: Hierarchical declarative modelling with refinement and sub-processes. In: Business Process Management—12th International Conference, BPM 2014, Haifa, Israel, September 7–11, 2014. Proceedings, Springer, Lecture Notes in Computer Science, vol. 8659, pp 18–33 (2014b). doi:10.1007/978-3-319-10172-9

  11. Debois, S., Hildebrandt, T., Slaats, T.: Safety, liveness and run-time refinement for modular process-aware information systems with dynamic sub processes. In: FM 2015, Springer, no. 9109 in LNCS, pp. 143–160. doi:10.1007/978-3-319-19249-9_10 (2015)

  12. Eshuis, R., Debois, S., Slaats, T., Hildebrandt, T.T.: Deriving consistent GSM schemas from DCR graphs. In: Sheng, Q.Z., Stroulia, E., Tata, S., Bhiri, S. (eds.) Service-Oriented Computing—14th International Conference, ICSOC 2016, Banff, AB, Canada, October 10–13, 2016, Proceedings, Springer, Lecture Notes in Computer Science, vol. 9936, pp. 467–482. doi:10.1007/978-3-319-46295-0_29 (2016)

  13. Esparza, J., Melzer, S.: Model checking LTL using constraint programming. In: Azma, P., Balbo, G. (eds.) Application and Theory of Petri Nets 1997. Lecture Notes in Computer Science, vol. 1248, pp. 1–20. Springer, Berlin (1997)

    Chapter  Google Scholar 

  14. Fecher, H., Majster-Cederbaum, M.: Event structures for arbitrary disruption. Fundam. Inf. 68(1–2), 103–130 (2005)

    MathSciNet  MATH  Google Scholar 

  15. Hildebrandt, T.T., Marquard, M., Mukkamala, R.R., Slaats, T.: Dynamic condition response graphs for trustworthy adaptive case management. In: OTM Workshops, Springer, LNCS, vol. 8186, pp. 166–171 (2013a)

  16. Hildebrandt, T.T., Mukkamala, R.R., Slaats, T.: Nested dynamic condition response graphs. In: FSEN, Springer, LNCS, vol. 7141, pp. 343–350 (2011)

  17. Hildebrandt, T.T., Mukkamala, R.R.: Declarative event-based workflow as distributed dynamic condition response graphs. PLACES, EPTCS 69, 59–73 (2010)

    Article  Google Scholar 

  18. Hildebrandt, T.T., Mukkamala, R.R., Slaats, T., Zanitti, F.: Contracts for cross-organizational workflows as timed dynamic condition response graphs. J. Log. Algebr. Program. 82(5–7), 164–185 (2013b)

    Article  MathSciNet  MATH  Google Scholar 

  19. Hoogers, P., Kleijn, H., Thiagarajan, P.: An event structure semantics for general Petri nets. Theor. Comput. Sci. 153(12), 129–170 (1996)

    Article  MathSciNet  MATH  Google Scholar 

  20. Hull, R., Damaggio, E., Fournier, F., Gupta, M., Heath, F.T., Hobson, S., Linehan, M.H., Maradugu, S., Nigam, A., Sukaviriya, P., Vaculín, R.: Introducing the guard-stage-milestone approach for specifying business entity lifecycles. In: WS-FM, Springer, LNCS, vol. 6551, pp. 1–24 (2010)

  21. Janneck, J.W., Esser, R.: Higher-order Petri net modelling: techniques and applications. In: Proceedings of the Conference on Application and Theory of Petri Nets: Formal Methods in Software Engineering and Defence Systems, CRPIT ’02, pp. 17–25 (2002)

  22. Katoen, J.P.: Quantitative and qualitative extensions of event structures. Ph.D. thesis, University of Twente, Enschede (1996)

  23. Lanese, I., Lienhardt, M., Mezzina, C.A., Schmitt, A., Stefani, J.: Concurrent flexible reversibility. In: Felleisen, M., Gardner, P. (eds.) Programming Languages and Systems—22nd European Symposium on Programming, ESOP 2013, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2013, Rome, Italy, March 16–24, 2013. Proceedings, Springer, Lecture Notes in Computer Science, vol. 7792, pp. 370–390 (2013). doi:10.1007/978-3-642-37036-6_21

  24. Langerak, R., Brinksma, E., Katoen, J.P.: Causal ambiguity and partial orders in event structures. In: CONCUR ’97, LNCS, vol. 1243, Springer, pp. 317–331 (1997). doi:10.1007/3-540-63141-0_22

  25. Langerak, R.: Transformations and Semantics for LOTOS. Universiteit Twente, Enschede (1992)

    MATH  Google Scholar 

  26. Latvala, T., Mkel, M.: LTL model checking for modular Petri nets. In: Applications and Theory of Petri Nets 2004, LNCS, vol. 3099, Springer, pp. 298–311 (2004)

  27. Marquard, M., Shahzad, M., Slaats, T.: Web-based modelling and collaborative simulation of declarative processes. In: Business Process Management—13th International Conference, BPM 2015, Innsbruck, Austria, August 31–September 3, 2015, Proceedings, Springer, Lecture Notes in Computer Science, vol. 9253, pp. 209–225 (2015). doi:10.1007/978-3-319-23063-4_15

  28. Minsky, M.L.: Computation: Finite and Infinite Machines. Prentice-Hall, Upper Saddle River (1967)

    MATH  Google Scholar 

  29. Montali, M.: Specification and Verification of Declarative Open Interaction Models—A Logic-Based Approach. Lecture Notes in Business Information Processing. Springer, Berlin (2010)

    Book  MATH  Google Scholar 

  30. Mukkamala, R.R., Hildebrandt, T., Slaats, T.: Towards trustworthy adaptive case management with dynamic condition response graphs. In: EDOC, IEEE, pp. 127–136 (2013)

  31. Mukkamala, R.R.: A formal model for declarative workflows: dynamic condition response graphs. Ph.D. thesis, IT University of Copenhagen (2012)

  32. Object Management Group BPMN Technical Committee.: Business Process Model and Notation, version 2.0. http://www.omg.org/spec/BPMN/2.0.2/PDF (2013)

  33. Object Management Group CMMN Technical Committee.: Case Management Model and Notation, version 1.1. http://www.omg.org/spec/CMMN/1.1/PDF (2016)

  34. Park, D.: Concurrency and automata on infinite sequences. In: Proceedings of the 5th GI-Conference on Theoretical Computer Science, Springer-Verlag, London, UK, UK, pp. 167–183 (1981). http://dl.acm.org/citation.cfm?id=647210.720030

  35. Pinna, G., Poigné, A.: On the nature of events: another perspective in concurrency. Theor. Comput. Sci. 138(2), 425–454 (1995). doi:10.1016/0304-3975(94)00174-H. meeting on the mathematical foundation of programing semantics

    Article  MathSciNet  MATH  Google Scholar 

  36. Preda, M.D., Gabbrielli, M., Giallorenzo, S., Lanese, I., Mauro, J.: Developing correct, distributed, adaptive software. Sci. Comput. Program. 97, 41–46 (2015). doi:10.1016/j.scico.2013.11.019

    Article  Google Scholar 

  37. Reichert, M., Weber, B.: Enabling Flexibility in Process-Aware Information Systems—Challenges, Methods, Technologies. Springer, Heidelberg (2012)

    Book  MATH  Google Scholar 

  38. Rohloff, K., Loyall, J., Pal, P., Schantz, R.: High-assurance distributed, adaptive software for dynamic systems. In: 10th IEEE High Assurance Systems Engineering Symposium (HASE ’07), pp. 385–386 (2007). doi:10.1109/HASE.2007.17

  39. Sibertin-Blanc, C., Mauran, P., Padiou, G.: Safe adaptation of component coordination. In: Proceedings of the Third International Workshop on Coordination and Adaption Techniques for Software Entities, vol. 189, pp. 69–85 (2007)

  40. Slaats, T., Mukkamala, R.R., Hildebrandt, T.T., Marquard, M.: Exformatics declarative case management workflows as DCR graphs. In: BPM, Springer, LNCS, vol. 8094, pp. 339–354 (2013)

  41. Slaats, T.: Flexible process notations for cross-organizational case management systems. Ph.D. thesis, IT University of Copenhagen (2015)

  42. van der Aalst, W.M.P.: The application of Petri nets to workflow management. J. Circuits Syst. Comput. 8(1), 21–66 (1998)

    Article  Google Scholar 

  43. van Glabbeek, R., Plotkin, G.: Event structures for resolvable conflict. In: Fiala, J., Koubek, V., Kratochvíl, J. (eds.) Mathematical Foundations of Computer Science 2004: 29th International Symposium, MFCS 2004, Prague, Czech Republic, August 22–27, 2004. Proceedings, Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 550–561 (2004). doi:10.1007/978-3-540-28629-5_42

  44. van Glabbeek, R., Vaandrager, F.: Bundle event structures and CCSP. In: CONCUR 2003—Concurrency Theory, LNCS, vol. 2761, Springer, pp. 57–71 (2003)

  45. van der Aalst, W.M.P., Pesic, M.: DecSerFlow: towards a truly declarative service flow language. In: WS-FM 2006, Springer, LNCS, vol. 4184, pp. 1–23 (2006)

  46. van der Aalst, W.M.P., Pesic, M., Schonenberg, H., Westergaard, M., Maggi, F.M.: Declare. Webpage. http://www.win.tue.nl/declare/ (2010)

  47. van der Aalst, W.M.P., ter Hofstede, A.H.M., Weske, M.: Business process management: a survey. In: van der Aalst, W.M.P., ter Hofstede, A.H.M., Weske, M. (eds.) Business Process Management, International Conference, BPM 2003, Eindhoven, The Netherlands, June 26–27, 2003, Proceedings, Springer, Lecture Notes in Computer Science, vol. 2678, pp. 1–12 (2003)

  48. Winskel, G.: Event structures. In: Advances in Petri Nets. Springer, LNCS, vol. 255, pp. 325–392 (1986)

  49. Winskel, G.: Events in computation. Ph.D. thesis, University of Edinburgh (1980)

  50. Zugal, S., Soffer, P., Pinggera, J., Weber, B.: Expressiveness and understandability considerations of hierarchy in declarative business process models. In: BMMDS/EMMSAD, Springer, Lecture Notes in Business Information Processing, vol. 113, pp. 167–181 (2012)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Søren Debois.

Additional information

Supported by the Velux foundation (Grant 33295), the Danish Council for Independent Research (Grant DFF-6111-00337) and Innovation Fund Denmark.

Appendix: Proof of Proposition 6

Appendix: Proof of Proposition 6

We recap the original graph-based formalisation of DCR graph [10, 15, 17, 31, 41].

Definition 44

(DCR graph) A DCR graph is a tuple \((\mathsf {E}, \mathsf {R}, \mathsf {M})\) where

  • \(\mathsf {E}\) is a finite set of (labelled) events, the nodes of the graph.

  • \(\mathsf {R}\) is the edges of the graph. Edges are partitioned into four kinds, named and drawn as follows: the conditions \((\mathrel {\rightarrow \bullet })\), responses \((\mathrel {\bullet \rightarrow })\), inclusions \((\mathrel {\rightarrow +})\), and exclusions \((\mathrel {\rightarrow \%})\).

  • \(\mathsf {M}\) is the marking of the graph. This is a triple \((\mathsf {Ex},\mathsf {Re},\mathsf {In})\) of sets of events, respectively the previously executed \((\mathsf {Ex})\), the currently pending \((\mathsf {Re})\), and the currently included \((\mathsf {In})\) events.

When G is a DCR graph, we write, e.g., \(\mathsf {E}(G)\) for the set of events of G, \(\mathsf {Ex}(G)\) for the executed events in the marking of G, etc. We write \(\mathord {(\mathrel {\rightarrow \bullet }e)}\) for the set \(\{e^{\prime }\in \mathsf {E}\mid e^{\prime }\mathrel {\rightarrow \bullet }e\}\), write \(\mathord {(e\mathrel {\bullet \rightarrow })}\) for the set \(\{e^{\prime }\in \mathsf {E}\mid e \mathrel {\bullet \rightarrow }e^{\prime }\}\) and similarly for \(\mathord {(e\mathrel {\rightarrow +})}\) and \(\mathord {(e\mathrel {\rightarrow \%})}\).

Definition 45

(Enabled events) Let \(G=(\mathsf {E}, \mathsf {R}, \mathsf {M})\) be a DCR graph, with marking \(\mathsf {M}= (\mathsf {Ex},\mathsf {Re},\mathsf {In})\). An event \(e \in \mathsf {E}\) is enabled, written \(e\in {\mathsf {enabled}(G)}\), iff (a) \(e \in \mathsf {In}{}\) and (b) \(\mathsf {In}{}\cap \mathord {(\mathrel {\rightarrow \bullet }e)} \subseteq \mathsf {Ex}\).

Definition 46

(Execution) Let \(G=(\mathsf {E}, \mathsf {R}, \mathsf {M})\) be a DCR graph with marking \(\mathsf {M}=(\mathsf {Ex},\mathsf {Re},\mathsf {In})\). Suppose \(e\in {\mathsf {enabled}(G)}\). We may execute e obtaining the resulting DCR graph \((\mathsf {E}, \mathsf {R}, \mathsf {M}^{\prime })\) with \(\mathsf {M}^{\prime } =(\mathsf {Ex}^{\prime },\mathsf {Re}^{\prime },\mathsf {In}^{\prime })\) defined as follows.

  1. 1.

    \(\mathsf {Ex}^{\prime } = \mathsf {Ex}\cup \{e\}\)

  2. 2.

    \(\mathsf {Re}^{\prime } = (\mathsf {Re}\backslash \{e\}) \cup \mathord {(e\mathrel {\bullet \rightarrow })}\)

  3. 3.

    \(\mathsf {In}^{\prime } = (\mathsf {In}\backslash \mathord {(e\mathrel {\rightarrow \%})}) \cup \mathord {(e\mathrel {\rightarrow +})}\)

Definition 47

(Transitions) Let G be a DCR graph. If \(e\in {\mathsf {enabled}(G)}\) and executing e in G yields H, we say that G has transition on e to H and write \({G}\xrightarrow {e}{H}\). A run of G is a (finite or infinite) sequence of DCR graphs \(G_i\) and events \(e_i\) such that: \(G = {G_0}\xrightarrow {e_0}{{G_1}\xrightarrow {e_1}{\ldots }}\). A trace of G is a sequence of labels of events \(e_i\) associated with a run of G. We write \(\mathop {\mathsf {runs}}(G)\) and \(\mathop {\mathsf {traces}}(G)\) for the set of runs and traces of G, respectively

Definition 48

(Acceptance) A run \({G_0}\xrightarrow {e_0}{{G_1}\xrightarrow {e_1}{\ldots }} \) is accepting iff for all n with \(e \in \mathsf {In}(G_n)\cap \mathsf {Re}(G_n)\) there exists \(m\ge n\) s.t. either \(e_m = e\), or \(e\not \in \mathsf {In}(G_{m})\). A trace is accepting iff it has an underlying run which is.

Definition 49

(Language) The language of a DCR graph G is the set of its accepting traces. We write \(\mathop {\mathsf {lang}}({G})\) for the language of G.

This concludes our recap of DCR graphs (as opposed to DCR processes). Now, the proof.

Definition 50

Let TU be terms. Define \(T\cong U\) by taking for \(\mathcal R\) ranging over the four relations

$$\begin{aligned} { e\, \mathcal{R} \,f }\, \parallel e \,\mathcal{R} \,f \cong e \,\mathcal{R}\, f \end{aligned}$$
(8)

and closing under monoid laws for \(- \parallel -\) and \(0\).

Lemma 51

If \(T\cong U\) then \({T}\xrightarrow {e}{T^{\prime }}\) and \({U}\xrightarrow {e}{U^{\prime }}\) implies \(T^{\prime }\cong U^{\prime }\).

Proof

It is straightforward to verify that the monoid laws and the idempotency rule (8) defining \(\cong \) preserves transition in the above sense; the desiderata follows.

Definition 52

Observe that by the monoid laws, every term T can be read as a multi-set of relations; by the idempotency rule (8), it can be read as a set of relations. Write \(\bar{T}\) for this set. For a process \(P=[{M}]\;{T}\), take \(\bar{P} = [{M}]\;{\bar{T}}\).

Definition 53

Let \(P=[{M}]\;{T}\) be a process and \(G=(\mathsf {E}, \mathsf {R}, \mathsf {M})\) a graph. Define \(P\approx G\) iff

  1. 1.

    \(\mathsf {E}= \mathsf {dom}(M)\)

  2. 2.

    for all \(e\in \mathsf {E}\) we have \(M(e)=(h,i,r) \) iff \(h=(e\in \mathsf {Ex})\) and \(i=(e\in \mathsf {In})\) and \(r=(e\in \mathsf {Re})\).

  3. 3.

    \(\bar{T} = \mathsf {R}\).

Lemma 54

Let P be a process and G a graph s.t. \(P \approx G\). For all e, if \({P}\xrightarrow {e}{P^{\prime }}\) then for some \(G^{\prime }\) we have \({G}\xrightarrow {e}{G^{\prime }}\) with \(P^{\prime }\approx G^{\prime }\); and vice versa.

Proof

By Lemma 51 it is sufficient to prove this result for \(\bar{P}\). Assume \(\bar{P} =[{M}]\;{\bar{T}}\) and \(G=(\mathsf {E}, \mathsf {R}, \mathsf {M})\). We proceed by induction on the number of relations k in \(\bar{T}=\mathsf {R}\).

For \(k=0\), clearly \(P^{\prime }=[{{e}\cdot {M}}]\;{T}\) and \(G^{\prime }= (\mathsf {Ex}\cup \{e\},\mathsf {In},\mathsf {Re})\); the result follows.

For \(k=1\), straightforward verification by cases on the single relation.

For \(k>1\), we must have \(T=\bar{T}_1 \parallel \bar{T}_2\) and \(\mathsf {R}=\bar{T_1}\cup \bar{T_2}\) such that the number of relations in \(\bar{T}_j\) are both smaller than k. Define \(G_j= (\mathsf {E}, \bar{T_j},\mathsf {M})\). Note that if \({P}\xrightarrow {e}{P'}\) then we must have

$$\begin{aligned} \frac{ {[{M}]\;{\bar{T}_1}}\xrightarrow {e:\delta _1}{\bar{T}_1} \qquad {[{M}]\;{\bar{T}_2}}\xrightarrow {e:\delta _2}{\bar{T}_2} }{ {[{M}]\;{\bar{T}_1 \parallel \bar{T}_2}}\xrightarrow {e : \delta _1 \oplus \delta _2}{\bar{T}_1 \parallel \bar{T}_2} } \end{aligned}$$
(9)

In this case we have by induction that \(G_j={(\mathsf {E}, \bar{T_j},\mathsf {M})}\xrightarrow {e}{(}{\mathsf {E}, \bar{T_j},\mathsf {M}^{\prime }_j}) = G_j^{\prime }\) for \(j\in \{1,2\}\).

We show first that e is enabled in P iff it is in Q. Suppose e is enabled in P. By (9), e is then enabled in \([{M}]\;{T_1}\) and \([{M}]\;{T_2}\). By induction, it is then enabled in \(G_1,G_2\), and by calculation on Definition 45 it is also enabled in G. Now suppose instead e is enabled in G. By Definition 45, e is also enabled in \(G_1,G_2\). By induction, e is enabled in \([{M}]\;{\bar{T}_1}\) and \([{M}]\;{\bar{T}_2}\). It follows by the [par]-rule that e is enabled in P.

Now suppose we have transitions \({P}\xrightarrow {e}{P^{\prime }}\) and \({G}\xrightarrow {e}{G'}\). As noted we must have (9); by [effect] we have transitions

$$\begin{aligned} {[{M}]\;{\bar{T}_1}}\xrightarrow {e}{[{{e:\delta }\cdot {M}}]\;{\bar{T}_1}} \quad \text {and} \quad {[{M}]\;{\bar{T}_2}}\xrightarrow {e}{[{{e:\delta }\cdot {M}}]\;{\bar{T}_2}} \end{aligned}$$
(10)

By induction we must have transitions

$$\begin{aligned} {G_1}\xrightarrow {e}{G_1^{\prime }} \quad \text {and}\quad {G_2}\xrightarrow {e}{G_2^{\prime }} \end{aligned}$$
(11)

We prove that \(P^{\prime }\approx G^{\prime }\). Items (1) and (3) of Definition 53 are immediate, so it is sufficient to show Item (2). Let \(M_h(x) = h\) when \(M(x) = (h,i,r)\); similarly for ir. It is straightforward to verify using (10) and (11) that each of the following leads to a contradiction:

  1. 1.

    \(M_h(f)\not =(f\in \mathsf {Ex}^{\prime })\), or

  2. 2.

    \(M_i(f)\not =(f\in \mathsf {In}^{\prime })\), or

  3. 3.

    \(M_r(f)\not =(f\in \mathsf {Re}^{\prime })\).

Theorem 55

The relation \(\approx \) is a bisimulation.

Proof

Immediate from Lemma 54.

Corollary 56

Let P be a process and G a graph. Then \(P\approx G\) implies \(\mathop {\mathsf {lang}}({P}) = \mathop {\mathsf {lang}}({G})\).

Proof

Using Lemma 54, it is clear that a run of P gives rise to a run of G and vice versa. It is sufficient to show that such a runs is accepting for P iff it is for G; this is immediate by inspection of Definitions 2 and 48.

Proof of Proposition 6

Immediate from Theorem 55 and Corollary 56.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Debois, S., Hildebrandt, T.T. & Slaats, T. Replication, refinement & reachability: complexity in dynamic condition-response graphs. Acta Informatica 55, 489–520 (2018). https://doi.org/10.1007/s00236-017-0303-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-017-0303-8

Navigation