Towards generating SPARK from Event-B models
Towards generating SPARK from Event-B models
This paper presents an approach to generate SPARK code from Event-B models. System models in Event-B are translated into SPARK packages including proof annotations. Properties of the Event-B models such as axioms and invariants are also translated and embedded in the resulting models as pre- and post-conditions. This helps with generating SPARK proof annotations automatically hence ensuring the correct behaviour of the resulting code. A prototype plug-in for the Rodin has been developed and the approach is evaluated on different examples. We also discuss the possible extensions including to generate scheduled code and data structures such as records.
Event-B, SPARK, Code Generation, Rodin Platform
Sritharan, Sanjeevan
55c3bf83-4fc5-4986-afda-c65759f0a91b
Hoang, Thai Son
dcc0431d-2847-4e1d-9a85-54e4d6bab43f
16 November 2020
Sritharan, Sanjeevan
55c3bf83-4fc5-4986-afda-c65759f0a91b
Hoang, Thai Son
dcc0431d-2847-4e1d-9a85-54e4d6bab43f
Sritharan, Sanjeevan and Hoang, Thai Son
(2020)
Towards generating SPARK from Event-B models.
In Proceedings of the 16th International Conference on integrated Formal Methods.
18 pp
.
Record type:
Conference or Workshop Item
(Paper)
Abstract
This paper presents an approach to generate SPARK code from Event-B models. System models in Event-B are translated into SPARK packages including proof annotations. Properties of the Event-B models such as axioms and invariants are also translated and embedded in the resulting models as pre- and post-conditions. This helps with generating SPARK proof annotations automatically hence ensuring the correct behaviour of the resulting code. A prototype plug-in for the Rodin has been developed and the approach is evaluated on different examples. We also discuss the possible extensions including to generate scheduled code and data structures such as records.
Text
ifm2020_eb2spark_preprint
- Author's Original
Text
ifm2020_eb2spark
- Accepted Manuscript
More information
Submitted date: 6 July 2020
Accepted/In Press date: 19 August 2020
Published date: 16 November 2020
Venue - Dates:
The 16th International Conference on integrated Formal Methods, Università della Svizzera italiana, Lugano, Switzerland, 2020-11-16 - 2020-11-20
Keywords:
Event-B, SPARK, Code Generation, Rodin Platform
Identifiers
Local EPrints ID: 444053
URI: http://eprints.soton.ac.uk/id/eprint/444053
PURE UUID: 86302e46-01ec-4bc7-bb6a-05dad2f28948
Catalogue record
Date deposited: 23 Sep 2020 16:49
Last modified: 17 Mar 2024 05:50
Export record
Contributors
Author:
Sanjeevan Sritharan
Author:
Thai Son Hoang
Download statistics
Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.
View more statistics