Directed explicit model checking with HSF-SPIN

  • Stefan Edelkamp
  • Alberto Lluch Lafuente
  • Stefan Leue
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2057)


We present the explicit state model checker HSF-SPIN which is based on the model checker SPIN and its Promela modeling language. HSF-SPIN incorporates directed search algorithms for checking safety and a large class of LTL-specified liveness properties. We start off from the A* algorithm and define heuristics to accelerate the search into the direction of a specified failure situation. Next we propose an improved nested depth-first search algorithm that exploits the structure of Promela Never-Claims. As a result of both improvements, counterexamples will be shorter and the explored part of the state space will be smaller than with classical approaches, allowing to analyze larger state spaces. We evaluate the impact of the new heuristics and algorithms on a set of protocol models, some of which are real-world industrial protocols.


Model Check Safety Property Liveness Property Strongly Connect Component Symbolic Model Check 
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.
    A. Biere. μcke-efficient μ-calculus model checking. In Computer Aided Verification, pages 468–471, 1997.Google Scholar
  2. 2.
    D. Brand and P. Zafiropulo. On communicating finite-state machines. Journal of the ACM, 30(2):323–342, Apr 1983.zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    E. Clarke, O. Grumberg, and D. Peled. Model Checking. MIT Press, 2000.Google Scholar
  4. 4.
    T. H. Cormen, C. E. Leiserson, and R. L. Rivest. Introduction to Algorithms. The MIT Press, 1990.Google Scholar
  5. 5.
    A. D. E. Muller and P. Schnupp. Alternating automata. the weak monadic theory of the tree and its complexity. In International Colloquim on Automata, Languages and Programming.Google Scholar
  6. 6.
    R. Dial. Shortest path forest with topological ordering. Communications of the ACM, pages 632–633, 1969.Google Scholar
  7. 7.
    E. W. Dijkstra. A note on two problems in connection with graphs. Numerische Mathematik, 1:269–271, 1959.zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    M. B. Dwyer, G. S. Avrunin, and J. C. Corbett. Patterns in property specifications for finite-state verification. In International Conference on Software Engineering, 1999.Google Scholar
  9. 9.
    S. Edelkamp. Data Structures and Learning Algorithms in State Space Search. PhD thesis, University of Freiburg, 1999. Infix.Google Scholar
  10. 10.
    S. Edelkamp, A. L. Lafuente, and S. Leue. Protocol verification with heuristic search. In AAAI Symposium on Model-based Validation of Intelligence, 2001.Google Scholar
  11. 11.
    S. Edelkamp and F. Reffel. OBDDs in heuristic search. In German Conference on Artificial Intelligence (KI), pages 81–92, 1998.Google Scholar
  12. 12.
    M. G. Gouda. Protocol verification made simple: a tutorial. Computer Networks and ISDN Systems, 25(9):969–980, 1993.CrossRefGoogle Scholar
  13. 13.
    P. E. Hart, N. J. Nilsson, and B. Raphael. A formal basis for heuristic determination of minimum path cost. IEEE Trans. on SSC, 4:100, 1968.Google Scholar
  14. 14.
    G. Holzmann. An analysis of bitstate hashing. Formal Methods in System Design, 13(3):287–305, November 1998. extended and revised version of Proc. PSTV95, pp. 301-314.CrossRefMathSciNetGoogle Scholar
  15. 15.
    G. Holzmann, D. Peled, and M. Yannakakis. On nested depth first search. In The Spin Verification System, pages 23–32. American Mathematical Society, 1996.Google Scholar
  16. 16.
    G. J. Holzmann. On limits and possibilities of automated protocol analysis. In Protocol Specification, Testing, and Verification, 1987.Google Scholar
  17. 17.
    G. J. Holzmann. Design and Validation of Computer Protocols. Prentice Hall, 1990.Google Scholar
  18. 18.
    M. Kamel and S. Leue. Formalization and validation of the general inter-orb protocol (GIOP) using Promela and SPIN. In Software Tools for Technology Transfer, volume 2, pages 394–409, 2000.zbMATHCrossRefGoogle Scholar
  19. 19.
    M. Kamel and S. Leue. Vip: A visual editor and compiler for v-promela. In 6th International Conference, TACAS 2000, volume 1785 of Lecture Notes in Computer Science, pages 471–486. Springer, 2000.Google Scholar
  20. 20.
    F. J. Lin, P. M. Chu, and M. Liu. Protocol verification using reachability analysis: the state space explosion problem and relief strategies. ACM, pages 126–135, 1988.Google Scholar
  21. 21.
    K. McMillan. Symbolic Model Checking. Kluwer Academic Press, 1993.Google Scholar
  22. 22.
    D. McVitie and L. Wilson. The stable marriage problem. Communications of the ACM, 1971.Google Scholar
  23. 23.
    A. Miller and M. Calder. Analysing a basic call protocol using promela/xspin. In International SPIN Workshop, 1998.Google Scholar
  24. 24.
    T. Nakatani. Verification of group address registration protocol using promela and spin. In International SPIN Workshop, 1997.Google Scholar
  25. 25.
    K. R. Bloem and F. Somenzi. Symbolic guided search for ctl model checking. In Conference on Design Automation (DAC-00).Google Scholar
  26. 26.
    F. Reffel and S. Edelkamp. Error detection with directed symbolic model checking. In World Congress on Formal Methods, pages 195–211. Springer, 1999.Google Scholar
  27. 27.
    F. Somenzi and R. Bloem. Efficient buchi automata from ltl formulae. In Computer Aided Verification.Google Scholar
  28. 28.
    P. van Eijk. Verifying relay circuits using state machines. In International SPIN Workshop.Google Scholar
  29. 29.
    W. Visser and H. Barringer. Ctl* model checking for spin. Software Tools for Technology Transfer, 2000.Google Scholar
  30. 30.
    C. H. Yang and D. L. Dill. Validation with guided search of the state space. In DAC, pages 599–604, 1998.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Stefan Edelkamp
    • 1
  • Alberto Lluch Lafuente
    • 1
  • Stefan Leue
    • 1
  1. 1.Institut für InformatikAlbert-Ludwigs-UniversitätFreiburg

Personalised recommendations