Proving Reachability in B using Substitution Refinement

  • Authors:
  • Marc Frappier;Fama Diagne;Amel Mammar

  • Affiliations:
  • GRIL, Dép. dinformatique, Université de Sherbrooke, Sherbrooke (Québec), Canada;GRIL, Dép. dinformatique, Université de Sherbrooke, Sherbrooke (Québec), Canada and Institut Telecom SudParis, CNRS/SAMOVAR, Paris, France;Institut Telecom SudParis, CNRS/SAMOVAR, Paris, France

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2011

Quantified Score

Hi-index 0.01

Visualization

Abstract

This paper proposes an approach to prove reachability properties of the form AG(@j@?EF@f) using substitution refinement in classical B. Such properties denote that there exists an execution path for each state satisfying @j to a state satisfying @f. These properties frequently occur in security policies and information systems. We show how to use Morgan@?s specification statement to represent a property and refinement laws to prove it. The idea is to construct by stepwise refinement a program whose elementary statements are operation calls. Thus, the execution of such a program provides an execution satisfying AG(@j@?EF@f). Proof obligations are represented using assertions (ASSERTIONS clause of B) and can be discharged using Atelier B.