Skip to main content
Log in

Compact Data Structures and State-Space Reduction for Model-Checking Real-Time Systems

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

During the past few years, a number of verification tools have been developed for real-time systems in the framework of timed automata. One of the major problems in applying these tools to industrial-sized systems is the huge memory-usage for the exploration of the state-space of a network (or product) of timed automata, as the model-checkers must keep information about not only the control structure of the automata but also the clock values specified by clock constraints. In this paper, we present a compact data structure for representing clock constraints. The data structure is based on an O(n 3) algorithm which, given a constraint system over real-valued variables consisting of bounds on differences, constructs an equivalent system with a minimal number of constraints. In addition, we have developed an on-the-fly reduction technique to minimize the space-usage. Based on static analysis of the control structure of a network of timed automata, we are able to compute a set of symbolic states that cover all the dynamic loops of the network in an on-the-fly searching algorithm, and thus ensure termination in reachability analysis. The two techniques and their combination have been implemented in the tool UPPAAL. Our experimental results demonstrate that the techniques result in truly significant space-reductions: for six examples from the literature, the space saving is between 75% and 94%, and in (nearly) all examples time-performance is improved. Noteworthy is also the observation that the two techniques are completely orthogonal.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Abadi, M., and Lamport, L. 1992. An old-fashioned recipe for real time. In Proceedings of REX Workshop Real-Time: Theory in Practice. LNCS No. 600.

  • Aceto, L., Bergueno, A., and Larsen, K. G. 1998. Model checking via reachability testing for timed automata. In Bernard Steffen (ed.), Proceedings of the 4th Workshop on Tools and Algorithms for the Construction and Analysis of Systems. LNCS, No. 1384, Berlin: Spring-Verlag, pp. 263–280.

    Google Scholar 

  • Aho, A. V., Garey, M. R., and Ullman, J. D. 1972. The transitive reduction of a directed graph. SIAM Journal on Computing 1(2): 131–137.

    Google Scholar 

  • Alur, R., and Dill, D. 1990. Automata for modeling real-time systems. In Proc. Of Int. Colloquium on Algorithms, Languages and Programming. LNCS, No. 443, Berlin: Springer-Verlag, pp. 332–335.

    Google Scholar 

  • Andersen, H. R. 1995. Partial model checking. In Proceedings of Symp. on Logic in Computer Science, pp. 398–407.

  • Asarin, E., Maler, O., and Pneuli, A. 1997. Data-structures for the verification of timed automata. In Proceedings of the International Workshop on Hybrid and Real-Time Systems.

  • Bellman, R. 1957. Dynamic Programming. Princeton University Press.

  • Bengtsson, J., Griffioen, W. O. D., Kristoffersen, K. J., Larsen, K. G., Larsson, F., Pettersson, P., and Yi, W. 1996. Verification of an audio protocol with bus collision using UPPAAL. In R. Alur and T. A. Henzinger (eds), Proceedings of the 8th International Conference on Computer Aided Verification. LNCS, No. 697.

  • Clarke, E. M., Grümberg, O., and Long, D. E. 1992. Model checking and abstraction. In Principles of Programming Languages, pp. 450–462.

  • Daws C., and Yovine, S. 1995. Two examples of verification of multirate timed automata with KRONOS. In Proceedings of the 16th IEEE Real-Time Systems Symposium, pp. 66–75.

  • Dill, D. 1989. Timing assumptions and verification of finite-state concurrent systems. In J. Sifakis (ed.), Proceeding of Automatic Verification Methods for Finite State Systems. LNCS, No. 407, Berlin. Springer-Verlag, 197–212.

    Google Scholar 

  • Emerson E. A., and Jutla, C. S. 1993. Symmetry and model checking. In Proceedings of the 5th International Conference on Computer Aided Verification. LNCS, No. 697.

  • Godefroid P., and Wolper, P. 1991. A partial approach to model checking. In Proceedings of IEEE Symposium on Logic in Computer Science, pp. 406–415.

  • Havelund, K., Skou, A., Larsen, K. G., and Lund, K. 1997. Formal modeling and analysis of an audio/video protocol: An industrial case study using UPPAAL. In Proceedings of the 18th IEEE Real-Time Systems Symposium, pp. 2–13.

  • Henzinger, T. A., Ho, P.-H., and W-Toi, H. 1995 A users guide to HYTECH. Technical Report, Department of Computer Science, Cornell University.

  • Henzinger, T. A., Nicollin, X., Sifakis, J., and Yovine, S. 1994. Symbolic Model Checking for Real Time Systems. Information and Computation 111(2): 193–244.

    Google Scholar 

  • Holzmann, G. 1991. The Design and Validation of Computer Protocols. Prentice Hall.

  • Kristoffersen, K. J., Larroussinie, F., Larsen, K. G., Pettersson, P., and Yi, W. 1997. A compositional proof of a real-time mutual exclusion protocol. In Proceedings of the 7th International Joint Conference on the Theory and Practice of Software Development, pp. 565–579.

  • Larsen, K. G. Petterson, P., and Yi, W. 1995. Compositional and symbolic model-checking of real-time systems. In Proc. of the 16th IEEE Real-Time Systems Symposium, pp. 76–87.

  • Larsen, K. G. Petterson, P., and Yi, W. 1995. Diagnostic model-checking for real-time systems. In Proceedings of Workshop on Verification and Control of Hybrid Systems III. LNCS, No. 1066, Berlin, Springer-Verlag, 575–586.

    Google Scholar 

  • Larsen, K. G., Pettersson, P., and Yi, W. 1997. UPPAAL in a nutshell. International Journal on Software Tools for Technology Transfer 1(1-2): 134–152.

    Google Scholar 

  • Pagani, P. 1996. Partial orders and verification of real-time systems. In Bengt Jonsson and Joachim Parrow (eds), Proceeding of Formal Techniques in Real-Time and Fault-Tolerant Systems. LNCS, No. 1135, Berlin: Springer-Verlag, pp. 327–346.

    Google Scholar 

  • Papadimitriou, C. H. 1994. Computational Complexity. Addison-Wesley.

  • Puri, A., and Varaiya, P. 1994. Verification of hybrid systems using abstractions. In Hybrid Systems Workshop. LNCS, No. 818, Berlin, Springer-Verlag.

    Google Scholar 

  • Sedgewick, R. 1993. Algorithms. 2nd edn, Addison-Wesley, 1988.

  • Shankar, N. 1993. Verification of real-time systems using PVS. In Proceedings of the 5th International Conference on Computer Aided Verification. LNCS, No. 697, Berlin, Springer-Verlag.

    Google Scholar 

  • Valmari, A. 1990. A stubborn attack on state explosion. Theoretical Computer Science 3.

  • Vardi, M. Y., and Wolper, P. 1986. An automata-theoretic approach to automatic program verification. In Proceedings of Symposium on Logic in Computer Science, pp. 322–331.

  • Yannakakis, M., and Lee, D. 1993. An efficient algorithm for minimizing real-time transition systems. In Proceedings of the 5th International Conference on Computer Aided Verification, LNCS, No. 697, pp. 210–224.

  • Yi, W., Pettersson, P., and Daniels, M. 1994. Automatic verification of real-time communicating systems by constraint-solving. In Proceedings of the 7th International Conference on Formal Description Techniques, pp. 223–238.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Larsen, K.G., Larsson, F., Pettersson, P. et al. Compact Data Structures and State-Space Reduction for Model-Checking Real-Time Systems. Real-Time Systems 25, 255–275 (2003). https://doi.org/10.1023/A:1025132427497

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1025132427497

Navigation