Skip to main content
Log in

Scalable distributed on-the-fly symbolic model checking

  • Regular contribution
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

This paper presents a scalable method for parallel symbolic on-the-fly model checking in a distributed memory environment. Our method combines a scheme for on-the-fly model checking for safety properties with a scheme for scalable reachability analysis. We suggest an efficient, BDD-based algorithm for a distributed construction of a counterexample. The extra memory requirement for counterexample generation is evenly distributed among the processes by a memory balancing procedure. At no point during computation does the memory of a single process contain all the data. This enhances scalability. Collaboration between the parallel processes during counterexample generation reduces memory utilization for the backward step. We implemented our method on a standard, loosely- connected environment of workstations, using a high-performance model checker. Our initial performance evaluation, carried out on several large circuits, shows that our method can check models that are too large to fit in the memory of a single node. Our on-the-fly approach may find counterexamples even when the model is too large to fit in the memory of the parallel system.

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

  1. Armoni R, Fix L, Flaisher A, Gerth R, Ginsburg B, Kanza T, Landver A, Mador-Haim S, Singerman E, Tiemeyer A, Vardi MY, Zbar Y: The ForSpec temporal logic: a new temporal property-specification language. In: International Conference on Tools and Algorithms for Construction and Analysis of Systems. Springer, Berlin Heidelberg New York, 2002

  2. Beer I, Ben-David S, Eisner C, Fisman D, Gringauze A, Rodeh Y: The temporal logic Sugar. In: Proc. 13th International Conference on Computer Aided Verification. Springer, Berlin Heidelberg New York, 2001

  3. Beer I, Ben-David S, Eisner C, Landver A: Rulebase: an industry-oriented formal verification tool. In: 33rd Design Automation Conference, 1996, pp 655–660

  4. Beer I, Ben-David S, Landver A: On-the-fly model checking of RCTL formulas. In: Proc. 10th International Conference on Computer Aided Verification, Lecture Notes in Computer Science, vol 818. Springer, Berlin Heidelberg New York, 1998, pp 184–194

  5. Bhat G, Cleaveland R, Grumberg O: Efficient on-the-fly model checking for CTL*. In: Proc. Conference on Logic in Computer Science (LICS’95), 1995

  6. Bryant RE: Graph-based algorithms for Boolean function manipulation. IEEE Trans Comput C-35(8):677–691, 1986

    Article  Google Scholar 

  7. Burch JR, Clarke EM, Long DE: Symbolic model checking with partitioned transition relations. In: Halaas A, Denyer PB (eds) Proc. 1991 International Conference on Very Large Scale Integration, 1991

  8. Burch JR, Clarke EM, McMillan KL, Dill DL, Hwang LJ: Symbolic model checking: 1020 states and beyond. Inf Comput 98(2):142–170, 1992

    Article  Google Scholar 

  9. Cabodi G, Camurati P, Quer S: Improved reachability analysis of large FSM. In: Proc. IEEE International Conference on Computer Aided Design. IEEE Computer, New York, 1996, pp 354–360

  10. Cabodi G, Camurati P, Quer S: Improving the efficiency of BDD-based operators by means of partitioning. IEEE Trans Comput Aided Des 18:545–556, 1999

    Article  Google Scholar 

  11. Clarke E, Grumberg O, McMillan K, Zhao X: Efficient generation of counterexamples and witnesses in symbolic model checking. In: 32rd Design Automation Conference, 1995, pp 655–660

  12. Coudert O, Madre JC, Berthet C: Verifying temporal properties of sequential machines without building their state diagrams. In: Kurshan R, Clarke EM (eds) Workshop on Computer Aided Verification, DIMACS, Lecture Notes in Computer Science, vol 531. Springer, Berlin Heidelberg New York, 1990, pp 23–32

  13. Courcoubetis C, Vardi M, Wolper P, Yannakakis M: Memory efficient algorithms for the verification of temporal properties. Formal Meth Syst Des 1:275–288, 1992

    Article  Google Scholar 

  14. Heyman T, Geist D, Grumberg O, Schuster A: Achieving scalability in parallel reachability analysis of very large circuits. In: Proc. 12th International Conference on Computer Aided Verification. Springer, Berlin Heidelberg New York, 2000

  15. Hopcroft JE, Ullman J: Introduction to automata theory, languages and computation. Addison-Wesley, Reading, Mass., USA, 1979

  16. Long DE: Model checking, abstraction, and compositional reasoning. PhD thesis, Carnegie Mellon University, 1993

  17. McMillan KL: Symbolic model checking: an approach to the state explosion problem. Kluwer Academic, Boston, Mass., USA, 1993

  18. Narayan A, Isles A, Jain J, Brayton R, Sangiovanni-Vincentelli AL: Reachability analysis using partitioned-ROBDDs. In: Proc. IEEE International Conference on Computer Aided Design, pp 388–393. IEEE Computer, New York, 1997

  19. Narayan A, Jain J, Fujita M, Sangiovanni-Vincentelli AL: Partitioned-ROBDDs. In: Proc. IEEE International Conference on Computer Aided Design, pp 547–554. IEEE Computer, New York, 1996

  20. Peled D: Combining partial order reductions with on-the-fly model checking. In: Proc. 6th International Conference on Computer Aided Verification, Lecture Notes in Computer Science, vol 818. Springer, Berlin Heidelberg New York, 1994, pp 377–390

  21. Stern U, Dill DL: Parallelizing the Murphy verifier. In: Proc. 9th International Conference on Computer Aided Verification, Lecture Notes in Computer Science, vol 1254. Springer, Berlin Heidelberg New York, 1997, pp 256–267

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ben-David , S., Grumberg , O., Heyman , T. et al. Scalable distributed on-the-fly symbolic model checking. STTT 4, 496–504 (2003). https://doi.org/10.1007/s10009-002-0093-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-002-0093-2

Keywords

Navigation