Model Checking: One Can Do Much More Than You Think!

  • Joost-Pieter Katoen
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7141)


Model checking is an automated verification technique that actively is applied to find bugs in hardware and software designs. Companies like IBM and Cadence developed their in-house model checkers, and acted as driving forces behind the design of the IEEE-standardized temporal logic PSL. On the other hand, model checking C-, C#- and .NET-program code is an intensive research topic at, for instance, Microsoft and NASA. In this short paper, we briefly discuss three non-standard applications of model checking. The first example is taken from systems biology and shows the relevance of probabilistic reachability. Then, we show how to determine the optimal scheduling policy for multiple-battery systems so as to optimize the system’s lifetime. Finally, we discuss a stochastic job scheduling problem that —thanks to recent developments— can be solved using model checking.


Model Check Idle Period Symbolic Model Check Reachability Problem Battery Lifetime 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alur, R., Torre, S.L., Pappas, G.J.: Optimal paths in weighted timed automata. Theor. Comput. Sci. 318(3), 297–322 (2004)zbMATHCrossRefGoogle Scholar
  2. 2.
    Baier, C., Katoen, J.-P.: Principles of Model Checking. MIT Press (2008)Google Scholar
  3. 3.
    Baier, C., Katoen, J.-P., Hermanns, H.: Approximate Symbolic Model Checking of Continuous-Time Markov Chains (Extended Abstract). In: Baeten, J.C.M., Mauw, S. (eds.) CONCUR 1999. LNCS, vol. 1664, pp. 146–161. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  4. 4.
    Behrmann, G., Fehnker, A., Hune, T., Larsen, K.G., Pettersson, P., Romijn, J., Vaandrager, F.W.: Minimum-Cost Reachability for Priced Timed Automata. In: Di Benedetto, M.D., Sangiovanni-Vincentelli, A.L. (eds.) HSCC 2001. LNCS, vol. 2034, pp. 147–161. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  5. 5.
    Bruno, J.L., Downey, P.J., Frederickson, G.N.: Sequencing tasks with exponential service times to minimize the expected flow time or makespan. J. ACM 28(1), 100–113 (1981)MathSciNetzbMATHCrossRefGoogle Scholar
  6. 6.
    Clarke, E.M., Grumberg, O., Peled, D.A.: Model Checking. MIT Press (1999)Google Scholar
  7. 7.
    Clarke, E.M., Schlingloff, H.: Model checking. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. II, ch.24, pp. 1635–1790 (2000)Google Scholar
  8. 8.
    Grumberg, O., Veith, H. (eds.): 25 Years of Model Checking. LNCS, vol. 5000. Springer, Heidelberg (2008)zbMATHGoogle Scholar
  9. 9.
    Jongerden, M.R., Haverkort, B.R., Bohnenkamp, H.C., Katoen, J.-P.: Maximizing System Lifetime by Battery Scheduling. In: 39th IEEE/IFIP Conf. on Dependable Systems and Networks (DSN), pp. 63–72. IEEE Computer Society (2009)Google Scholar
  10. 10.
    Jongerden, M.R., Mereacre, A., Bohnenkamp, H.C., Haverkort, B.R., Katoen, J.-P.: Computing optimal schedules for battery usage in embedded systems. IEEE Trans. Industrial Informatics 5(3), 276–286 (2010)CrossRefGoogle Scholar
  11. 11.
    Katoen, J.-P., Klink, D., Leucker, M., Wolf, V.: Abstraction for Stochastic Systems by Erlang’s Method of Stages. In: van Breugel, F., Chechik, M. (eds.) CONCUR 2008. LNCS, vol. 5201, pp. 279–294. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    Katoen, J.-P., Zapreev, I.S., Hahn, E.M., Hermanns, H., Jansen, D.N.: The ins and outs of the probabilistic model checker MRMC. Perform. Eval. 68(2), 90–104 (2011)CrossRefGoogle Scholar
  13. 13.
    Klink, D., Remke, A., Haverkort, B.R., Katoen, J.-P.: Time-bounded reachability in tree-structured QBDs by abstraction. Perform. Eval. 68(2), 105–125 (2011)CrossRefGoogle Scholar
  14. 14.
    Kwiatkowska, M.Z., Norman, G., Parker, D.: PRISM: probabilistic model checking for performance and reliability analysis. SIGMETRICS Performance Evaluation Review 36(4), 40–45 (2009)CrossRefGoogle Scholar
  15. 15.
    Manwell, J., McGowan, J.: Lead acid battery storage model for hybrid energy systems. Solar Energy 50(5), 399–405 (1993)CrossRefGoogle Scholar
  16. 16.
    Neuhäußer, M.R.: Model Checking Nondeterministic and Randomly Timed Systems. PhD thesis, RWTH Aachen University and University of Twente (2010)Google Scholar
  17. 17.
    Neuhäußer, M.R., Stoelinga, M., Katoen, J.-P.: Delayed Nondeterminism in Continuous-Time Markov Decision Processes. In: de Alfaro, L. (ed.) FOSSACS 2009. LNCS, vol. 5504, pp. 364–379. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  18. 18.
    Neuhäußer, M.R., Zhang, L.: Time-bounded reachability probabilities in continuous-time Markov decision processes. In: 7th Int. Conf. on the Quantitative Evaluation of Systems (QEST), pp. 209–218. IEEE Computer Society (2010)Google Scholar
  19. 19.
    Nino-Mora, J.: Stochastic scheduling. In: Encyclopedia of Optimization, vol. V, pp. 367–372. Springer, Heidelberg (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Joost-Pieter Katoen
    • 1
    • 2
  1. 1.Software Modelling and Verification GroupRWTH Aachen UniversityGermany
  2. 2.Formal Methods and ToolsUniversity of TwenteThe Netherlands

Personalised recommendations