Refinement and Proof Based Development of Systems Characterized by Continuous Functions

  • Guillaume BabinEmail author
  • Yamine Aït-Ameur
  • Shin Nakajima
  • Marc Pantel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9409)


The specification of cyber-physical systems usually relies on continuous functions over dense real numbers whereas their implementation is discrete. Proving the correctness of the discrete implementation with respect to the continuous specification remains a challenge in the presence of dense real numbers. In this paper, we propose a refinement-based formal method, relying on Event-B, for such developments. We illustrate our proposal with the development of a simple stability controller for a generic plant model. The continuous function that models the system behavior is refined as a discrete model of the same kind preserving stability expressed as a safety invariants of the continuous model. The obtained discrete model uses discrete time (instants modeled on \(\mathbb {N}\)), whereas the continuous model is based on dense time (on \(\mathbb {R}\)). The Rodin Platform, together with the Theory plug-in handling the Real datatype and its properties supported the whole developments and proofs.


Continuous and discrete behaviors Dense real numbers  Correct-by-construction Formal methods Proved refinements  Event-B 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abrial, J.-R.: Modeling in Event-B: System and Software Engineering, 1st edn. Cambridge University Press, New York, NY, USA (2010)CrossRefzbMATHGoogle Scholar
  2. 2.
    Abrial, J.-R., Butler, M., Hallerstede, S., Hoang, T.S., Mehta, F., Voisin, L.: Rodin: an open toolset for modelling and reasoning in Event-B. Int. J. Softw. Tools Technol. Transfer 12(6), 447–466 (2010)CrossRefGoogle Scholar
  3. 3.
    Abrial, J.-R., Butler, M., Hallerstede, S., Leuschel, M., Schmalz, M., Voisin, L.: Proposals for mathematical extensions for event-b. Technical report (2009)Google Scholar
  4. 4.
    Abrial, J.-R., Hallerstede, S.: Refinement, decomposition, and instantiation of discrete models: Application to Event-B. Fundamenta Informat. 77(1), 1–28 (2007)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Alur, R.: Formal verification of hybrid systems. In: Chakraborty, S., Jerraya, A., Baruah, S. K., Fischmeister, S. (eds.) Proceedings of the 11th International Conference on Embedded Software, EMSOFT - ESWeek, Taipei, Taiwan, October 9–14, 2011, pp. 273–278. ACM (2011)Google Scholar
  6. 6.
    Babin, G., At-Ameur, Y., Pantel, M.: Formal verification of runtime compensation of web service compositions: A refinement and proof based proposal with Event-B. In: International Conference on SCC 2015 IEEE, pp. 98–105, JuneGoogle Scholar
  7. 7.
    Banach, R.: Pliant modalities in Hybrid Event-B. In: Liu, Z., Woodcock, J., Zhu, H. (eds.) Theories of Programming and Formal Methods. LNCS, vol. 8051, pp. 37–53. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  8. 8.
    Banach, R., Butler, M., Qin, S., Verma, N., Zhu, H.: Core Hybrid Event-B I: Single Hybrid Event-B machines. Science of Computer Programming (2015)Google Scholar
  9. 9.
    Banach, R., Zhu, H., Su, W., Huang, R.: Formalising the continuous/discrete modeling step. In: Derrick, J., Boiten, E.A., Reeves, S. (eds.) Proceedings 15th International Refinement Workshop, Refine 2011, Limerick, Ireland, 20th June 2011, volume 55 of EPTCS, pp. 121–138 (2011)Google Scholar
  10. 10.
    Banach, R., Zhu, H., Su, W., Wu, X.: ASM and controller synthesis. In: Derrick, J., Fitzgerald, J., Gnesi, S., Khurshid, S., Leuschel, M., Reeves, S., Riccobene, E. (eds.) ABZ 2012. LNCS, vol. 7316, pp. 51–64. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  11. 11.
    Boldo, S., Lelay, C., Melquiond, G.: Coquelicot: A user-friendly library of real analysis for Coq. Math. Comput. Sci. 9(1), 41–62 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Butler, M., Abrial, J.-R., Banach, R.: From Action Systems to Distributed Systems: The Refinement Approach, chapter Modelling and Refining Hybrid Systems in Event-B and Rodin, p. 300. Taylor & Francis, February 2016Google Scholar
  13. 13.
    Butler, M., Maamria, I.: Practical theory extension in Event-B. In: Liu, Z., Woodcock, J., Zhu, H. (eds.) Theories of Programming and Formal Methods. LNCS, vol. 8051, pp. 67–81. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  14. 14.
    Cousot, P., Cousot, R.: Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proceedings of the 4th ACM POPL 1977, pp. 238–252, New York, NY, USA. ACM (1977)Google Scholar
  15. 15.
    Cousot, P., Cousot, R., Feret, J., Mauborgne, L., Miné, A., Monniaux, D., Rival, X.: The ASTRÉE analyzer. In: Sagiv, M. (ed.) ESOP 2005. LNCS, vol. 3444, pp. 21–30. Springer, Heidelberg (2005) CrossRefGoogle Scholar
  16. 16.
    Goubault, É.: Static analyses of the precision of floating-point operations. In: Cousot, P. (ed.) SAS 2001. LNCS, vol. 2126, p. 234. Springer, Heidelberg (2001) CrossRefGoogle Scholar
  17. 17.
    Henzinger. T. A.: The theory of hybrid automata. In: Inan, M.K., Kurshan, R.P. (eds.) Verification of Digital and Hybrid Systems, volume 170 of NATO ASI Series, pp. 265–292. Springer-Verlag (2000)Google Scholar
  18. 18.
    Henzinger, T.A., Ho, P.-H., Wong-Toi, H.: Hytech: A model checker for hybrid systems. International Journal on STTT 1(1–2), 110–122 (1997)CrossRefzbMATHGoogle Scholar
  19. 19.
    Ishii, D., Melquiond, G., Nakajima, S.: Inductive verification of hybrid automata with strongest postcondition calculus. In: Johnsen, E.B., Petre, L. (eds.) IFM 2013. LNCS, vol. 7940, pp. 139–153. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  20. 20.
    Lee, E.A., Seshia, S.A.: Introduction to Embedded Systems - A Cyber-Physical Systems Approach., edition 1.5 edition (2014)Google Scholar
  21. 21.
    Muller, J.-M., Brisebarre, N., de Dinechin, F., Jeannerod, C.-P., Lefèvre, V., Melquiond, G., Revol, N., Stehlé, D., Torres, S.: Handbook of Floating-Point Arithmetic. Birkhäuser (2010)Google Scholar
  22. 22.
    Platzer, A.: Logical Analysis of Hybrid Systems: Proving Theorems for Complex Dynamics. Springer-Verlag, Heidelberg (2010)CrossRefzbMATHGoogle Scholar
  23. 23.
    Su, W., Abrial, J.-R., Zhu, H.: Formalizing hybrid systems with Event-B and the Rodin platform. Science of Computer Programming, 94, Part 2:164–202 (2014)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Guillaume Babin
    • 1
    Email author
  • Yamine Aït-Ameur
    • 1
  • Shin Nakajima
    • 2
  • Marc Pantel
    • 1
  1. 1.Université de Toulouse; IRIT / INPT-ENSEEIHTToulouseFrance
  2. 2.National Institute of InformaticsChiyoda-kuJapan

Personalised recommendations