Skip to main content

Towards Realizability Checking of Contracts Using Theories

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9058))

Abstract

Virtual integration techniques focus on building architectural models of systems that can be analyzed early in the design cycle to try to lower cost, reduce risk, and improve quality of complex embedded systems. Given appropriate architectural descriptions and compositional reasoning rules, these techniques can be used to prove important safety properties about the architecture prior to system construction. Such proofs build from “leaf-level” assume/guarantee component contracts through architectural layers towards top-level safety properties. The proofs are built upon the premise that each leaf-level component contract is realizable; i.e., it is possible to construct a component such that for any input allowed by the contract assumptions, there is some output value that the component can produce that satisfies the contract guarantees. Without engineering support it is all too easy to write leaf-level components that can’t be realized. Realizability checking for propositional contracts has been well-studied for many years, both for component synthesis and checking correctness of temporal logic requirements. However, checking realizability for contracts involving infinite theories is still an open problem. In this paper, we describe a new approach for checking realizability of contracts involving theories and demonstrate its usefulness on several examples.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. SAE-AS5506: Architecture Analysis and Design Language. SAE (2004)

    Google Scholar 

  2. Friedenthal, S., Moore, A., Steiner, R.: A Practical Guide to SysML: Systems Modeling Language. Morgan Kaufmann Publishers Inc., San Francisco (2008)

    Google Scholar 

  3. Consortium, A.: Automotive Open System Architecture (AUTOSAR) Revision 4.2.1. AUTOSAR (2014)

    Google Scholar 

  4. Varona-Gomez, R., Villar, E.: Aadl simulation and performance analysis in systemc. In: 2009 14th IEEE International Conference on Engineering of Complex Computer Systems, pp. 323–328 (2009)

    Google Scholar 

  5. Bozzano, M., Cimatti, A., Katoen, J.P., Nguyen, V.Y., Noll, T., Roveri, M.: Safety, dependability and performance analysis of extended aadl models. Comput. J. 54, 754–775 (2011)

    Article  Google Scholar 

  6. Apvrille, L., Roudier, Y.: SysML-Sec: A model-driven environment for developing secure embedded systems. In: SAR-SSI 2013, 8ème Conférence sur la Sécurité des Architectures Réseaux et des Systèmes d’Information, Mont-de-Marsan, France, 16–18 Septembre 2013

    Google Scholar 

  7. Bozzano, M., Cimatti, A., Katoen, J.P., Katsaros, P., Mokos, K., Nguyen, V.Y., Noll, T., Postma, B., Roveri, M.: Spacecraft early design validation using formal methods. Reliability Engineering and System Safety 132 (2014)

    Google Scholar 

  8. Whalen, M.W., Gacek, A., Cofer, D., Murugesan, A., Heimdahl, M.P., Rayadurgam, S.: Your what is my how: Iteration and hierarchy in system design. IEEE Software 30, 54–60 (2013)

    Article  Google Scholar 

  9. Rushby, J.: New challenges in certification for aircraft software. In: Proceedings of the Ninth ACM Int’l Conf. on Embedded Software, pp. 211–218. ACM (2011)

    Google Scholar 

  10. Miller, S.P., Tribble, A.C., Whalen, M.W., Heimdahl, M.P.E.: Proving the shalls: Early validation of requirements through formal methods. Int. J. Softw. Tools Technol. Transf. 8, 303–319 (2006)

    Article  Google Scholar 

  11. Hammond, J., Rawlings, R., Hall, A.: Will it work? [requirements engineering]. In: Proceedings of Fifth IEEE Int’l Symposium on Requirements Engineering, 2001, pp. 102–109 (2001)

    Google Scholar 

  12. Cofer, D.D., Gacek, A., Miller, S.P., Whalen, M.W., LaValley, B., Sha, L.: Compositional verification of architectural models. In: Goodloe, A.E., Person, S. (eds.) Proceedings of the 4th NASA Formal Methods Symposium (NFM 2012). LNCS, vol. 7226, pp. 126–140. Springer-Verlag, Heidelberg (2012)

    Chapter  Google Scholar 

  13. Pnueli, A., Rosner, R.: On the Synthesis of a Reactive Module. In: Proceedings of the 16th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL 1989), pp. 179–190 (1989)

    Google Scholar 

  14. Bohy, A., Bruyére, V., Filiot, E., Jin, N., Raskin, J.F.: Acacia+, a tool for LTL Synthesis. In: Madhusudan, P., Seshia, S.A. (eds.) Computer Aided Verification (CAV 2012). LNCS, vol. 7358, pp. 652–657. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  15. Hamza, J., Jobstmann, B., Kuncak, V.: Synthesis for regular specifications over unbounded domains. In: Proceedings of the 2010 Conference on Formal Methods in Computer-Aided Design, pp. 101–109 (2010)

    Google Scholar 

  16. Chatterjee, K., Henzinger, T.A.: Assume-guarantee synthesis. In: Grumberg, O., Huth, M. (eds.) Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2007). LNCS, vol. 4424, pp. 261–275. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  17. Murugesan, A., Whalen, M.W., Rayadurgam, S., Heimdahl, M.P.: Compositional verification of a medical device system. In: ACM Int’l Conf. on High Integrity Language Technology (HILT) 2013. ACM (2013)

    Google Scholar 

  18. Katis, A., Gacek, A., Whalen, M.W.: Machine-checked proofs for realizability checking algorithms (2015) (submitted). http://arxiv.org/abs/1502.01292

  19. Gacek, A.: JKind - a Java implementation of the KIND model checker (2014). https://github.com/agacek/jkind

  20. Hagen, G.: Verifying safety properties of Lustre programs: an SMT-based approach. PhD thesis, University of Iowa (2008)

    Google Scholar 

  21. De Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) Tools and Algorithms for the Construction and Analysis of Systems. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  22. Murugesan, A., Sokolsky, O., Rayadurgam, S., Whalen, M., Heimdahl, M., Lee, I.: Linking abstract analysis to concrete design: A hierarchical approach to verify medical CPS safety. In: Proceedings of ICCPS 2014 (2014)

    Google Scholar 

  23. Gunter, C.A., Gunter, E.L., Jackson, M., Zave, P.: A Reference model for Requirements and Specifications. IEEE Software 17, 37–43 (2000)

    Google Scholar 

  24. Klein, U., Pnueli, A.: Revisiting synthesis of GR(1) specifications. In: Barner, S., Harris, I., Kroening, D., Raz, O. (eds.) Hardware and Software: Verification and Testing (HVC 2010). LNCS, vol. 6504, pp. 161–181. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  25. Tini, S., Maggiolo-Schettini, A.: Compositional Synthesis of Generalized Mealy Machines. Fundamenta Informaticae 60, 367–382 (2003)

    MathSciNet  Google Scholar 

  26. Beneš, N., Černá, I.: Factorization for component-interaction automata. In: Bieliková, M., Friedrich, G., Gottlob, G., Katzenbeisser, S., Turán, G. (eds.) Theory and Practice of Computer Science. LNCS, vol. 7147, pp. 554–565. Springer, Heidelberg (2012)

    Google Scholar 

  27. Aziz, A., Balarin, F., Braton, R., Sangiovanni-Vincentelli, A.: Sequential synthesis using SIS. In: Proceedings of the 1995 IEEE/ACM International Conference on Computer-Aided Design (ICCAD 1995), pp. 612–617 (1995)

    Google Scholar 

  28. Cimatti, A., Micheli, A., Roveri, M.: Solving temporal problems using SMT: Weak controllability. In: AAAI, pp. 448–454 (2012)

    Google Scholar 

  29. Cimatti, A., Micheli, A., Roveri, M.: Solving temporal problems using SMT: Strong controllability. In: Milano, M. (ed.) Principles and Practice of Constraint Programming (CP). LNCS, vol. 7514, pp. 248–264. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  30. Cimatti, A., Micheli, A., Roveri, M.: Solving strong controllability of temporal problems with uncertainty using SMT. Constraints (2014)

    Google Scholar 

  31. Beyene, T., Chaudhuri, S., Popeea, C., Rybalchenko, A.: A constraint-based approach to solving games on infinite graphs. In: Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. POPL 2014, pp. 221–233. ACM, New York, NY, USA (2014)

    Google Scholar 

  32. Beyene, T.A., Popeea, C., Rybalchenko, A.: Solving existentially quantified Horn clauses. In: Sharygina, N., Veith, H. (eds.) Computer Aided Verification (CAV). LNCS, vol. 8044, pp. 869–882. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  33. Bradley, A.: SAT-based model checking without unrolling. In: Jhala, R., Schmidt, D. (eds.) Verification, Model Checking, and Abstract Interpretation (VMCAI). LNCS, vol. 6538, pp. 70–87. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andrew Gacek .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Gacek, A., Katis, A., Whalen, M.W., Backes, J., Cofer, D. (2015). Towards Realizability Checking of Contracts Using Theories. In: Havelund, K., Holzmann, G., Joshi, R. (eds) NASA Formal Methods. NFM 2015. Lecture Notes in Computer Science(), vol 9058. Springer, Cham. https://doi.org/10.1007/978-3-319-17524-9_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-17524-9_13

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-17523-2

  • Online ISBN: 978-3-319-17524-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics