DocumentCode
3077403
Title
A Refinement Calculus for Promela
Author
Sharma, Ashok
Author_Institution
Dept. of Comput. Sci., Nat. Univ. of Singapore, Singapore, Singapore
fYear
2013
fDate
17-19 July 2013
Firstpage
75
Lastpage
84
Abstract
The use of formal methods for developing software is increasing. However in many cases only a model of the system is validated against a set of specifications. The actual implementation may thus not correspond to the formal model. One approach to this problem is to directly verify the actual implementation. Another solution is to provide a refinement scheme for the model. In this paper we present a method for refining a given Promela model to an implementation in C. We show that our refinement preserves the temporal properties (specified in LTL) of the original model. We give a new dual action semantics for a minimal core of Promela (called Featherweight Promela). The operational semantics of Featherweight Promela makes it easier to define the refinement calculus as a set of structural rules. Based on our calculus, we derive syntax directed translation rules for refinement of Promela models to C programs. These translation rules are easier to apply and generate an implementation which is a refinement of the formal model. We have applied our approach on existing Promela models and a larger case study of the cardiac pacemaker challenge.
Keywords
C language; refinement calculus; software engineering; C programs; Promela model; formal methods; refinement calculus; software development; temporal properties; translation rules; Calculus; Concurrent computing; Pacemakers; Safety; Semantics; Software; Syntactics;
fLanguage
English
Publisher
ieee
Conference_Titel
Engineering of Complex Computer Systems (ICECCS), 2013 18th International Conference on
Conference_Location
Singapore
Print_ISBN
978-0-7695-5007-7
Type
conf
DOI
10.1109/ICECCS.2013.20
Filename
6601807
Link To Document