Skip to main content

Extensions to Hybrid Event-B to Support Concurrency in Cyber-Physical Systems

  • Conference paper
  • First Online:
Model and Data Engineering (MEDI 2018)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 11163))

Included in the following conference series:

Abstract

Event-B is one of the most commonly used rigorous methods that has proven its value in many applications. To support the development of cyber-physical systems (CPS) continuous extensions to the method have already been proposed and extensions to supporting tools are under development. In this paper further extensions are proposed addressing the need to support asynchronous behaviour of autonomous components in CPS. This can be accomplished by multiple Event-B machines with a semantics defined by concurrent runs, which preserve the semantics of single Event-B machines. This makes only sense, if shared locations are supported as well. A third extension covers partial updates, by means of which conflicting updates to shared locations with bulk data values such as sets or relations that are predominant in Event-B are avoided.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    See [24] for a survey on foundations of CPS.

  2. 2.

    In this paper we disregard extensions concerning unbounded parallelism [16] that is supported by parallel ASMs and can be integrated with concurrency. Unbounded parallelism is not supported by Event-B.

  3. 3.

    This implies further that parallel assignments are sufficient, and every sequential ASM can be normalised in a way that the bounded parallel constructor only applies to assignments. It further gives a theoretical underpinning for the translations between Event-B machines and sequential ASMs investigated in [21].

  4. 4.

    For details and concrete syntax we refer to [2].

  5. 5.

    Usually, the resulting state should not depend on the chosen state, so we could use a state, in which all state variables are undefined.

  6. 6.

    Note that there is a slight discrepancy between the intended reactive semantics of Event-B and the fact that only a single enabled event is selected for execution. One might argue that by observing the guards of events, an event should always be executed once it becomes enabled. However, this requires to deal with synchronous or asynchronous parallelism, which is deliberately avoided in Event-B. In this paper we do not intend to question fundamental decisions concerning the semantics of Event-B, but we provide extensions that will address some of the issues, while the semantics of single Event-B machines will be preserved.

  7. 7.

    Mathematically speaking this requires the set of states to carry the structure of a topological space.

  8. 8.

    Note that terms of the form \(@ x. \varphi \) denoting an arbitrary value x satisfying \(\varphi \) are already present in Event-B. Both kinds of terms were originally introduced by David Hilbert—using j instead of \(\mathbf {I}\) and \(\epsilon \) instead of @. Our change of notation is in accordance with the use of \(\mathbf {I}\) in Fourman’s formalisation of higher-order intuitionistic logic and the use of ANY in Event-B.

  9. 9.

    Actually, in doing so Banach extends Event-B without defining the semantics of the extension.

  10. 10.

    It has been argued that simultaneous access to shared locations by different machines is physically impossible. Consequently, the set \(\hat{I}_i \subseteq I\) of indices of those machines that finish their step in \(S_{i+1}\) should always contain only one element j.

  11. 11.

    The whole LG_System and all components are formally defined by so-called block types in the CyPHER method (see [12, 13]).

  12. 12.

    However, if concurrent runs are restricted to permit only a single machine \(\mathcal {M}_j\) to finalise its latest step in state \(S_{i+1}\), then it is impossible to have clashes.

  13. 13.

    In fact, interleaving expresses parallelism by sequentialisation, which is not exactly what happens in reality. For systems with a sequential implementation—this includes all those built at the time the notion of interleaving was invented—this may be acceptable, for truly asynchronous systems—this includes all distributed systems with multiple processors spread over a network—this workaround is not needed, but in contrast counter-productive.

References

  1. Abrial, J.-R.: The B-book - Assigning Programs to Meanings. Cambridge University Press, Cambridge (2005)

    MATH  Google Scholar 

  2. Abrial, J.-R.: Modeling in Event-B - System and Software Engineering. Cambridge University Press, New York (2010)

    Book  Google Scholar 

  3. Abrial, J.-R., Butler, M., Hallerstede, S., Leuschel, M., Schmalz, M., Voisin, L.: Proposals for mathematical extensions for Event-B. Technical report (2010). http://deploy-eprints.ecs.soton.ac.uk/216/

  4. Banach, R.: Issues in automated urban train control: ‘Tackling’ the rugby club problem. In: Butler, M., Raschke, A., Hoang, T.S., Reichl, K. (eds.) ABZ 2018. LNCS, vol. 10817, pp. 171–186. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-91271-4_12

    Chapter  Google Scholar 

  5. Banach, R.: Core hybrid event-B I: single hybrid event-B machines. Sci. Comput. Program. 105, 92–123 (2015)

    Article  Google Scholar 

  6. Banach, R., Zhu, H., Su, W., Wu, X.: ASM, controller synthesis, and complete refinement. Sci. Comp. Progr. 94, 109–129 (2014)

    Article  Google Scholar 

  7. Boniol, F., Wiels, V.: The landing gear system case study. In: Boniol, F., Wiels, V., Ait Ameur, Y., Schewe, K.-D. (eds.) ABZ 2014. CCIS, vol. 433, pp. 1–18. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-07512-9_1

    Chapter  Google Scholar 

  8. Börger, E., Schewe, K.-D.: Concurrent abstract state machines. Acta Informatica 53(5), 469–492 (2016)

    Article  MathSciNet  Google Scholar 

  9. Börger, E., Schewe, K.-D.: Communication in abstract state machines. J. Univ. Comp. Sci. 23(2), 129–145 (2017)

    MathSciNet  Google Scholar 

  10. Börger, E., Stärk, R.: Abstract State Machines. Springer, Heidelberg, New York (2003)

    Book  Google Scholar 

  11. Buga, A., Mashkoor, A., Nemeş, S.T., Schewe, K.-D., Songprasop, P.: Conceptual modelling of hybrid systems. In: Ouhammou, Y., Ivanovic, M., Abelló, A., Bellatreche, L. (eds.) MEDI 2017. LNCS, vol. 10563, pp. 277–290. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66854-3_21

    Chapter  Google Scholar 

  12. Buga, A., Mashkoor, A., NemeÅŸ, S.T., Schewe, K.-D., Songprasop, P.: An Event-B-based approach to hybrid systems engineering and its application to a hemodialysis machine case study. In: Computer Languages - Systems and Structures (2018, to appear)

    Google Scholar 

  13. Buga, A., Nemeş, S.T., Schewe, K.-D., Songprasop, P.: A conceptual model for systems engineering and its formal foundation. In: Sornlertlamvanich, V., et al. (eds.) Information Modelling and Knowledge Bases XXIX (EJC 2017). Frontiers in Artificial Intelligence and Applications, vol. 301, pp. 1–20. IOS Press (2017)

    Google Scholar 

  14. Dupont, G., Aït-Ameur, Y., Pantel, M., Singh, N.K.: Proof-based approach to hybrid systems development: dynamic logic and event-B. In: Butler, M., Raschke, A., Hoang, T.S., Reichl, K. (eds.) ABZ 2018. LNCS, vol. 10817, pp. 155–170. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-91271-4_11

    Chapter  Google Scholar 

  15. Farahbod, R., Gervasi, V., Glässer, U.: CoreASM: an extensible ASM execution engine. Fundamenta Informaticae 77(1–2), 71–103 (2007)

    MathSciNet  MATH  Google Scholar 

  16. Ferrarotti, F., Schewe, K.-D., Tec, L., Wang, Q.: A new thesis concerning synchronised parallel computing - simplified parallel ASM thesis. Theor. Comput. Sci. 649, 25–53 (2016)

    Article  MathSciNet  Google Scholar 

  17. Gargantini, A., Riccobene, E., Scandurra, P.: A metamodel-based language and a simulation engine for Abstract State Machines. J. Univ. Comp. Sci. 14(12), 1949–1983 (2008)

    Google Scholar 

  18. Gurevich, Y.: Sequential abstract state machines capture sequential algorithms. ACM Trans. Comput. Logic 1(1), 77–111 (2000)

    Article  MathSciNet  Google Scholar 

  19. Lamport, L.: Specifying Systems, the TLA\(^+\) Language and Tools for Hardware and Software Engineers. Addison-Wesley, Boston (2002)

    Google Scholar 

  20. Lecomte, T., Deharbe, D., Prun, E., Mottin, E.: Applying a formal method in industry: a 25-year trajectory. In: Cavalheiro, S., Fiadeiro, J. (eds.) SBMF 2017. LNCS, vol. 10623, pp. 70–87. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70848-5_6

    Chapter  Google Scholar 

  21. Leuschel, M., Börger, E.: A compact encoding of sequential ASMs in event-B. In: Butler, M., Schewe, K.-D., Mashkoor, A., Biro, M. (eds.) ABZ 2016. LNCS, vol. 9675, pp. 119–134. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33600-8_7

    Chapter  Google Scholar 

  22. Leuschel, M., Butler, M.J.: ProB: an automated analysis toolset for the B method. STTT 10(2), 185–203 (2008)

    Article  Google Scholar 

  23. Mashkoor, A.: The hemodialysis machine case study. In: Butler, M., Schewe, K.-D., Mashkoor, A., Biro, M. (eds.) ABZ 2016. LNCS, vol. 9675, pp. 329–343. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33600-8_29

    Chapter  Google Scholar 

  24. Platzer, A.: Analog and hybrid computation: dynamical systems and programming languages. Bull. EATCS 114, 152–199 (2014)

    MathSciNet  Google Scholar 

  25. Schellhorn, G., Ernst, G., Pfähler, J., Bodenmüller, S., Reif, W.: Symbolic execution for a clash-free subset of ASMs. Sci. Comput. Program. 158, 21–40 (2018)

    Article  Google Scholar 

  26. Schewe, K.-D., Ferrarotti, F., Tec, L., Wang, Q.: Towards a behavioural theory for random parallel computing. In: Beierle, C., Brewka, G., Thimm, M. (eds.) Computational Models of Rationality - Essays Dedicated to Gabriele Kern-Isberner on the Occasion of her 60th Birthday, Tributes, vol. 29, pp. 365–373. College Publications (2016)

    Google Scholar 

  27. Schewe, K.-D., Wang, Q.: Partial updates in complex-value databases. In: Heimbürger, A., et al., (eds.) Information and Knowledge Bases XXII. Frontiers in Artificial Intelligence and Applications, vol. 225, pp. 37–56. IOS Press (2011)

    Google Scholar 

  28. Su, W., Abrial, J.-R., Zhu, H.: Formalizing hybrid systems with event-B and the Rodin platform. Sci. Comput. Program. 94, 164–202 (2014)

    Article  Google Scholar 

  29. Thalheim, B.: Entity-Relationship Modeling - Foundations of Database Technology. Springer, Heidelberg (2000)

    Book  Google Scholar 

  30. Voisin, L., Abrial, J.R.: The Rodin platform has turned ten. In: Ait Ameur, Y., Schewe, K.D. (eds.) Abstract State Machines, Alloy, B, TLA, VDM, and Z. ABZ 2014. Lecture Notes in Computer Science, vol. 8477, pp. 1–8. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-43652-3_1

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Klaus-Dieter Schewe .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Schewe, KD. (2018). Extensions to Hybrid Event-B to Support Concurrency in Cyber-Physical Systems. In: Abdelwahed, E., Bellatreche, L., Golfarelli, M., Méry, D., Ordonez, C. (eds) Model and Data Engineering. MEDI 2018. Lecture Notes in Computer Science(), vol 11163. Springer, Cham. https://doi.org/10.1007/978-3-030-00856-7_28

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-00856-7_28

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-00855-0

  • Online ISBN: 978-3-030-00856-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics