Skip to main content

Abstract

We present a semi-shallow embedding in Coq of Event-B’s notions of abstract machine and refinement. The abstract structure of Event-B developments, including machines and refinement annotations, can be represented within Coq’s type system, using inductive and dependent types. This formalization allows us to reason at the meta-level on machines and their behaviors, considered as first-class citizens. We show how this formalization of Event-B structures into Coq allows us to model Rodin’s proof obligations, and prove how these obligations entail correctness properties of a given Event-B project. Moreover, the correctness of a given refinement is now an explicit theorem, instead of being an implicit consequence of a set of proof obligations.

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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.

    Following the Coq tradition, we represent sets [resp. binary relations] as unary [resp. binary] predicates on types, with \(\lambda \) as the binding symbol for abstraction. For instance, the set of even natural numbers is described by the predicate \(\lambda \,i:\mathbb {N},\,\exists \,j:\mathbb {N},\,i=2\times j\).

References

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

    Google Scholar 

  2. The Rodin development team. The Rodin Tool.https://sourceforge.net/projects/rodin-b-sharp/

  3. G. Tel, Introduction to Distributed Algorithms (Cambridge University Press, Cambridge, 2000)

    Google Scholar 

  4. The Coq development team. The Coq proof assistant. coq.inria.fr

    Google Scholar 

  5. Xavier Leroy, Formal verification of a realistic compiler. Commun. ACM 52(7), 107–115 (2009)

    Article  Google Scholar 

  6. G. Gonthier, Formal proof – the four-color theorem. Not. Am. Math. Soc. 55(11) (2008)

    Google Scholar 

  7. Inria Marelle Team. Proof of the Feit-Thompson theorem. https://gforge.inria.fr/projects/coqfinitgroup/

  8. B.C. Pierce et al., Software foundations. https://softwarefoundations.cis.upenn.edu/current/index.html

  9. Y. Bertot, P. Castéran, Interactive Theorem Proving and Program Development - Coq’Art: The Calculus of Inductive Constructions (Springer, Berlin, 2004)

    Google Scholar 

  10. A. Chlipala, Certified Programming with Dependent Types. (MIT Press, Cambridge, 2013)

    Google Scholar 

  11. G. Babin, Y.A. Ameur, M. Pantel, Correct instantiation of a system reconfiguration pattern: A proof and refinement-based approach, in 17th IEEE International Symposium on High Assurance Systems Engineering, HASE 2016, Orlando, FL, USA, January 7-9, 2016 (2016), pp. 31–38

    Google Scholar 

Download references

Acknowledgements

This work has been supported by the project Impex of the French “Agence Nationale de la Recherche”. We thank the referees for their many helpful comments on this chapter.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pierre Castéran .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Singapore Pte Ltd.

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Castéran, P. (2021). An Explicit Semantics for Event-B Refinements. In: Ait-Ameur, Y., Nakajima, S., Méry, D. (eds) Implicit and Explicit Semantics Integration in Proof-Based Developments of Discrete Systems. Springer, Singapore. https://doi.org/10.1007/978-981-15-5054-6_8

Download citation

  • DOI: https://doi.org/10.1007/978-981-15-5054-6_8

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-15-5053-9

  • Online ISBN: 978-981-15-5054-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics