Skip to main content
Log in

Parameter synthesis for hierarchical concurrent real-time systems

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

Modeling and verifying complex real-time systems, involving timing delays, are notoriously difficult problems. Checking the correctness of a system for one particular value for each delay does not give any information for other values. It is thus interesting to reason parametrically, by considering that the delays are parameters (unknown constants) and synthesizing a constraint guaranteeing a correct behavior. We present here Parametric Stateful Timed Communicating Sequential Processes, a language capable of specifying and verifying parametric hierarchical real-time systems with complex data structures. Although we prove that the synthesis is undecidable in general, we present several semi-algorithms for efficient parameter synthesis, which behave well in practice. This work has been implemented in a real-time model checker, PSyHCoS, and validated on a set of case studies.

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

Similar content being viewed by others

Notes

  1. For example, the PTA model of the SPSMALL memory (Chevallier et al. 2009) is made of 10 PTA in parallel, but only 31 symbolic states are reachable according to the semantics of Alur et al. (1993). Due to the static composition of PTA, HyTech crashes by memory overflow even before starting the actual exploration; in contrast, Imitator (André et al. 2012a) finishes the analysis within 0.079 s while using only 3.1 MiB of memory. Details are available in http://www.lsv.ens-cachan.fr/Software/imitator/hytech/.

  2. A semi-algorithm is a procedure that may not terminate but, if it does, then its result is correct.

  3. In the literature related to parametric timed systems, constants are either in the real or the rational domain. Here, to maintain consistency with STCSP (Sun et al.  2013), where constants are defined in \({\mathbb {R}}_{+}\), we choose reals.

  4. An alternative could be \(u\in (U\cup {\mathbb {R}}_{+})\). Our implementation actually allows the definition of either constants or parameters in the timed constructs, but defining \(u\in U\) simplifies the subsequent reasoning and proofs.

  5. For simplicity, in the following, we leave out general and internal choices from the classic CSP (Hoare 1985). The terminology is a little ambiguous in the literature: We assume that a general choice (\(P \ |\ Q\)) can be resolved by an occurrence of any event; an external choice (\(P \ {\square }\ Q\)) can be resolved only by visible events (not \(\tau \)); and an internal choice (\(P \ {\diamond }\ Q\)) is resolved “immediately”, hence cannot be delayed (which generates a \(\tau \)-transition). Although we only consider external choice in the following, all three constructions implemented in PSyHCoS, and used in our case studies.

  6. This example is a parametrization of the example from Sun et al. (2013, p. 3:5).

  7. In parametric timed automata (Jovanovic et al. 2013), the notion of reachable state is based on locations, viz., discrete control states. In PSTCSP, there are no such discrete control states; hence, we could define reachability based on a variable valuation, on a given process, or a combination of both. We choose here the first option to simplify the proof, but our results extend directly to the two other cases (see Remark 3).

  8. For timed systems, the state space is always infinite because of dense time. Here, we mean that the number of (symbolic) states \((V, P, C)\) is infinite too.

  9. The test \( Post _{\mathsf {M}}(S) \subseteq S\) is a classical fixpoint test given in an algorithmic manner. Here, one does not know yet whether \( Post _{\mathsf {M}}(S) \subseteq S\), since \( Post _{\mathsf {M}}(S)\) will be computed at the next iteration. In practice, this is handled using a set of “old” states (computed at previous iterations), and a set of “new” states (computed at the current iteration).

  10. In theory, nothing guarantees that the maximum number of clocks is the same for \( reachAll \), \( reachAll +\), \( IM \) and \( IM +\). Nevertheless, since it is always the same for all experiments, we factor it to save some space in the columns.

  11. Recall that \( IM \) does not need to maintain transitions. Hence, the transition number for \( IM \) and \( IM +\) is only an integer maintained within the program for statistics purpose.

  12. http://lipn.univ-paris13.fr/~andre/software/PSyHCoS/.

References

  • Aceto L, Bouyer P, Burgueño A, Larsen KG (1998a) The power of reachability testing for timed automata. In: Arvind V, Ramanujam R (eds) FSTTCS, lecture notes in computer science, vol 1530. Springer, Berlin, pp 245–256

    Google Scholar 

  • Aceto L, Burgueño A, Larsen KG (1998b) Model checking via reachability testing for timed automata. In: Steffen B (ed) TACAS, lecture notes in computer science, vol 1384. Springer, Berlin, pp 263–280

    Google Scholar 

  • Adbeddaïm Y, Maler O (2002) Preemptive job-shop scheduling using stopwatch automata. In: Katoen JP, Stevens P (eds) TACAS, lecture notes in computer science, vol 2280. Springer, Berlin, pp 113–126

  • Adbeddaïm Y, Asarin E, Maler O (2006) Scheduling with timed automata. Theor Comput Sci 354(2):272–300

  • Akshay S, Hélouët L, Jard C, Reynier PA (2012) Robustness of time Petri nets under guard enlargement. RP, lecture notes in computer science, vol 7550. Springer, Berlin, pp 92–106

  • Alur R, Dill DL (1994) A theory of timed automata. Theor Comput Sci 126(2):183–235

    Article  MathSciNet  MATH  Google Scholar 

  • Alur R, Madhusudan P (2004) Decision problems for timed automata: a survey. In: Bernardo M, Corradini F (eds) SFM-RT, lecture notes in computer science, vol 3185. Springer, Berlin, pp 1–24

    Google Scholar 

  • Alur R, Henzinger TA, Vardi MY (1993) Parametric real-time reasoning. In: Kosaraju SR, Johnson DS, Aggarwal A (eds) Proceedings of the twenty-fifth annual ACM symposium on theory of computing, 16–18 May 1993, San Diego, CA. ACM

  • André É (2010) An inverse method for the synthesis of timing parameters in concurrent systems. Ph.d. thesis, Laboratoire Spécification et Vérification, ENS Cachan, France

  • André É (2013) Observer patterns for real-time systems. In: Liu Y, Martin A (eds) ICECCS. IEEE Computer Society, Washington, DC, pp 125–134

    Google Scholar 

  • André É, Soulat R (2013) The inverse method. FOCUS series in computer engineering and information technology. ISTE Ltd and John Wiley & Sons Inc

  • André É, Chatain T, Encrenaz E, Fribourg L (2009) An inverse method for parametric timed automata. Int J Found Comput Sci 20(5):819–836

    Article  MATH  Google Scholar 

  • André É, Fribourg L (2010) Behavioral cartography of timed automata. In: Kučera A, Potapov I (eds) RP, lecture notes in computer science, vol 6227. Springer, Berlin, pp 76–90

    Google Scholar 

  • André É, Fribourg L, Kühne U, Soulat R (2012a) IMITATOR 2.5: a tool for analyzing robustness in scheduling problems. In: FM, lecture notes in computer science, vol 7436. Springer, Berlin, pp 33–36

  • André É, Liu Y, Sun J, Dong JS (2012b) Parameter synthesis for hierarchical concurrent real-time systems. In: Perseil I, Pouzet M, Breitman K (eds) ICECCS. IEEE Computer Society, Washington, DC, pp 253–262

    Google Scholar 

  • André É, Fribourg L, Soulat R (2013a) Merge and conquer: state merging in parametric timed automata. In: Hung DV, Ogawa M (eds) ATVA, lecture notes in computer science, vol 8172. Springer, Berlin, pp 381–396

    Google Scholar 

  • André É, Liu Y, Sun J, Dong JS, Lin SW (2013b) PSyHCoS: parameter synthesis for hierarchical concurrent real-time systems. In: Sharygina N, Veith H (eds) CAV, lecture notes in computer science, vol 8044. Springer, Berlin, pp 984–989

    Google Scholar 

  • André É, Petrucci L, Pellegrino G (2013c) Precise robustness analysis of time Petri nets with inhibitor arcs. In: Braberman V, Fribourg L (eds) FORMATS, lecture notes in computer science, vol 8053. Springer, Berlin, pp 1–15

    Google Scholar 

  • Annichini A, Bouajjani A, Sighireanu M (2001) TReX: a tool for reachability analysis of complex systems. CAV, lecture notes in computer science, vol 2102. Springer, Berlin, pp 368–372

    Google Scholar 

  • Asarin E, Maler O, Pnueli A (1998) On discretization of delays in timed automata and digital circuits. CONCUR, lecture notes in computer science, vol 1466. Springer, Berlin, pp 470–484

    Google Scholar 

  • Bagnara R, Hill PM, Zaffanella E (2008) The Parma Polyhedra Library: toward a complete set of numerical abstractions for the analysis and verification of hardware and software systems. Sci Comput Program 72(1–2):3–21

    Article  MathSciNet  Google Scholar 

  • Baier C, Katoen JP (2008) Principles of model checking. MIT Press, Cambridge, MA

    MATH  Google Scholar 

  • Behrmann G, Larsen KG, Rasmussen JI (2005) Beyond liveness: efficient parameter synthesis for time bounded liveness. FORMATS, lecture notes in computer science, vol 3829. Springer, Berlin, pp 81–94

    Google Scholar 

  • Bengtsson J, Yi W (2004) Timed automata: semantics, algorithms and tools. Lectures on concurrency and Petri Nets, lecture notes in computer science, vol 3098. Springer, Berlin, pp 87–124

    Chapter  Google Scholar 

  • Bérard B, Gastin P, Petit A (1996) On the power of non-observable actions in timed automata. STACS, lecture notes in computer science, vol 1046. Springer, Berlin, pp 257–268

    Google Scholar 

  • Bérard B, Petit A, Diekert V, Gastin P (1998) Characterization of the expressive power of silent transitions in timed automata. Fundam Inform 36:145–182

    MATH  Google Scholar 

  • Bouyer P, Larsen KG, Markey N, Sankur O, Thrane CR (2011) Timed automata can always be made implementable. In: Katoen JP, König B (eds) CONCUR, lecture notes in computer science, vol 6901. Springer, Berlin, pp 76–91

    Google Scholar 

  • Bouyer P, Markey N, Sankur O (2012) Robust reachability in timed automata: a game-based approach. In: Czumaj A, Mehlhorn K, Pitts AM, Wattenhofer R (eds) ICALP 2012, lecture notes in computer science, vol 7392. Springer, Berlin, pp 128–140

    Google Scholar 

  • Bouyer P, Markey N, Sankur O (2013) Robustness in timed automata. In: Abdulla PA, Potapov I (eds) RP, lecture notes in computer science, vol 8169. Springer, Berlin, pp 1–18

    Google Scholar 

  • Bozzelli L, La Torre S (2009) Decision problems for lower/upper bound parametric timed automata. Form Methods Syst Des 35(2):121–151

    Article  MATH  Google Scholar 

  • Chaki S, Clarke EM, Ouaknine J, Sharygina N, Sinha N (2004) State/event-based software model checking. iFM, lecture notes in computer science, vol 2999. Springer, Berlin, pp 128–147

    Google Scholar 

  • Chevallier R, Encrenaz-Tiphène E, Fribourg L, Xu W (2009) Timed verification of the generic architecture of a memory circuit using parametric timed automata. Form Methods Syst Des 34(1):59–81

    Article  MATH  Google Scholar 

  • Clarisó R, Cortadella J (2007) The octahedron abstract domain. Sci Comput Program 64(1):115–139

    Article  MATH  Google Scholar 

  • Clarke EM, Grumberg O, Jha S, Lu Y, Veith H (2000) Counterexample-guided abstraction refinement. CAV. Springer, Berlin, pp 154–169

    Google Scholar 

  • Collomb-Annichini A, Sighireanu M (2001) Parameterized reachability analysis of the IEEE 1394 root contention protocol using TReX. In: RT-TOOLS

  • D’Argenio PR, Katoen JP, Ruys TC, Tretmans J (1997) The bounded retransmission protocol must be on time!. TACAS, lecture notes in computer science, vol 1217. Springer, Berlin, pp 416–431

    Google Scholar 

  • Davies J (1993) Specification and proof in real-time CSP. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

  • Dong JS, Hao P, Qin S, Sun J, Yi W (2008) Timed automata patterns. IEEE Trans Softw Eng 34(6):844–859

    Article  Google Scholar 

  • Encrenaz E, Fribourg L (2008) Time separation of events: an inverse method. LIX, electronic notes in theoretical computer science, vol 209. Elsevier Science Publishers, Palaiseau, pp 135–148

    Google Scholar 

  • Fidge CJ, Hayes IJ, Watson G (1999) The deadline command. IEE Proc Softw 146(2):104–111

    Article  Google Scholar 

  • Fribourg L, Lesens D, Moro P, Soulat R (2012) Robustness analysis for scheduling problems using the inverse method. TIME. IEEE Computer Society Press, Washington, DC, pp 73–80

    Google Scholar 

  • Henzinger TA, Wong-Toi H (1995) Using HyTech to synthesize control parameters for a steam boiler. Formal methods for industrial applications, lecture notes in computer science, vol 1165. Springer, Berlin, pp 265–282

    Chapter  Google Scholar 

  • Henzinger TA, Nicollin X, Sifakis J, Yovine S (1994) Symbolic model checking for real-time systems. Inf Comput 111(2):193–244

    Article  MathSciNet  MATH  Google Scholar 

  • Henzinger TA, Ho PH, Wong-Toi H (1997) HyTech: a model checker for hybrid systems. Softw Tools Technol Transf 1:460–463

    Google Scholar 

  • Hoare C (1985) Communicating sequential processes. Prentice-Hall, International series in computer science

    MATH  Google Scholar 

  • Hoenicke J, Olderog ER (2002) Combining specification techniques for processes, data and time. iFM, lecture notes in computer science, vol 2335. Springer, Berlin, pp 245–266

    Google Scholar 

  • Hune T, Romijn J, Stoelinga M, Vaandrager FW (2002) Linear parametric model checking of timed automata. J Log Algebr Program 52–53:183–220

    Article  MathSciNet  Google Scholar 

  • Jaubert R, Reynier PA (2011) Quantitative robustness analysis of flat timed automata. In: Hofmann M (ed) FoSSaCS, lecture notes in computer science, vol 6604. Springer, Berlin, pp 229–244

    Google Scholar 

  • Jovanovic A, Lime D, Roux OH (2013) Integer parameter synthesis for timed automata. In: Piterman N, Smolka SA (eds) TACAS, lecture notes in computer science, vol 7795. Springer, Berlin, pp 401–415

    Google Scholar 

  • Khatib L, Muscettola N, Havelund K (2001) Mapping temporal planning constraints into timed automata. TIME. IEEE Computer Society, Washington, DC, pp 21–27

    Google Scholar 

  • Knapik M, Penczek W (2012) Bounded model checking for parametric timed automata. Trans Petri Nets Other Models Concurr 5:141–159

    Article  Google Scholar 

  • Kwak HH, Lee I, Philippou A, Choi JY, Sokolsky O (1998) Symbolic schedulability analysis of real-time systems. IEEE RTSS. IEEE Computer Society, Washington, DC, pp 409–418

    Google Scholar 

  • Kwak HH, Lee I, Sokolsky O (1999) Parametric approach to the specification and analysis of real-time system designs based on ACSR-VP. Electron Notes Theor Comput Sci 25:38–49

    Article  Google Scholar 

  • Larsen KG, Pettersson P, Yi W (1997) UPPAAL in a nutshell. Int J Softw Tools Technol Transf 1(1–2):134–152

    Article  MATH  Google Scholar 

  • Lime D, Roux OH, Seidner C, Traonouez LM (2009) Romeo: a parametric model-checker for Petri nets with stopwatches. In: Kowalewski S, Philippou A (eds) TACAS, lecture notes in computer science, vol 5505. Springer, Berlin, pp 54–57

    Google Scholar 

  • Mahony BP, Dong JS (1999) Overview of the semantics of TCOZ. iFM. Springer, Berlin, pp 66–85

    Chapter  Google Scholar 

  • Markey N (2011) Robustness in real-time systems. SIES. IEEE Computer Society Press, Washington, DC, pp 28–34

    Google Scholar 

  • Minsky ML (1967) Computation: finite and infinite machines. Prentice-Hall Inc, Upper Saddle River, NJ

    MATH  Google Scholar 

  • Ouaknine J, Worrell J (2003a) Revisiting digitization, robustness, and decidability for timed automata. LICS. IEEE Computer Society, Washington, DC, pp 198–207

    Google Scholar 

  • Ouaknine J, Worrell J (2003b) Timed CSP = closed timed \(\epsilon \)-automata. Nord J Comput 10(2):99–133

    MathSciNet  MATH  Google Scholar 

  • Pnueli A (1977) The temporal logic of programs. FOCS. IEEE Computer Society, Washington, DC, pp 46–57

    Google Scholar 

  • Qin S, Dong JS, Chin WN (2003) A semantic foundation for TCOZ in unifying theories of programming. FME, lecture notes in computer science, vol 2805. Springer, Berlin, pp 321–340

    Google Scholar 

  • Roscoe AW (2001) Compiling shared variable programs into CSP. In: PROGRESS workshop

  • Sankur O (2013) Shrinktech: a tool for the robustness analysis of timed automata. In: Sharygina N, Veith H (eds) CAV, lecture notes in computer science, vol 8044. Springer, Berlin, pp 1006–1012

    Google Scholar 

  • Schneider S (2000) Concurrent and real-time systems. Wiley, Hoboken, NJ

    Google Scholar 

  • Schrijver A (1986) Theory of linear and integer programming. Wiley, Hoboken, NJ

    MATH  Google Scholar 

  • Sun J, Liu Y, Dong JS, Chen C (2009a) Integrating specification and programs for system modeling and verification. In: Chin WN, Qin S (eds) TASE. IEEE Computer Society, Washington, DC, pp 127–135

    Google Scholar 

  • Sun J, Liu Y, Dong JS, Pang J (2009b) PAT: towards flexible verification under fairness. CAV, lecture notes in computer science, vol 5643. Springer, Berlin, pp 709–714

    Google Scholar 

  • Sun J, Liu Y, Dong JS, Liu Y, Shi L, André É (2013) Modeling and verifying hierarchical real-time systems using stateful timed CSP. ACM Trans Softw Eng Methodol 22(1):3.1–3.29. doi:10.1145/2430536.2430537

    Article  Google Scholar 

  • Traonouez LM, Lime D, Roux OH (2009) Parametric model-checking of stopwatch Petri nets. J Univers Comput Sci 15(17):3273–3304

    MathSciNet  MATH  Google Scholar 

  • Traonouez LM (2012) A parametric counterexample refinement approach for robust timed specifications. FIT, electronic proceedings in theoretical computer science 87:17–33

    Article  Google Scholar 

  • Yi W, Pettersson P, Daniels M (1995) Automatic verification of real-time communicating systems by constraint-solving. FORTE, IFIP conference proceedings, vol 6. Chapman & Hall, London, pp 243–258

    Google Scholar 

  • Yoneda T, Kitai T, Myers CJ (2002) Automatic derivation of timing constraints by failure analysis. CAV, lecture notes in computer science, vol 2404. Springer, Berlin, pp 195–208

    Google Scholar 

Download references

Acknowledgments

We are grateful to the anonymous reviewers for their very constructive comments, and to Zhu Huiquan for solving several implementation issues in our model checking tool PSyHCoS. This manuscript also benefited from discussions with Didier Lime. We thank Emmanuelle Encrenaz and Laurent Fribourg for discussions regarding the comparison between Imitator and HyTech. Yang Liu is supported by ”Formal Verification on Cloud” project under Grant No: M4081155.020 and ”Verification of Security Protocol Implementations” project under Grant No: M4080996.020. Jun Sun is supported by research grant “IDD11100102 / IDG31100105” from Singapore University of Technology and Design. Jin-Song Dong is supported by MOE T2 Project “Advanced Model Checking Systems”. All four authors are supported by STIC Asie project “CATS (Compositional Analysis of Timed Systems)”. Étienne André is partially supported by the ANR national research program PACS (ANR-2014).

Author information

Authors and Affiliations

Authors

Appendix: A firing rules for PSTCSP

Appendix: A firing rules for PSTCSP

Given a program \( program \) and a valuation \(V\), the valuation obtained by executing \( program \) with \(V\) is denoted as \( program (V)\). Let \( active (V,P)\) be the set of enabled events given \(P\) and \(V\), i.e., the set of events that can be fired at the current state (and which lead to states with satisfiable constraints). We give below all firing rules for PSTCSP.

$$\begin{aligned} \dfrac{}{(V, \mathtt {Skip}, C) \mathop {\rightsquigarrow }\limits ^{\checkmark }(V, \mathtt {Stop}, {C}^{\uparrow })}(aki) \end{aligned}$$
$$\begin{aligned} \dfrac{}{(V, e \rightarrow P, C) \mathop {\rightsquigarrow }\limits ^{e} (V, P, {C}^{\uparrow })}(aev) \end{aligned}$$
$$\begin{aligned} \dfrac{}{(V, a\{ program \} \rightarrow P, C) \mathop {\rightsquigarrow }\limits ^{a} ( program (V), P, {C}^{\uparrow })}(aac) \end{aligned}$$
$$\begin{aligned} \dfrac{V \vDash b}{(V, \mathtt {if}~b~\mathtt {then}~\{ P \}~\mathtt {else}~\{ Q \}, C) \mathop {\rightsquigarrow }\limits ^{\tau } (V, P, {C}^{\uparrow })}(co2) \end{aligned}$$
$$\begin{aligned} \dfrac{V \not \vDash b}{(V, \mathtt {if}~b~\mathtt {then}~\{ P \}~\mathtt {else}~\{ Q \}, C) \mathop {\rightsquigarrow }\limits ^{\tau } (V, Q, {C}^{\uparrow })}(co3) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{e} (V', P', C')}{(V, P \ {\square }\ Q, C) \mathop {\rightsquigarrow }\limits ^{e} (V', P', C' \wedge idle (Q))}(aex1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, Q, C) \mathop {\rightsquigarrow }\limits ^{e} (V', Q', C)}{(V, P \ {\square }\ Q, C) \mathop {\rightsquigarrow }\limits ^{e} (V', Q', C' \wedge idle (P))}(aex2) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C')}{(V, P \ {\backslash } \, E, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C')}(ahi1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C') \ , \ \ active (V, P, C) \cap E\ne \emptyset \ , \ \ a \notin E}{(V, P \ {\backslash } \, E, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C' \wedge C)}(ahi2) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C'), active (V, P, C) \cap E\ne \emptyset \ , \ \ a \in E}{(V, P \ {\backslash } \, E, C) \mathop {\rightsquigarrow }\limits ^{\tau } (V', Q', C' \wedge C)}(ahi3) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a} (V', P', C') \ , \ \ \checkmark \notin active (V, P, C)}{(V, P; Q, C) \mathop {\rightsquigarrow }\limits ^{a} (V', P'; Q, C')}(ase1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{\checkmark } (V', P', C')}{(V, P; Q, C) \mathop {\rightsquigarrow }\limits ^{\tau } (V, Q, C \wedge C')}(ase2) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a} (V', P', C') \ , \ \ a \notin E}{(V, P \ [\![E ]\!]\ Q, C) \mathop {\rightsquigarrow }\limits ^{a} (V', P' \ [\![E ]\!]\ Q, C' \wedge idle (Q))}(apa1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, Q, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C') \ , \ \ a \notin E}{(V, P \ [\![E ]\!]\ Q, C) \mathop {\rightsquigarrow }\limits ^{a} (V', P \ [\![E ]\!]\ Q', C' \wedge idle (P))}(apa2) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{e} (V, P', C') \ , \ \ (V, Q, C) \mathop {\rightsquigarrow }\limits ^{e} (V, Q', C'') \ , \ \ e \in E}{(V, P \ [\![E ]\!]\ Q, C) \mathop {\rightsquigarrow }\limits ^{e} (V, P' \ [\![E ]\!]\ Q', C' \wedge C'')}(apa3) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, Q, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C') \ , \ \ P \doteq Q}{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a} (V', Q', C')}(ade) \end{aligned}$$
$$\begin{aligned} \dfrac{}{(V, \mathtt {Wait}{}[u]_x, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V, \mathtt {Skip}, {C}^{\uparrow } \wedge x= u)}(await) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V', P', C')}{(V, P~\mathtt {timeout} [u]_x~ Q, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V', P' ~\mathtt {timeout} [u]_x~ Q, C' \wedge x\le u)}(ato1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{e}(V', P', C')}{(V, P ~\mathtt {timeout} [u]_x~ Q, C) \mathop {\rightsquigarrow }\limits ^{e}(V', P', C' \wedge x\le u)}(ato2) \end{aligned}$$
$$\begin{aligned} \dfrac{}{(V, P~\mathtt {timeout} [u]_x~ Q, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V, Q, {C}^{\uparrow } \wedge x= u\wedge idle (P) ) }(ato3) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a}(V', P', C')}{(V, P~\mathtt {interrupt}[u]_x~ Q, C) \mathop {\rightsquigarrow }\limits ^{a}(V', P' ~\mathtt {interrupt}[u]_x~ Q, C' \wedge x\le u)}(ait1) \end{aligned}$$
$$\begin{aligned} \dfrac{}{(V, P~\mathtt {interrupt}[u]_x~ Q, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V, Q, {C}^{\uparrow } \wedge x= u\wedge idle (P))}(ait2) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V', P', C')}{(V, P~\mathtt {within}[u]_x, C) \mathop {\rightsquigarrow }\limits ^{\tau }(V', P'~\mathtt {within}[u]_x, C' \wedge x\le u)}(awi1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{e}(V', P', C')}{(V, P~\mathtt {within}[u]_x, C) \mathop {\rightsquigarrow }\limits ^{e}(V', P', C' \wedge x\le u)}(awi2) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{a}(V', P', C') \ , \ \ a \ne \checkmark }{(V, P~\mathtt {deadline} [u]_x, C) \mathop {\rightsquigarrow }\limits ^{a}(V', P'~\mathtt {deadline} [u]_x, C' \wedge x\le u)}(adl1) \end{aligned}$$
$$\begin{aligned} \dfrac{(V, P, C) \mathop {\rightsquigarrow }\limits ^{\checkmark }(V', P', C')}{(V, P~\mathtt {deadline} [u]_x, C) \mathop {\rightsquigarrow }\limits ^{\checkmark }(V', P', C' \wedge x\le u)}(adl2) \end{aligned}$$

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

André, É., Liu, Y., Sun, J. et al. Parameter synthesis for hierarchical concurrent real-time systems. Real-Time Syst 50, 620–679 (2014). https://doi.org/10.1007/s11241-014-9208-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-014-9208-6

Keywords

Navigation