Abstract
While refinement can help structure the modeling and proving process, it also forces the modeler to introduce features in a particular order. This means that features deeper in the refinement chain cannot be validated in isolation, making some reasoning unnecessarily intricate. In this paper, we present the AVoiR (Abstraction-Validation Obligation-Refinement) framework to ease validation of such complex refinement chains. The triptych AVoiR framework operates as follows: 1) We first simplify a complex model by abstracting away the noise, i.e., removing the information unrelated to properties under analysis. 2) Using the Validation Obligations (VOs) technique, we formalize the validation tasks of the desired property. 3) Finally, we trickle down the validation results by establishing the noiseless model as a parent of the initially investigated model through the standard refinement relationship. Furthermore, by using the technique of VO refinement, we establish the VOs of the abstract model on the initial model. We use a case study from the aviation domain to show the proposed framework’s effectiveness.
The research presented in this paper has been conducted within the IVOIRE project, which is funded by “Deutsche Forschungsgemeinschaft” (DFG) and the Austrian Science Fund (FWF) grant # I 4744-N. The work of Sebastian Stock and Atif Mashkoor and Alexander Egyed has been partly funded by the LIT Secure and Correct Systems Lab sponsored by the province of Upper Austria.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
Original case study code: https://github.com/hhu-stups/AMAN-case-study/.
- 2.
Code for this paper: https://github.com/hhu-stups/AMAN-abstraction-example.
- 3.
The whole example is available under https://figshare.com/articles/code/Abstraction_Examples/19786924/3.
- 4.
For full details, we refer to the files.
References
Abrial, J.R.: Modeling in Event-B: System and Software Engineering. Cambridge University Press, Cambridge (2010)
Abrial, J.R., Butler, M.J., Hallerstede, S., Hoang, T.S., Mehta, F., Voisin, L.: Rodin: an open toolset for modelling and reasoning in Event-B. Int. J. Softw. Tools Technol. Transf. 12(6), 447–466 (2010). https://doi.org/10.1007/s10009-010-0145-y
Abrial, J.R., Hallerstede, S.: Refinement, decomposition, and instantiation of discrete models: application to Event-B. Fund. Inform. 77(1–2), 1–28 (2007)
Banach, R.: Graded refinement, retrenchment and simulation. ACM Trans. Softw. Eng. Methodol. (2022). https://doi.org/10.1145/3534116
Banach, R., Fraser, S.: Retrenchment and the B-Toolkit. In: Treharne, H., King, S., Henson, M., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 203–221. Springer, Heidelberg (2005). https://doi.org/10.1007/11415787_13
Bert, D., Potet, M.-L., Stouls, N.: GeneSyst: a tool to reason about behavioral aspects of B event specifications. application to security properties. In: Treharne, H., King, S., Henson, M., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 299–318. Springer, Heidelberg (2005). https://doi.org/10.1007/11415787_18
Bertolino, A., Inverardi, P., Muccini, H.: Formal methods in testing software architectures. In: Bernardo, M., Inverardi, P. (eds.) SFM 2003. LNCS, vol. 2804, pp. 122–147. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-39800-4_7
Bianchi, A., Pizzutilo, S., Vessio, G.: Applying predicate abstraction to abstract state machines. In: Gaaloul, K., Schmidt, R., Nurcan, S., Guerreiro, S., Ma, Q. (eds.) CAISE 2015. LNBIP, vol. 214, pp. 283–292. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19237-6_18
Börger, E.: The abstract state machines method for high-level system design and analysis. In: Boca, P., Bowen, J., Siddiqi, J. (eds.) Formal Methods: State of the Art and New Directions, pp. 79–116. Springer, London (2010). https://doi.org/10.1007/978-1-84882-736-3_3
Butler, M.: Decomposition structures for Event-B. In: Leuschel, M., Wehrheim, H. (eds.) IFM 2009. LNCS, vol. 5423, pp. 20–38. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-00255-7_2
Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement for symbolic model checking. J. ACM (JACM) 50(5), 752–794 (2003)
Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction of approximation of fixed points. In: Proceedings POPL, pp. 238–252. ACM (1977)
Dobrikov, I., Leuschel, M.: Enabling analysis for Event-B. In: Science of Computer Programming, vol. 158, pp. 81–99. Elsevier (2018)
Fraser, S., Banach, R.: Configurable proof obligations in the frog toolkit. In: Proceedings SEFM, pp. 361–370. IEEE Computer Society (2007). https://doi.org/10.1109/SEFM.2007.12
Geleßus, D., Stock, S., Vu, F., Leuschel, M., Mashkoor, A.: Modeling and analysis of a safety-critical interactive system through validation obligations. In: Proceedings ABZ (2023)
Hoang, T.S., Schneider, S., Treharne, H., Williams, D.M.: Foundations for using linear temporal logic in Event-B refinement. Formal Aspects Comput. 28(6), 909–935 (2016). https://doi.org/10.1007/s00165-016-0376-0
Hoang, T.S., Snook, C., Dghaym, D., Fathabadi, A.S., Butler, M.: Building an extensible textual framework for the Rodin platform. In: Masci, P., Bernardeschi, C., Graziani, P., Koddenbrock, M., Palmieri, M. (eds.) Software Engineering and Formal Methods. SEFM 2022 Collocated Workshops. LNCS, vol. 13765, pp. 132–147. Springer, Cham (2023). https://doi.org/10.1007/978-3-031-26236-4_11
Institute of Electrical and Electronics Engineers: IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries. IEEE (1991). https://doi.org/10.1109/IEEESTD.1991.106963
Ladenberger, L., Leuschel, M.: Mastering the visualization of larger state spaces with projection diagrams. In: Butler, M., Conchon, S., Zaïdi, F. (eds.) ICFEM 2015. LNCS, vol. 9407, pp. 153–169. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-25423-4_10
Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley, Boston (2002)
Leuschel, M., Butler, M.: ProB: a model checker for B. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003. LNCS, vol. 2805, pp. 855–874. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45236-2_46
Mashkoor, A., Kossak, F., Egyed, A.: Evaluating the suitability of state-based formal methods for industrial deployment. Softw. Pract. Exp. 48(12), 2350–2379 (2018). https://doi.org/10.1002/spe.2634
Mashkoor, A., Leuschel, M., Egyed, A.: Validation obligations: a novel approach to check compliance between requirements and their formal specification. In: ICSE2021 NIER, pp. 1–5 (2021)
Palanque, P., Campos, J.C.: Aman case study (2022). https://drive.google.com/file/d/1IqftxQIvrWpX1lcRts3WJzrBH7a3dMln/view
Punnoose, R.J., Armstrong, R.C., Wong, M.H., Jackson, M.: Survey of existing tools for formal verification. Technical report, Sandia National Lab. (SNL-CA), Livermore, CA (United States) (2014). https://doi.org/10.2172/1166644
Schneider, S., Treharne, H., Wehrheim, H., Williams, D.M.: Managing LTL properties in Event-B refinement. In: Albert, E., Sekerinski, E. (eds.) IFM 2014. LNCS, vol. 8739, pp. 221–237. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-10181-1_14
Stock, S., Mashkoor, A., Leuschel, M., Egyed, A.: Trace refinement in B and Event-B. In: Riesco, A., Zhang, M. (eds.) Formal Methods and Software Engineering. ICFEM 2022. Lecture Notes in Computer Science, vol. 13478, pp. 316–333. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-17244-1_19
Stock, S., Vu, F., Mashkoor, A., Leuschel, M., Egyed, A.: IVOIRE Deliverable 1.1: Classification of existing VOs & tools and Formalization of VOs semantics. arXiv preprint: arXiv:2205.06138 (2022)
Vu, F., Leuschel, M., Mashkoor, A.: Validation of formal models by timed probabilistic simulation. In: Raschke, A., Méry, D. (eds.) ABZ 2021. LNCS, vol. 12709, pp. 81–96. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-77543-8_6
Yeganefard, S., Butler, M., Rezazadeh, A.: Evaluation of a guideline by formal modelling of cruise control system in Event-B. In: Proceedings NFM, pp. 182–191 (2010)
Zhu, C., Butler, M., Cirstea, C., Hoang, T.S.: A fairness-based refinement strategy to transform liveness properties in Event-B models. Sci. Comput. Program. 225, 102907 (2023). https://doi.org/10.1016/j.scico.2022.102907, https://www.sciencedirect.com/science/article/pii/S016764232200140X
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Stock, S., Vu, F., Geleßus, D., Leuschel, M., Mashkoor, A., Egyed, A. (2023). Validation by Abstraction and Refinement. In: Glässer, U., Creissac Campos, J., Méry, D., Palanque, P. (eds) Rigorous State-Based Methods. ABZ 2023. Lecture Notes in Computer Science, vol 14010. Springer, Cham. https://doi.org/10.1007/978-3-031-33163-3_12
Download citation
DOI: https://doi.org/10.1007/978-3-031-33163-3_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-33162-6
Online ISBN: 978-3-031-33163-3
eBook Packages: Computer ScienceComputer Science (R0)