On two Friends for getting Correct Programs Automatically Translating Event B Specifications to Recursive Algorithms in Rodin

Dominique Méry 1, 2 Rosemary Monahan 3 Cheng Zheng 3
2 VERIDIS - Modeling and Verification of Distributed Algorithms and Systems
MPII - Max-Planck-Institut für Informatik, Inria Nancy - Grand Est, LORIA - FM - Department of Formal Methods
Abstract : We report on our progress-to-date in implementing a software de- velopment environment which integrates the efforts of two formal software engineering techniques: program refinement as supported by Event B and program verification as supported by the Spec# programming system. Our objective is to improve the usability of formal verification tools by providing a general framework for integrating these two approaches to software veri- fication. We show how the two approaches Correctness-by-Construction and Post-hoc Verification can be used in a productive way. Here, we focus on the final steps in this process where the final concrete specification is transformed into an executable algorithm. We present EB2RC,a plug-in for the Rodin platform, that reads in an Event B model and uses the control framework introduced during its refinement to generate a graphical representation of the executable algorithm. EB2RC also generates a recursive algorithm that is eas- ily translated into executable code. We illustrate our technique through case studies and their analysis.
Liste complète des métadonnées

https://hal.inria.fr/hal-01369425
Contributor : Dominique Méry <>
Submitted on : Wednesday, September 21, 2016 - 8:03:21 AM
Last modification on : Tuesday, February 19, 2019 - 3:40:03 PM

Identifiers

Collections

Citation

Dominique Méry, Rosemary Monahan, Cheng Zheng. On two Friends for getting Correct Programs Automatically Translating Event B Specifications to Recursive Algorithms in Rodin. ISOLA 2016 , Bernhard Steffen and Tiziana Margaria, Oct 2016, CORFU, Greece. pp.18, ⟨10.1007/978-3-319-47166-2_57⟩. ⟨hal-01369425⟩

Share

Metrics

Record views

327