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.
Similar content being viewed by others
References
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
Abrial J-R (1996) The B-book: assigning programs to meanings. Cambridge University Press, London
Abrial J-R (1999) Event driven system construction (unpublished)
Abrial J-R (1999) Models of computations (unpublished)
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
Abrial J-R (2008) Modeling in event-B: system and software engineering. Cambridge University Press, London
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
Abrial J-R, Hallerstede S (2007) Refinement, decomposition and instantiation of discrete models: application to Event-B. Fundam Inf 77(1–2): 1–28
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
Apt KR, Olderog E-R (1991) Verification of sequential and concurrent programs. Springer, New York
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
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
Butler MJ (1996) Stepwise refinement of communicating systems. Sci Comput Program 27(2): 139–173
Back R-J, von Wright J (1998) Refinement calculus: a systematic introduction. Graduate texts in computer science. Springer, Berlin
Dijkstra EW (1976) A discipline of programming. Prentice-Hall, Englewood Cliffs
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
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
Hallerstede S (2005) The Event-B proof obligation generator. Technical report, ETH Zürich
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
Hoare CAR, Jifeng H (1998) Unifying theories of programming. Prentice-Hall, Englewood Cliffs
Hoare CAR (1985) Communcating sequential processes. Prentice-Hall, Englewood Cliffs
Morris FL, Jones CB (1984) An early program proof by Alan Turing. Ann Hist Comput 6(2): 139–143
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
Morgan CC (1994) Programming from specifications: second edition. Prentice-Hall, Englewood Cliffs
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
Roscoe AW (1988) Unbounded nondeterminism in CSP. Technical Monograph PRG-67, Programming Research Group, Oxford University
Sekerinski E (1993) A calculus for predicative programming. In: Bird RS, Morgan CC, Woodcock JCP (eds) MPC. LNCS. Springer, Berlin
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
van Gasteren AJM (1990) On the shape of mathematical arguments, vol 445 . LNCS. Springer, Berlin
Woodcock J, Davies J (1996) Using Z. Specification, refinement, and proof. Englewood Cliffs, Prentice-Hall
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Michael Poppleton and Michael Butler
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-009-0138-3