Abstract
The extended hierarchical state transition matrices (EHSTMs) are a table-based modelling language frequently used in industry for specifying behaviours of systems. However, assuring correctness, i.e., having a design satisfy certain desired properties, is a non-trivial task. To address this problem, a model checker dedicated to EHSTMs called Garakabu2 has been developed. However, there is no formal justification for Garakabu2, since its semantics has never been fully formalised. In this paper, we give a formal semantics to EHSTMs by translating them into CSP, Communicating Sequential Processes. Among the variants of CSP, we use CSP#, which is the modelling language used by PAT model checker, as a target of translation. Our semantics covers most of the features supported by Garakabu2. We manually translate the small examples of EHSTMs to CSP#, and verify them by PAT. We also verify the examples directly using Garakabu2 and show that the results are same. The experiments also indicate that verification using our translation and PAT is much faster than that of Garakabu2 in some cases.
Similar content being viewed by others
References
Japan Embedded System Technology Association. A tentative report on questionnaires of spread of design methods 2011 (Japanese). et2010_questionnaire.pdf file on JASA web site, 2012.
Biere A, Cimatti A, Clarke E, Zhu Y (1999) Symbolic model checking without BDDs. In: 5th TACAS. Springer, Berlin, pp 193–207
Burch JR, Clarke EM, McMillan KL, Dill DL, Hwang LJ: Symbolic model checking: 1020 states and beyond. Inf Comput 98(2), 142–170 (1992)
Bhaduri P, Ramesh S (2004) Model checking of statechart models: survey and research directions. CoRR, cs.SE/0407038
Barrett C, Sebastiani R, Seshia S, Tinelli C (2011) Handbook of Satisfiability, chapter 26. Elsevier, Amsterdam, pp 825–885
Barrett C, Tinelli C (2007) CVC3. In: 19th CAV. Springer, Berlin, pp 298–302
Katoen J-P, Baier C: Principle of model checking. The MIT Press, London (2008)
Clarke E, Grumberg O, Peled D: Model Checking. MIT Press, London (1999)
Groote JF, Mathijssen A, ReniersHelle MA, Usenko YS, van Weerdenburg M (2007) The formal specification language mCRL2. In: Proceedings of methods for modelling software systems, volume 06351 of Dagstuhkl Seminar
Hansen HH, Ketema J, Luttik B, Mousavi MR, van de Pol J (2010) Towards model checking executable UML specifications in mCRL2. ISSE 6(1–2):83–90
Harel D, Naamad A: The STATEMATE semantics of statecharts. ACM Trans Softw Eng Methodol 5(4), 293–333 (1996)
Hoare CAR (2004) Communicating sequential processes, vol 9, viii+256 p. By C.A.R. Hoare, Prentice-Hall International, London, 1985
Holzmann GJ: The model checker SPIN. IEEE Trans Softw Eng 23(5), 279–295 (1997)
Holzmann GJ: The SPIN model checker: primer and reference manual. Addison-Wesley, Reading (2008)
Kong W, Katahira N, Qian W, Watanabe M, Katayama T, Fukuda A (2011) An SMT-based approach to bounded model checking of designs in communicating state transition matrix. In: IEEE CS, 11th ICCSA, pp 159–167.
Kong W, Liu L, Yamagata Y, Taguchi K, Ohsaki H, Fukuda A (2012) On accelerating SMT-based bounded model checking of HSTM designs. In: IEEE CS, 19th APSEC, pp 614–623
Koike T (2008) Model checking support environment based on state transition matrix. IPSJ SIG Technical Report
Kong W, Shiraishi T, Katahira N, Watanabe M, Katayama T, Fukuda A: An SMT-based approach to bounded model checking of design in state transition matrix. IEICE Trans Inform Syst E 94(D(5), 946–957 (2011)
Liu Y, Sun J, Dong J (2011) PAT3: An extensible architecture for building multi-domain model checkers. In: IEEE, 22th ISSRE, pp 190–199
Mellor SJ, Balcer MJ: Executable UML: a foundation for model-driven architecture. Addison Wesley, Reading (2002)
Ng MY, Butler M (2003) Towards formalizing UML state diagrams in CSP. In: IEEE CS, 1st SEFM, pp 138–147
Nomura T (2009) Trial of model checking by spreadsheet. In: SQiP Symposium, pp 1–4
Roscoe AW, Hoare CAR, Bird (1998) The theory and practice of concurrency, volume 216. Prentice Hall, Upper Saddle River
Sun J, Liu Y, Dong JS (2009) Model checking CSP revisited: introducing a process analysis toolkit. Leveraging Applications of Formal Methods, Verification and Validation. IEEE Computer Society, Los Alamitos, pp 307–322
Sun J, Liu Y, Dong JS, Pang J (2009) PAT: towards flexible verification under fairness. In: 21th CAV, volume 5643 of LNCS. Springer, Berlin, pp 709–714
Sekerinski E, Zurob R (2002) Translating Statecharts to B. In: 3rd IFM, volume 2335 of LNCS. Springer, Berlin, pp 128–144
Uselton A, Smolka SA (1994) A compositional semantics for statecharts using labeled transition systems. CONCUR’94: concurrency Theory
Watanabe M (1998) Extended hierarchy state transition matrix design method-version 2.0. Technical report, CATS Technical Report
Zhang SJ, Liu Y (2010) An automatic approach to model checking UML state machines. In: IEEE, 4th SSIRI, pp 1–6
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by I. Perseil, P. Gibson, and J. Woodcock
Rights and permissions
About this article
Cite this article
Yamagata, Y., Kong, W., Fukuda, A. et al. A formal semantics of extended hierarchical state transition matrices using CSP#. Form Asp Comp 26, 943–962 (2014). https://doi.org/10.1007/s00165-013-0282-7
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-013-0282-7