Skip to main content

An Open Alternative for SMT-Based Verification of Scade Models

  • Conference paper
Formal Methods for Industrial Critical Systems (FMICS 2014)

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

Abstract

Scade is an industrial strength synchronous language and tool suite for the development of the software of safety-critical systems. It supports formal verification using the so-called Design Verifier. Here we start developing a freely available alternative to the Design Verifier intended to support the academic study of verification techniques tailored for SCADE programs. Inspired by work of Hagen and Tinelli on the SMT-based verification of LUSTRE programs, we develop an SMT-based verification method for Scade programs. We introduce Lama as an intermediate language into which Scade programs can be translated and which easily can be transformed into SMT solver instances. We also present first experimental results of our approach using the SMT solver Z3.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abdulla, P.A., Deneux, J., Stålmarck, G., Ågren, H., Åkerlund, O.: Designing safe, reliable systems using scade. In: Margaria, T., Steffen, B. (eds.) ISoLA 2004. LNCS, vol. 4313, pp. 115–129. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  2. André, C.: Semantics of S.S.M (Safe State Machine). Tech. Rep. UMR 6070, I3S Laboratory, University of Nice-Sophia Antipolis (2003), http://rw4.cs.uni-saarland.de/teaching/esd07/papers/SSMsemantics.pdf

  3. Barrett, C., Sebastiani, R., Seshia, S., Tinelli, C.: Satisfiability modulo theories. In: Biere, A., Heule, M.J.H., van Maaren, H., Walsh, T. (eds.) Handbook of Satisfiability, ch. 26, pp. 825–885. IOS Press (2009)

    Google Scholar 

  4. Barrett, C., Stump, A., Tinelli, C.: The SMT-LIB Standard: Version 2.0. In: Proc. 8th Intern. Workshop on Satisfiability Modulo Theories, Edinburgh, UK (2010)

    Google Scholar 

  5. Basold, H.: Transformationen von Scade-Modellen zur SMT-basierten Verifikation. Master’s thesis, TU Braunschweig (2012), http://arxiv.org/abs/1403.2752

  6. Bjesse, P., Claessen, K.: SAT-based verification without state space traversal. In: Hunt Jr., W.A., Johnson, S.D. (eds.) FMCAD 2000. LNCS, vol. 1954, pp. 372–389. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  7. Cardelli, L.: Type systems. In: Tucker, A.B. (ed.) CRC Handbook of Computer Science and Engineering, ch. 97. Chapman and Hall (2004)

    Google Scholar 

  8. CENELEC: EN 50128 – Railway Applications – Software for Railway Control and Protection Systems. European Standard (2012)

    Google Scholar 

  9. Champion, A., Delmas, R., Dierkes, M.: Generating property-directed potential invariants by backward analysis. In: Proc. FTSCS. EPTCS, vol. 105, pp. 22–38 (2012)

    Google Scholar 

  10. Colaço, J.L., Pagano, B., Pouzet, M.: A conservative extension of synchronous data-flow with state machines. In: EMSOFT, pp. 173–182. ACM Press (2005)

    Google Scholar 

  11. DO-178B: Software considerations in airborne systems and equipment certification (December 2011)

    Google Scholar 

  12. Dutertre, B., de Moura, L.: The YICES SMT solver. Tech. rep., SRI Int. (2006)

    Google Scholar 

  13. Esterel: Scade language reference manual (2011)

    Google Scholar 

  14. Franzén, A.: Using satisfiability modulo theories for inductive verification of Lustre programs. Electr. Notes Theor. Comput. Sci. 144(1), 19–33 (2006)

    Article  Google Scholar 

  15. Hagen, G.: Verifying safety properties of Lustre programs: an SMT-based approach. Ph.D. thesis, Department of Computer Science. The University of Iowa (2008)

    Google Scholar 

  16. Hagen, G., Tinelli, C.: Scaling up the formal verification of Lustre programs with SMT-based techniques. In: Proc. FMCAD, pp. 1–9 (2008)

    Google Scholar 

  17. Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous dataflow programming language lustre. Proceedings of the IEEE 79(9), 1305–1320 (1991)

    Article  Google Scholar 

  18. Halbwachs, N., Lagnier, F., Raymond, P.: Synchronous observers and the verification of reactive systems. In: Proc. of AMAST 1993. Workshops in Computing, pp. 83–96. Springer, London (1994)

    Google Scholar 

  19. Halbwachs, N., Raymond, P.: A turotial of Lustre (2002), http://www-verimag.imag.fr/~halbwach/lustre-tutorial.html (last accessed: March 13, 2014)

  20. Huhn, M., Milius, S.: Observations on formal safety analysis in practice. Science of Computer Programming 80, Part A, 150–168 (2014)

    Google Scholar 

  21. Jeannet, B.: The NBAC verification/slicing tool, http://pop-art.inrialpes.fr/people/bjeannet/nbac/index.html (last accessed: February 17, 2014)

  22. Kahsai, T., Tinelli, C.: PKind: A parallel k-induction based model checker. In: Barnat, J., Heljanko, K. (eds.) PDMC. EPTCS, vol. 72, pp. 55–62 (2011)

    Google Scholar 

  23. Ljung, M.: Formal modelling and automatic verification of Lustre programs using NP-Tools. Master’s thesis, Prover Technology AB and Department of Teleinformatics, KTH, Stockholm (1999)

    Google Scholar 

  24. Maraninchi, F., Rémond, Y.: Mode-automata: About modes and states for reactive systems. In: Hankin, C. (ed.) ESOP 1998. LNCS, vol. 1381, pp. 185–199. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  25. de Moura, L., Owre, S., Shankar, N.: The SAL language manual. Tech. rep., SRI International (2003), http://sal.csl.sri.com/doc/language-report.pdf (last accessed: March 12, 2014)

  26. de Moura, L., Bjørner, N.: Z3: An efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  27. Pace, G., Halbwachs, N., Raymond, P.: Counter-example generation in symbolic abstract model-checking. Int. J. Software Tools and Technology Transfer 5(2), 158–164 (2004)

    Article  Google Scholar 

  28. Sheeran, M., Singh, S., Stålmarck, G.: Checking safety properties using induction and a SAT-solver. In: Hunt Jr., W.A., Johnson, S.D. (eds.) FMCAD 2000. LNCS, vol. 1954, pp. 108–125. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  29. Whalen, M., Cofer, D., Miller, S., Krogh, B.H., Storm, W.: Integration of formal analysis into a model-based software development process. In: Leue, S., Merino, P. (eds.) FMICS 2007. LNCS, vol. 4916, pp. 68–84. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Basold, H., Günther, H., Huhn, M., Milius, S. (2014). An Open Alternative for SMT-Based Verification of Scade Models. In: Lang, F., Flammini, F. (eds) Formal Methods for Industrial Critical Systems. FMICS 2014. Lecture Notes in Computer Science, vol 8718. Springer, Cham. https://doi.org/10.1007/978-3-319-10702-8_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-10702-8_9

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-10701-1

  • Online ISBN: 978-3-319-10702-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics