Abstract
The transition from classical B [2] to the Event-B language and method [3] has seen the removal of some forms of model structuring and composition, with the intention of reinventing them in future. This work contributes to that reinvention. Inspired by a proposed method for state-based decomposition and refinement [5] of an Event-B model, we propose a familiar parallel event composition (over disjoint state variable lists), and the less familiar event fusion (over intersecting state variable lists). A brief motivation is provided for these and other forms of composition of models, in terms of feature-based modelling. We show that model consistency is preserved under such compositions. More significantly we show that model composition preserves refinement.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Abadi, M., Lamport, L.: Composing specifications. ACM Trans. Program. Lang. Syst. 15(1), 73–132 (1993)
Abrial, J.-R.: The B-Book: Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)
Abrial, J.R., Butler, M., Hallerstede, S., Voisin, L.: An open extensible tool environment for Event-B. In: Liu, Z., He, J. (eds.) ICFEM 2006. LNCS, vol. 4260, pp. 588–605. Springer, Heidelberg (2006)
Abrial, J.-R., Cansell, D., Laffitte, G.: “Higher-order” mathematics in B. In: Bert, D., Bowen, J.P., Henson, M.C., Robinson, K. (eds.) B 2002 and ZB 2002. LNCS, vol. 2272, pp. 370–393. Springer, Heidelberg (2002)
Abrial, J.-R., Hallerstede, S.: Refinement, decomposition and instantiation of discrete models: Application to Event-B. Fundamenta Informaticae 77(1-2) (2007)
Attiogbé, C., André, P., Ardourel, G.: Checking component composability. In: Löwe, W., Südholt, M. (eds.) SC 2006. LNCS, vol. 4089, pp. 18–33. Springer, Heidelberg (2006)
Back, R.-J., Kurki-Suonio, R.: Decentralization of process nets with centralized control. Distributed Computing 3(2), 73–87 (1989)
Back, R.J.R., Butler, M.: Fusion and simultaneous execution in the refinement calculus. Acta Informatica 35, 921–949 (1998)
Bellegarde, F., Julliand, J., Kouchnarenko, O.: Ready-simulation is not ready to express a modular refinement relation. In: Maibaum, T.S.E. (ed.) FASE 2000. LNCS, vol. 1783, pp. 266–283. Springer, Heidelberg (2000)
Butler, M.: Stepwise refinement of communicating systems. Science of Computer Programming 27, 139–173 (1996)
Butler, M.: An approach to the design of distributed systems with B AMN. In: Bowen, J.P., Hinchey, M.G., Till, D. (eds.) ZUM 1997. LNCS, vol. 1212, pp. 223–241. Springer, Heidelberg (1997)
Coplien, J., Hoffman, D., Weiss, D.: Commonality and variability in software engineering. IEEE Software, 37–45 (November/December 1998)
Darlot, C., Julliand, J., Kouchnarenko, O.: Refinement preserves PLTL properties. In: Bert, D., P. Bowen, J., King, S. (eds.) ZB 2003. LNCS, vol. 2651, pp. 408–420. Springer, Heidelberg (2003)
Jones, C.B.: Tentative steps toward a development method for interfering programs. ACM Transactions on Programming Languages and Systems 5(4), 596–619 (1983)
Jones, C.B. (ed.): Intermediate report on methodology. Technical Report Deliverable 19, EU Project IST-511599 - RODIN (August 2006), http://rodin.cs.ncl.ac.uk
Kouchnarenko, O., Lanoix, A.: Refinement and verification of synchronized component-based systems. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 341–358. Springer, Heidelberg (2003)
Kouchnarenko, O., Lanoix, A.: Verifying invariants of component-based systems through refinement. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 289–303. Springer, Heidelberg (2004)
Abrial, J.R., Batory, D., Butler, M., Coglio, A., Fisler, K., Hehner, E., Jones, C.B., Miller, D., Peyton-Jones, S., Sitaraman, M., Smith, D.R., Leavens, G.T., Stump, A.: Roadmap for enhanced languages and methods to aid verification. In: Proc. 5th Int. Conf. Generative Programming and Component Engineering, Portland, Oregon (2006)
Métayer, C., Abrial, J.-R., Voisin, L.: Event-B Language. Technical Report Deliverable 3.2, EU Project IST-511599 - RODIN (May 2005), http://rodin.cs.ncl.ac.uk
Pohl, K., Boeckle, G., van der Linden, F.: Software Product Line Engineering Foundations, Principles, and Techniques. Springer, Heidelberg (2005)
Poppleton, M.R.: Towards Feature-Oriented Specification and Development with Event-B. In: Sawyer, P., Paech, B., Heymans, P. (eds.) REFSQ 2007. LNCS, vol. 4542, pp. 367–381. Springer, Heidelberg (2007)
Potet, M.-L.: Spécifications et développements structurés dans la méthode B. Technique et Science Informatiques 22, 61–88 (2003)
Potet, M.-L., Rouzaud, Y.: Composition and refinement in the B-method. In: Bert, D. (ed.) B 1998. LNCS, vol. 1393, pp. 46–65. Springer, Heidelberg (1998)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Poppleton, M. (2008). The Composition of Event-B Models. In: Börger, E., Butler, M., Bowen, J.P., Boca, P. (eds) Abstract State Machines, B and Z. ABZ 2008. Lecture Notes in Computer Science, vol 5238. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87603-8_17
Download citation
DOI: https://doi.org/10.1007/978-3-540-87603-8_17
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-87602-1
Online ISBN: 978-3-540-87603-8
eBook Packages: Computer ScienceComputer Science (R0)