Managing LTL Properties in Event-B Refinement

Refinement in Event-B supports the development of systems via proof based step-wise refinement of events. This refinement approach ensures safety properties are preserved, but additional reasoning is required in order to establish liveness and fairness properties.In this paper we present results which allow a closer integration of two formal methods, Event-B and linear temporal logic. In particular we show how a class of temporal logic properties can carry through a refinement chain of machines. Refinement steps can include introduction of new events, event renaming and event splitting. We also identify a general liveness property that holds for the events of the initial system of a refinement chain. The approach will aid developers in enabling them to verify linear temporal logic properties at early stages of a development, knowing they will be preserved at later stages. We illustrate the results via a simple case study.

[1]  Thai Son Hoang,et al.  Rodin: an open toolset for modelling and reasoning in Event-B , 2010, International Journal on Software Tools for Technology Transfer.

[2]  Jean-Raymond Abrial,et al.  Introducing Dynamic Constraints in B , 1998, B.

[3]  Michael J. Butler A CSP approach to action systems , 1992 .

[4]  Michael Leuschel,et al.  Automated Property Verification for Large Scale B Models , 2009, FM.

[5]  Carroll Morgan,et al.  Of wp and CSP , 1990 .

[6]  Didier Bert,et al.  Specification and Proof of Liveness Properties under Fairness Assumptions in B Event Systems , 2002, IFM.

[7]  Michael Leuschel,et al.  Validation of formal models by refinement animation , 2013, Sci. Comput. Program..

[8]  Álvaro Enrique Arenas,et al.  Towards Modelling Obligations in Event-B , 2008, ABZ.

[9]  Michael Leuschel,et al.  Seven at one stroke: LTL model checking for high-level specifications in B, Z, CSP, and more , 2009, International Journal on Software Tools for Technology Transfer.

[10]  John Derrick,et al.  Temporal-logic property preservation under Z refinement , 2011, Formal Aspects of Computing.

[11]  Michael J. Butler,et al.  ProB: an automated analysis toolset for the B method , 2008, International Journal on Software Tools for Technology Transfer.

[12]  Steve A. Schneider,et al.  The behavioural semantics of Event-B refinement , 2012, Formal Aspects of Computing.

[13]  Thai Son Hoang,et al.  Reasoning about Liveness Properties in Event-B , 2011, ICFEM.

[14]  Julien Groslambert Verification of LTL on B Event Systems , 2007, B.

[15]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[16]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[17]  Joeri de Ruiter,et al.  Model Checking under Fairness in ProB and Its Application to Fair Exchange Protocols , 2012, ICTAC.