Large-Scale Directed Model Checking LTL

  • Stefan Edelkamp
  • Shahid Jabbar
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3925)


To analyze larger models for explicit-state model checking, directed model checking applies error-guided search, external model checking uses secondary storage media, and distributed model checking exploits parallel exploration on multiple processors.

In this paper we propose an external, distributed and directed on-the-fly model checking algorithm to check general LTL properties in the model checker SPIN. Previous attempts are restricted to checking safety properties. The worst-case I/O complexity is bounded by \(O(\mbox{\em sort}(|{\cal F}||{\cal R}|)/p+ l \cdot \mbox{\em scan}(|{\cal F}||{\cal S}|))\), where \({\cal S}\) and \({\cal R}\) are the sets of visited states and transitions in the synchronized product of the Büchi automata for the model and the property specification, \({\cal F}\) is the number of accepting states, l is the length of the shortest counterexample, and p is the number of processors. The algorithm we propose returns minimal lasso-shaped counterexamples and includes refinements for property-driven exploration.


Model Check Linear Temporal Logic Model Check Problem Linear Temporal Logic Formula Model Check Algorithm 
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.
    Aggarwal, A., Vitter, J.S.: Complexity of sorting and related problems. In: Ottmann, T. (ed.) ICALP 1987. LNCS, vol. 267, pp. 467–478. Springer, Heidelberg (1987)CrossRefGoogle Scholar
  2. 2.
    Aggarwal, A., Vitter, J.S.: The input/output complexity of sorting and related problems. Journal of the ACM 31(9), 1116–1127 (1988)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Barnat, J., Brim, L., Cerna, I.: Property driven distribution of nested DFS. In: International Workshop on Verification and Computational Logic (VCL), pp. 1–10 (2002)Google Scholar
  4. 4.
    Barnat, J., Brim, L., Chaloupka, J.: Parallel breadth-first search LTL model checking. In: International Conference on Automated Software Engineering (ASE), pp. 106–115 (2003)Google Scholar
  5. 5.
    Barnat, J., Brim, L., Chaloupka, J.: From distribution memory cycle detection to parallel model checking. Electronic Notes in Theoretical Computer Science 133, 21–39 (2005)CrossRefGoogle Scholar
  6. 6.
    Biere, A., Cimatti, A., Clarke, E., Strichman, O., Zhu, Y.: Bounded model checking. In: Advances in Computers, vol. 58. Academic Press, London (2003)Google Scholar
  7. 7.
    Brim, L., Cerna, I.: Accepting predecessors are better than back edges in distributed LTL model-checking. In: Hu, A.J., Martin, A.K. (eds.) FMCAD 2004. LNCS, vol. 3312, pp. 352–366. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  8. 8.
    Buchi, J.R.: On a decision method in restricted second order arithmetic. In: Conference on Logic, Methodology, and Philosophy of Science, pp. 1–11 (1962)Google Scholar
  9. 9.
    Cerna, I., Palanek, R.: Distributed explicit fair cycle detection. In: Ball, T., Rajamani, S.K. (eds.) SPIN 2003. LNCS, vol. 2648, pp. 49–73. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    Chiang, Y.-J., Goodrich, M.T., Grove, E.F., Tamasia, R., Vengroff, D.E., Vitter, J.S.: External memory graph algorithms. In: Symposium on Discrete Algorithms (SODA), pp. 139–149 (1995)Google Scholar
  11. 11.
    Clarke, E., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (2000)Google Scholar
  12. 12.
    Edelkamp, S., Jabbar, S., Schroedl, S.: External A*. In: Biundo, S., Frühwirth, T., Palm, G. (eds.) KI 2004. LNCS (LNAI), vol. 3238, pp. 226–240. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  13. 13.
    Edelkamp, S., Leue, S., Lluch-Lafuente, A.: Directed explicit-state model checking in the validation of communication protocols. International Journal on Software Tools for Technology 5(2-3), 247–267 (2004)CrossRefMATHGoogle Scholar
  14. 14.
    Edelkamp, S., Leue, S., Lluch-Lafuente, A.: Partial order reduction and trail improvement in directed model checking. International Journal on Software Tools for Technology 6(4), 277–301 (2004)CrossRefMATHGoogle Scholar
  15. 15.
    Fisler, K., Fraer, R., Kamhi, G., Vardi, Y., Ynag, Y.: Is there a best symbolic cycle detection algorithm. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 420–434. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Hirschberg, D.S.: A linear space algorithm for computing common subsequences. Communications of the ACM 18(6), 341–343 (1975)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Holzmann, G.J., Peled, D., Yannakakis, M.: On nested depth first search. The SPIN Verification System, 23–32 (1972)Google Scholar
  18. 18.
    Jabbar, S., Edelkamp, S.: I/O efficient directed model checking. In: Cousot, R. (ed.) VMCAI 2005. LNCS, vol. 3385, pp. 313–329. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  19. 19.
    Jabbar, S., Edelkamp, S.: Parallel external directed model checking with linear I/O. In: Emerson, E.A., Namjoshi, K.S. (eds.) VMCAI 2006. LNCS, vol. 3855, pp. 237–251. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  20. 20.
    Kautz, H., Selman, B.: Pushing the envelope: Planning propositional logic, and stochastic search. In: AAAI, pp. 1194–1201 (1996)Google Scholar
  21. 21.
    Korf, R.E.: Best-first frontier search with delayed duplicate detection. In: AAAI, pp. 650–657 (2004)Google Scholar
  22. 22.
    Korf, R.E., Schultze, P.: Large-scale parallel breadth-first search. In: AAAI (2005)Google Scholar
  23. 23.
    Korf, R.E., Zhang, W.: Divide-and-conquer frontier search applied to optimal sequence allignment. In: AAAI, pp. 910–916 (2000)Google Scholar
  24. 24.
    Kristensen, L., Mailund, T.: Efficient path finding with the sweep-line method using external storage. In: Dong, J.S., Woodcock, J. (eds.) ICFEM 2003. LNCS, vol. 2885, pp. 319–337. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  25. 25.
    Lluch-Lafuente, A.: Simplified distributed ltl model checking by localizing cycles. Technical report, Institute of Computer Science, University of Freiburg (2002)Google Scholar
  26. 26.
    Lluch-Lafuente, A.: Directed Search for the Verification of Communication Protocols. PhD thesis, Institute of Computer Science, University of Freiburg (2003)Google Scholar
  27. 27.
    Munagala, K., Ranade, A.: I/O-complexity of graph algorithms. In: Symposium on Discrete Algorithms (SODA), pp. 87–88 (2001)Google Scholar
  28. 28.
    Pearl, J.: Heuristics. Addison-Wesley, Reading (1985)Google Scholar
  29. 29.
    Reif, J.H.: Depth-first search is inherently sequential. Information Processing Letters 20, 229–234 (1985)MathSciNetCrossRefMATHGoogle Scholar
  30. 30.
    Safra, S.: On the complexity of omega-automata. In: Annual Symposium on Foundations of Computer Science, pp. 319–327. IEEE Computer Society, Los Alamitos (1998)Google Scholar
  31. 31.
    Sanders, P., Meyer, U., Sibeyn, J.F.: Algorithms for Memory Hierarchies. Springer, Heidelberg (2002)MATHGoogle Scholar
  32. 32.
    Schuppan, V., Biere, A.: From distribution memory cycle detection to parallel model checking. International Journal on Software Tools for Technology Transfer 5(2–3)Google Scholar
  33. 33.
    Schuppan, V., Biere, A.: Liveness checking as safety checking for infinite state spaces (2005) (to appear)Google Scholar
  34. 34.
    Sistla, A.P., Vardi, M.Y., Wolper, P.: The complementation problem for Buchi automata with applications to temporal logic. Theoretical Computer Science 49(2-3), 217–237 (1983)CrossRefMATHGoogle Scholar
  35. 35.
    Tarjan, R.: Depth-first search and linear graph algorithms. SIAM Journal of Computing (1), 146–160 (1972)Google Scholar
  36. 36.
    Wolper, P.: Temporal logic can be more expressive. Information and Control 56, 72–99 (1983)MathSciNetCrossRefMATHGoogle Scholar
  37. 37.
    Zhang, W.: Model checking operator procedures. In: Workshop on Model Checking Software (SPIN), pp. 200–215 (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Stefan Edelkamp
    • 1
  • Shahid Jabbar
    • 1
  1. 1.University of Dortmund

Personalised recommendations