Timed Path Conditions in MATLAB/Simulink

  • Marcus Mikulcak
  • Paula Herber
  • Thomas Göthel
  • Sabine Glesner
Conference paper
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT, volume 523)


MATLAB/Simulink is a widely-used industrial tool for the development of complex embedded systems. However, due to the complexity and the dynamic character of the developed models, their analysis is a difficult challenge, in particular if timing aspects are involved. In this paper, we present an approach for the construction of timed path conditions for MATLAB/Simulink models. Timed path conditions allow for fine-grained conclusions about the existence of possibly critical paths through a model containing time-dependent elements. With the help of timed path conditions, it is possible to identify interference and non-interference between model parts. Furthermore, they have the potential to reduce the complexity of models to improve verifiability, reason about compliance with security policies as well as generate feasible, efficient test cases. We demonstrate the applicability of our approach with a shared buffer for public as well as confidential data.


  1. 1.
    Denning, D.E., Denning, P.J.: Certification of programs for secure information flow. Commun. ACM 20, 504–513 (1977)CrossRefGoogle Scholar
  2. 2.
    dSpace: TargetLink Embedded Code Generator (2015).
  3. 3.
    Goguen, J.A., Meseguer, J.: Security policies and security models. In: Symposium on Security and Privacy. IEEE (1982)Google Scholar
  4. 4.
    Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data flow programming language LUSTRE. Proc. IEEE 79, 1305–1320 (1991)CrossRefGoogle Scholar
  5. 5.
    Hammer, C., Krinke, J., Snelting, G.: Information flow control for java based on path conditions in dependence graphs. In: International Symposium on Secure Software Engineering. IEEE (2006)Google Scholar
  6. 6.
    Hammer, C., Schaade, R., Snelting, G.: Static path conditions for Java. In: Workshop on Programming Languages and Analysis for Security. ACM (2008)Google Scholar
  7. 7.
    Herber, P., Reicherdt, R., Bittner, P.: Bit-precise formal verification of discrete-time MATLAB/Simulink models using SMT solving. In: EMSOFT (2013)Google Scholar
  8. 8.
    Hu, W., Wegener, J., Stürmer, I., Reicherdt, R., Salecker, E., Glesner, S.: MeMo-methods of model quality. In: MBEES (2011)Google Scholar
  9. 9.
    King, J.C.: Symbolic execution and program testing. ACM Commun. 19, 385–394 (1976)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Krinke, J., Snelting, G.: Validation of measurement software as an application of slicing and constraint solving. Inf. Softw. Technol. 40, 661–675 (1998)CrossRefGoogle Scholar
  11. 11.
    MathWorks: MATLAB/Simulink (2015).
  12. 12.
    Messaoud, S.: Translating discrete time Simulink to SIGNAL. Ph.D. thesis, Virginia Tech (2014)Google Scholar
  13. 13.
    NICTA: The MiniZinc Constraint Programming Language (2014).
  14. 14.
    Reicherdt, R., Glesner, S.: Slicing MATLAB/Simulink models. In: ICSE. IEEE (2012)Google Scholar
  15. 15.
    Sabelfeld, A., Myers, A.C.: Language-based information-flow security. IEEE J. Sel. Areas Commun. 21, 5–19 (2003)CrossRefGoogle Scholar
  16. 16.
    Schulte, C., Lagerkvist, M., Tack, G.: Gecode: generic constraint development environment. In: INFORMS Annual Meeting (2009)Google Scholar
  17. 17.
    Tripakis, S., Sofronis, C., Caspi, P., Curic, A.: Translating discrete-time Simulink to Lustre. ACM Trans. Embed. Comput. Syst. (TECS) 4, 779–818 (2005)CrossRefGoogle Scholar
  18. 18.
    Whalen, M.W., Hardin, D., Wagner, L.G.: Model checking information flow. In: Hardin, D. (ed.) Design and Verification of Microprocessor Systems for High-Assurance Applications. Springer, Boston (2010). Scholar

Copyright information

© IFIP International Federation for Information Processing 2017

Authors and Affiliations

  1. 1.Technische Universität BerlinBerlinGermany

Personalised recommendations