Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1007/11576280_24guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Automatic refinement checking for b

Published: 01 November 2005 Publication History

Abstract

Refinement is a key concept in the B-Method. While refinement is at the heart of the B Method, so far no automatic refinement checker has been developed for it. In this paper we present a refinement checking algorithm and implementation for B. It is based on using an operational semantics of B, obtained in practice by the ProB animator. The refinement checker has been integrated into ProB toolset and we present various case studies and empirical results in the paper, showing the algorithm to be surprisingly effective. The algorithm checks that a refinement preserves the trace properties of a specification. We also compare our tool against the refinement checker FDR for CSP and discuss an extension for singleton failure refinement.

References

[1]
J.-R. Abrial. The B-Book. Cambridge University Press, 1996.
[2]
J.-R. Abrial. Case study of a complete reactive system in Event-B: A mechanical press controller. In Tutorial at ZB'2005, 2005. Available at http://www.zb2005.org/.
[3]
J.-R. Abrial and D. Cansell. Click'n prove: Interactive proofs within set theory. In D. A. Basin and B. Wolff, editors, Proceedings TPHOLs 2003, LNCS 2758, pages 1-24. Springer, 2003.
[4]
J.-R. Abrial and L. Mussat. Introducing dynamic constraints in B. In D. Bert, editor, Second International B Conference, April 1998
[5]
S. Basu, M. Mukund, C. R. Ramakrishnan, I. V. Ramakrishnan, and R. M. Verma. Local and symbolic bisimulation using tabled constraint logic programming. In Proceedings ICLP'01, LNCS 2237, pages 166-180, November 2001. Springer.
[6]
C. Bolton and J. Davies. A comparison of refinement orderings and their associated simulation rules. Electr. Notes Theor. Comput. Sci., 70(3):440 -453, 2002.
[7]
M. Butler and M. Leuschel. Combining CSP and B for specification and property verification. In J. Fitzgearld, I. Hayes, and A. Tarlecki, editors, Proceedings FM'2005, LNCS 3582, pages 221-236. Springer, 2005.
[8]
M. J. Butler. An approach to the design of distributed systems with B AMN. In J. P. Bowen, M. G. Hinchey, and D. Till, editors, Proceedings ZUM '97, LNCS 1212, pages 223-241. Springer, 1997.
[9]
E. M. Clarke, O. Grumberg, and D. Peled. Model Checking. MIT Press, 1999.
[10]
S. Dunne and S. Conroy. Process refinement in B. In H. Treharne, S. King, M. C. Henson, and S. Schneider, editors, Proceedings ZB 2005, LNCS 3455, pages 45-64. Springer, 2005.
[11]
B. Farwer and M. Leuschel. Model checking object Petri nets in Prolog. In Proceedings PPDP '04, pages 20-31, 2004. ACM Press.
[12]
Formal Systems (Europe) Ltd. Failures-Divergence Refinement -- FDR2 User Manual.
[13]
P. H. B. Gardiner and C. Morgan. A single complete rule for data refinement. Formal Asp. Comput., 5(4):367-382, 1993.
[14]
J. He, C. A. R. Hoare, and J. W. Sanders. Data refinement refined. In B. Robinet and R. Wilhelm, editors, ESOP 86, LNCS 213, pages 187-196. Springer, 1986.
[15]
C. A. R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985.
[16]
M. Leuschel and M. Butler. ProB: A Model Checker for B. In K. Araki, S. Gnesi, and D. Mandrioli, editors, Proceedings FME 2003, Pisa, Italy, LNCS 2805, pages 855-874. Springer, 2003.
[17]
M. Leuschel and T. Massart. Infinite state model checking by abstract interpretation and program specialisation. In A. Bossi, editor, Proceedings of LOPSTR'99, LNCS 1817, pages 63-82, 2000.
[18]
M. Leuschel and E. Turner. Visualizing larger states spaces in ProB. In H. Treharne, S. King, M. Henson, and S. Schneider, editors, Proceedings ZB'2005, LNCS 3455, pages 6-23. Springer-Verlag, April 2005.
[19]
B-Core. B-toolkit manuals. 1999.
[20]
N. J. Robinson. Checking z data refinements using an animation tool. In D. Bert, J. P. Bowen, M. C. Henson, and K. Robinson, editors, Proceedings ZB 2002, LNCS 2272, pages 62-81. Springer, 2002.
[21]
A. Roscoe. The Theory and Practice of Concurrency. Prentice-Hall, 1998.
[22]
K. Sagonas, T. Swift, and D. S. Warren. XSB as an efficient deductive database engine. In Proceedings SIGMOD'94, pages 442-453, Minneapolis, May 1994. ACM.
[23]
S. Schneider and H. Treharne. Communicating B machines. In D. Bert, J. P. Bowen, M. C. Henson, and K. Robinson, editors, Proceedings ZB 2002, LNCS 2272, pages 416-435. Springer, 2002.
[24]
Steria. Atelier B, user and reference manuals. 1997.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
ICFEM'05: Proceedings of the 7th international conference on Formal Methods and Software Engineering
November 2005
494 pages
ISBN:3540297979
  • Editors:
  • Kung-Kiu Lau,
  • Richard Banach

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 01 November 2005

Author Tags

  1. B-method
  2. animation
  3. constraints
  4. logic programming
  5. model checking
  6. refinement checking
  7. tool support

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Trace Refinement in B and Event-BFormal Methods and Software Engineering10.1007/978-3-031-17244-1_19(316-333)Online publication date: 24-Oct-2022
  • (2020)Formally verified FMI enabled external data brokerProceedings of the 2020 Summer Simulation Conference10.5555/3427510.3427533(1-12)Online publication date: 20-Jul-2020
  • (2017)Model checking of state-rich formalism [InlineEquation not availableInternational Journal on Software Tools for Technology Transfer (STTT)10.1007/s10009-015-0402-119:1(73-96)Online publication date: 1-Feb-2017
  • (2010)Refinement-animation for event-bProceedings of the Second international conference on Abstract State Machines, Alloy, B and Z10.1007/978-3-642-11811-1_22(287-301)Online publication date: 22-Feb-2010
  • (2009)Validating and animating higher-order recursive functions in bRigorous Methods for Software Construction and Analysis10.5555/2172244.2172250(78-92)Online publication date: 1-Jan-2009
  • (2007)Validating Z specifications using the PROB animator and model checkerProceedings of the 6th international conference on Integrated formal methods10.5555/1770498.1770523(480-500)Online publication date: 2-Jul-2007
  • (2006)Synthesis of scenario based test cases from b modelsProceedings of the First combined international conference on Formal Approaches to Software Testing and Runtime Verification10.1007/11940197_9(133-147)Online publication date: 15-Aug-2006
  • (2006)Issues in implementing a model checker for zProceedings of the 8th international conference on Formal Methods and Software Engineering10.1007/11901433_37(678-696)Online publication date: 1-Nov-2006

View Options

View options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media