Abstract
Simulink has been widely used in industry to model and simulate embedded systems. With the increasing usage of embedded systems in real-time safety-critical situations, Simulink becomes deficient to analyze (timing) requirements with high-level assurance. In this article, we apply Timed Interval Calculus (TIC), a real-time specification language, to complement Simulink with TIC formal verification capability. We elaborately construct TIC library functions to model Simulink library blocks which are used to compose Simulink diagrams. Next, Simulink diagrams are automatically transformed into TIC models which preserve functional and timing aspects. Important requirements such as timing bounded liveness can be precisely specified in TIC for whole diagrams or some components. Lastly, validation of TIC models can be rigorously conducted with a high degree of automation using a generic theorem prover. Our framework can enlarge the design space by representing environment properties to open systems, and handle complex diagrams as the analysis of continuous and discrete behavior is supported.
Similar content being viewed by others
References
Adams MM, Clayton PB (2005) ClawZ: cost-effective formal verification for control systems. In: Proceedings of the 7th international conference on formal engineering methods. Springer, Heidelberg, pp 465–479
Arthan R, Caseley P, O’Halloran C, Smith A (2000) Clawz: control laws in Z. In: Proceedings of the 3rd international conference on formal engineering methods. IEEE Computer Society, Washington, pp 169–176
Butler RW (2004) Formalization of the integral calculus in the PVS theorem prover. Technical report, NASA Langley Research Center, Hampton, Virginia
Cavalcanti A, Clayton P, O’Halloran C (2005) Control law diagrams in Circus. In: Proceedings of the 13th international symposium of formal methods europe. Springer, Heidelberg, pp 253–268
Chen C, Dong JS (2006) Applying timed interval calculus to simulink diagrams. In: Proceedings of the 8th international conference on formal engineering methods. Springer, Heidelberg, pp 74–93
Chen C, Dong JS, Sun J (2007) A formal framework for modeling and verifying simulink diagrams. http://www.comp.nus.edu.sg/~chenchun/SimInTIC
Chen C, Dong JS, Sun J (2007) Machine-assisted proof support for validation beyond Simulink. In: Proceedings of the 9th international conference on formal engineering methods. Springer, Heidelberg, pp 96–115
Chen C, Dong JS, Sun J (2008) A verification system for timed interval calculus. In: Proceedings of the 30th international conference on software engineering. ACM, New York, pp 271–280
Cavalcanti A, Sampaio A, Woodcock J (2003) A refinement strategy for Circus. Formal Asp Comput 15(2–3): 146–181
Fidge CJ, Hayes IJ, Mahony BP (1998) Defining differentiation and integration in Z. In: Proceedings of the 2nd international conference on formal engineering methods. IEEE Computer Society, Washington, pp 64–73
Fidge CJ, Hayes IJ, Martin AP, Wabenhorst A (1998) A set-theoretic model for real-time specification and reasoning. In: Proceedings of the mathematics of program construction. Springer, Heidelberg, pp 188–206
Gupta S, Krogh BH, Rutenbar RA (2004) Towards formal verification of analog designs. In: proceedings of the international conference on computer-aided design. IEEE Computer Science, Washington, pp 210–217
Henzinger TA, Sifakis J (2006) The embedded systems design challenge. In Proceedings of the 14th international symposium on formal methods. Springer, Heidelberg, pp 1–15
Jersak M, Cai Y, Ziegenbein D, Ernst R (2000) A transformational approach to constraint relaxation of a time-driven simulation model. In: Proceedings of the 13th international symposium on System synthesis. IEEE Computer Society, Washington, pp 137–142
Jantsch A, Sander I (2005) Models of computation and languages for embedded system design. IEE Proc Comput Digit Tech 152(2): 114–129
Kowalewski S, Stursberg O, Fritz M, Graf H, Hoffmann I, Preußig J, Remelhe M, Simon S, Treseler H (1999) A case study in tool-aided analysis of discretely controlled continuous systems: The two tanks problem. In: Hybrid systems V. Springer, Heidelberg, pp~163–185
Liu Y, Sun J, Dong JS (2008) An analyzer for extended compositional process algebras. In: Companion of the 30th international conference on software engineering. ACM, New York, pp 919–920
Meenakshi B, Bhatnagar A, Roy S (2006) Tool for translating simulink models into input language of a model checker. In: Proceedings of the 8th international conference on formal engineering methods. Springer, Heidelberg, pp 606–620
Muñoz C, Carreño V, Dowek G, Butler RW (2003) Formal verification of conflict detection algorithms. Int J Softw Tools Technol Transf 4(3): 371–380
Mahony BP, Dong JS (1998) Blending object-Z and timed CSP: an introduction to TCOZ. In: Proceedings of the 20th international conference on software engineering. IEEE Computer Society, Washington, pp 95–104
Mahony BP, Dong JS (2000) Timed communicating object Z. IEEE Trans Softw Eng 26(2): 150–177
Mahony BP, Hayes IJ (1992) A case-study in timed refinement: a mine pump. IEEE Trans Softw Eng 18(9): 817–826
Owre S, Rushby JM, Shankar N (1992) PVS: a prototype verification system. In: Proceedings of the 11th international conference on automated deduction. Springer, Heidelberg, pp 748–752
Pnueli A (2002) Embedded systems: challenges in specification and verification. In: Proceedings of the 2nd international conference on embedded software. Springer, Heidelberg, pp 1–14
Sims S, Cleaveland R, Butts K, Ranville S (2001) Automated validation of software models. In: Proceedings of the 16th international conference on automated software engineering. IEEE Computer Society, Washington, pp 91–96
Sun J, Liu Y, Dong JS, Wang HH (2008) Specifying and verifying event-based fairness enhanced systems. In: Proceedings of the 10th international conference on formal engineering methods. Springer, Heidelberg, pp 5–24
Tripakis S, Sofronis C, Caspi P, Curic A (2005) Translating discrete-time Simulink to Lustre. Trans Embed Comput Syst 4(4): 779–818
The MathWorks. Simulink® 7—reference, March 2008
The MathWorks. Simulink® 7—using Simulink, March 2008
Tiwari A, Shankar N, Rushby JM (2003) Invisible formal methods for embedded control systems. Proc IEEE 91(1): 29–39
Wang F (2004) Formal verification of timed systems: a survey and perspective. Proc IEEE 92(8): 1283–1305
Woodcock J, Davies J (1996) Using Z: specification, refinement and proof. Prentice-Hall, Englewood Cliffs
Zhou C, Hoare CAR, Ravn AP (1991) A calculus of durations. Inf Proc Lett 40(5): 269–276
Zhou C, Li X (1994) A mean value calculus of durations. In: A classical mind: essays in honour of C. A. R. Hoare. Prentice-Hall International, Englewood Cliffs, pp 431–451
Zhou C, Ravn AP, Hansen MR (1993) An extended duration calculus for hybrid real-time systems. In: Hybrid systems. Springer, Heidelberg, pp 36–59
Author information
Authors and Affiliations
Corresponding author
Additional information
Received 9 January 2008 Accepted in revised form 31 December 2008 by U.H.M. Martin and J.C.P. Woodcock
Rights and permissions
About this article
Cite this article
Chen, C., Dong, J.S. & Sun, J. A formal framework for modeling and validating Simulink diagrams. Form Asp Comp 21, 451–483 (2009). https://doi.org/10.1007/s00165-009-0108-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-009-0108-9