Skip to main content
Log in

On the purpose of Event-B proof obligations

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

Event-B is a formal modelling method which is claimed to be suitable for diverse modelling domains, such as reactive systems and sequential program development. This claim hinges on the fact that any particular model has an appropriate semantics. In Event-B, this semantics is provided implicitly by proof obligations associated with a model. There is no fixed semantics though. In this article we argue that this approach is beneficial to modelling because we can use similar proof obligations across a variety of modelling domains. By way of two examples we show how similar proof obligations are linked to different semantics. A small set of proof obligations is thus suitable for a whole range of modelling problems in diverse modelling domains.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Abrial J-R, Butler M, Hallerstede S, Voisin L (2006) An open extensible tool environment for Event-B. In: Liu Z, He J (eds) ICFEM 2006, vol 4260. Springer, Berlin, pp 588–605

  2. Abrial J-R (1996) The B-book: assigning programs to meanings. Cambridge University Press, London

    Book  MATH  Google Scholar 

  3. Abrial J-R (1999) Event driven system construction (unpublished)

  4. Abrial J-R (1999) Models of computations (unpublished)

  5. Abrial J-R (2003) Event based sequential program development: Application to constructing a pointer program. In: Araki K, Gnesi S, Mandrioli D (eds) FME 2003: formal methods. LNCS, vol 2805. Springer, Berlin, pp 51–74

  6. Abrial J-R (2008) Modeling in event-B: system and software engineering. Cambridge University Press, London

    Google Scholar 

  7. Abrial J-R, Cansell D, Méry D (2003) A mechanically proved and incremental development of IEEE 1394 tree identify protocol. Formal Aspects Comput 14(3): 215–227

    Article  Google Scholar 

  8. Abrial J-R, Hallerstede S (2007) Refinement, decomposition and instantiation of discrete models: application to Event-B. Fundam Inf 77(1–2): 1–28

    MATH  MathSciNet  Google Scholar 

  9. Abrial J-R, Mussat L (1998) Introducing dynamic constraints in B. In: Bert D (ed) B’98 : the 2nd international B conference. LNCS, vol 1393. Springer, Berlin, pp 83–128

  10. Apt KR, Olderog E-R (1991) Verification of sequential and concurrent programs. Springer, New York

    MATH  Google Scholar 

  11. Badeau F, Amelot A (2005) Using B as a high level programming language in an industrial project: Roissy VAL. In: Treharne H, King S, Henson M, Schneider S (eds) ZB 2005. LNCS, vol 3455, pp 334–354

  12. Back R-J (1989) Refinement calculus II: parallel and reactive programs. In: deBakker JW, deRoever WP, Rozenberg G (eds) Stepwise refinement of distributed systems. Lecture notes in computer science, vol 430. Springer, Berlin, pp 67–93

  13. Butler MJ (1996) Stepwise refinement of communicating systems. Sci Comput Program 27(2): 139–173

    Article  MATH  Google Scholar 

  14. Back R-J, von Wright J (1998) Refinement calculus: a systematic introduction. Graduate texts in computer science. Springer, Berlin

    MATH  Google Scholar 

  15. Dijkstra EW (1976) A discipline of programming. Prentice-Hall, Englewood Cliffs

    MATH  Google Scholar 

  16. Fischer C (1997) CSP-OZ: a combination of Object-Z and CSP. In: Bowmann H, Derrick J (eds) FMOODS ’97, vol 2. Chapman & Hall, London, pp 423–438

    Google Scholar 

  17. Hallerstede S (2003) Parallel hardware design in B. In: Bert D, Bowen JP, King S, Waldén MA (eds) ZB. LNCS, vol 2651. Springer, Berlin, pp 101–102

    Google Scholar 

  18. Hallerstede S (2005) The Event-B proof obligation generator. Technical report, ETH Zürich

  19. Hallerstede S, Hoang TS (2007) Qualitative probabilistic modelling in Event-B. In: Davies J, Gibbons J (eds) IFM 2007. LNCS, vol 4591. Springer, Berlin, pp 293–312

    Google Scholar 

  20. Hoare CAR, Jifeng H (1998) Unifying theories of programming. Prentice-Hall, Englewood Cliffs

    Google Scholar 

  21. Hoare CAR (1985) Communcating sequential processes. Prentice-Hall, Englewood Cliffs

    Google Scholar 

  22. Morris FL, Jones CB (1984) An early program proof by Alan Turing. Ann Hist Comput 6(2): 139–143

    Article  MATH  MathSciNet  Google Scholar 

  23. Morgan CC (1990) Of wp and CSP. In: Feijen WHJ, van Gasteren AJM, Gries D, Misra J (eds) Beauty is our business: a birthday salute to Edsger W. Dijkstra. Springer, Berlin, pp 319–326

    Google Scholar 

  24. Morgan CC (1994) Programming from specifications: second edition. Prentice-Hall, Englewood Cliffs

    Google Scholar 

  25. de Roever WP, Engelhardt K (1998) Data refinement: model-oriented proof methods and their comparison. Cambridge tracts in theoretical computer science 47, vol 46. Cambridge University Press

  26. Roscoe AW (1988) Unbounded nondeterminism in CSP. Technical Monograph PRG-67, Programming Research Group, Oxford University

  27. Sekerinski E (1993) A calculus for predicative programming. In: Bird RS, Morgan CC, Woodcock JCP (eds) MPC. LNCS. Springer, Berlin

  28. Turing AM (1949) Checking a large routine. In: Report of a conference on high speed automatic calculating machines, EDSAC inaugural conference, University Mathematical Laboratory, Cambridge, UK, pp 67–69

  29. van Gasteren AJM (1990) On the shape of mathematical arguments, vol 445 . LNCS. Springer, Berlin

    Google Scholar 

  30. Woodcock J, Davies J (1996) Using Z. Specification, refinement, and proof. Englewood Cliffs, Prentice-Hall

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Hallerstede.

Additional information

Communicated by Michael Poppleton and Michael Butler

Rights and permissions

Reprints and permissions

About this article

Cite this article

Hallerstede, S. On the purpose of Event-B proof obligations. Form Asp Comp 23, 133–150 (2011). https://doi.org/10.1007/s00165-009-0138-3

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-009-0138-3

Keywords

Navigation