Compositional Analysis Using Component-Oriented Interpolation
We present a novel abstraction technique that exploits the compositionality of a concurrent system consisting of interacting components. It uses, given an invariant and a component of interest, bounded model checking (BMC) to quickly interpolate an abstraction of that component’s environment. The abstraction may be refined by increasing the BMC bound. Furthermore, it is only defined over variables shared between the component and its environment, resulting in an aggressive abstraction with several applications. We demonstrate its use in a verification setting, as we report on our open source implementation in the NuSMV model checker which was used to perform a practical assessment with industrially-sized models from satellite case studies of ongoing missions. These models are expressed in a formalized dialect of the component-oriented and industrially standardized Architecture Analysis and Design Language (AADL).
- 3.Buss, S.R.: Propositional proof complexity. In: Berger, U., Schwichtenberg, H. (eds.) Computational Logic. Springer, Heidelberg (1997)Google Scholar
- 11.Esteve, M.-A., Katoen, J.-P., Nguyen, V.Y., Postma, B., Yushtein, Y.: Formal correctness, safety, dependability and performance analysis of a satellite. In: Proceedings of 34th Software Engineering (ICSE), pp. 1022–1031. IEEE (2012)Google Scholar
- 12.Feiler, P.H., Gluch, D.P.: Model-Based Engineering with AADL: An Introduction to the SAE Architecture Analysis & Design Language. Addison-Wesley, Upper Saddle River (2012)Google Scholar
- 14.Giannakopoulou, D., Pasareanu, C.S., Barringer, H.: Assumption generation for software component verification. In: Proceedings of 17th Automated Software Engineering (ASE), pp. 3–12. IEEE (2002)Google Scholar
- 21.Nguyen, V.Y.: Trustworthy spacecraft design using formal methods. Ph.D. thesis, RWTH Aachen University, Germany (2012)Google Scholar