A Proposal for Records in Event-B

The B method is a well known approach to the formal specification and development of sequential computer programs. Inspired by action systems, the B method has evolved to incorporate system modelling and distributed system development. This extension is called Event-B. Even though several of the structuring mechanisms of the original B method are absent from Event-B, the desire to define and maintain structured data persists. We propose the introduction of records to Event-B for this purpose. Our approach upholds the refinement principles of Event-B by allowing the stepwise development of records too.

[1]  Niklaus Wirth,et al.  The programming language oberon , 1988, Softw. Pract. Exp..

[2]  Jim Woodcock,et al.  Using Z - specification, refinement, and proof , 1996, Prentice Hall international series in computer science.

[3]  Colin F. Snook,et al.  UML-B: Formal modeling and design aided by UML , 2006, TSEM.

[4]  Giuseppe Castagna,et al.  Covariance and contravariance: conflict without a cause , 1995, TOPL.

[5]  Brian Ritchie,et al.  Investigating the Integration of two Formal Methods , 1998, Formal Aspects of Computing.

[6]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[7]  David A. Naumann,et al.  Predicate transformer semantics of a higher-order imperative language with record subtyping , 2001, Sci. Comput. Program..

[8]  Steve Schneider The B-method - an introduction , 2001, The cornerstones of computing series.