Automated Compositional Proofs for Real-Time Systems

  • Carlo A. Furia
  • Matteo Rossi
  • Dino Mandrioli
  • Angelo Morzenti
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3442)

Abstract

We present a framework for formally proving that the composition of the behaviors of the different parts of a complex, real-time system ensures a desired global specification of the overall system. The framework is based on a simple compositional rely/guarantee circular inference rule, plus a small set of conditions concerning the integration of the different parts into a whole system. The reference specification language is the TRIO metric linear temporal logic.

The novelty of our approach with respect to existing compositional frameworks — most of which do not deal explicitly with real-time requirements — consists mainly in its generality and abstraction from any assumptions about the underlying computational model and from any semantic characterizations of the temporal logic language used in the specification. Moreover, the framework deals equally well with continuous and discrete time. It is supported by a tool, implemented on top of the proof-checker PVS, to perform deduction-based verification through theorem-proving of modular real-time axiom systems.

As an example of application, we show the verification of a real-time version of the old-fashioned but still relevant “benchmark” of the dining philosophers problem.

Keywords

Formal verification modular systems real-time compositionality rely/guarantee axiom systems 

References

  1. 1.
    Abadi, M., Lamport, L.: Conjoining specifications. ACM TOPLAS 17(3), 507–535 (1995)CrossRefGoogle Scholar
  2. 2.
    Abadi, M., Merz, S.: An abstract account of composition. In: Hájek, P., Wiedermann, J. (eds.) MFCS 1995. LNCS, vol. 969, pp. 499–508. Springer, Heidelberg (1995)Google Scholar
  3. 3.
    Alur, R., Henzinger, T.A.: Reactive modules. Formal Methods in System Design 15(1), 7–48 (1999)CrossRefMathSciNetGoogle Scholar
  4. 4.
    Amla, N., Emerson, E.A., Namjoshi, K.S., Trefler, R.J.: Abstract patterns of compositional reasoning. In: Amadio, R.M., Lugiez, D. (eds.) CONCUR 2003. LNCS, vol. 2761, pp. 431–445. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  5. 5.
    Ciapessoni, E., Coen-Porisini, A., Crivelli, E., Mandrioli, D., Mirandola, P., Morzenti, A.: From formal models to formally-based methods: an industrial experience. ACM TOSEM 8(1), 79–113 (1999)CrossRefGoogle Scholar
  6. 6.
    de Roever, W.-P.: The need for compositional proof systems: A survey. In: de Roever, W.-P., Langmaack, H., Pnueli, A. (eds.) COMPOS 1997. LNCS, vol. 1536, pp. 1–22. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  7. 7.
    de Roever, W.-P., de Boer, F., Hannemann, U., Hooman, J., Lakhnech, Y., Poel, M., Zwiers, J.: Concurrency Verification: Introduction to Compositional and Noncompositional Methods. Cambridge University Press, Cambridge (2001)MATHGoogle Scholar
  8. 8.
    Dijkstra, E.W.: Hierarchical ordering of sequential processes. In: Operating Sys. Tech., pp. 72–93 (1972)Google Scholar
  9. 9.
    Finkbeiner, B., Manna, Z., Sipma, H.B.: Deductive verification of modular systems. In: de Roever, W.-P., Langmaack, H., Pnueli, A. (eds.) COMPOS 1997. LNCS, vol. 1536, pp. 239–275. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  10. 10.
    Furia, C.A.: Compositional proofs for real-time modular systems. Laurea degree thesis, Politecnico di Milano (2003)Google Scholar
  11. 11.
    Furia, C.A., Rossi, M., Mandrioli, D., Morzenti, A.: Automated compositional proofs for real-time systems. Full version with appendices available online (2005), from http://www.elet.polimi.it/upload/furia
  12. 12.
    Gargantini, A., Morzenti, A.: Automated deductive requirement analysis of critical systems. ACM TOSEM 10(3), 255–307 (2001)CrossRefGoogle Scholar
  13. 13.
    Hooman, J.: Compositional verification of real-time applications. In: de Roever, W.-P., Langmaack, H., Pnueli, A. (eds.) COMPOS 1997. LNCS, vol. 1536, pp. 276–300. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  14. 14.
    Maier, P.: Compositional circular assume-guarantee rules cannot be sound and complete. In: Gordon, A.D. (ed.) FOSSACS 2003. LNCS, vol. 2620, pp. 343–357. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  15. 15.
    Mendelson, E.: Introduction to Mathematical Logic. Chapman & Hall, Boca Raton (1997)MATHGoogle Scholar
  16. 16.
    Namjoshi, K.S., Trefler, R.J.: On the completeness of compositional reasoning. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 139–153. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  17. 17.
    Ostroff, J.S.: Composition and refinement of discrete real-time systems. ACM TOSEM 8(1), 1–48 (1999)CrossRefGoogle Scholar
  18. 18.
    Owre, S., Rushby, J.M., Shankar, N.: PVS: A Prototype Verification System. In: Kapur, D. (ed.) CADE 1992. LNCS, vol. 607, pp. 748–752. Springer, Heidelberg (1992)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Carlo A. Furia
    • 1
  • Matteo Rossi
    • 1
  • Dino Mandrioli
    • 1
  • Angelo Morzenti
    • 1
  1. 1.Dipartimento di Elettronica e InformazionePolitecnico di MilanoMilanoItaly

Personalised recommendations