Skip to main content
Log in

Combining Symmetry Reduction and Under-Approximation for Symbolic Model Checking

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

This work presents a collection of methods that integrate symmetry reduction and under-approximation with symbolic model checking in order to reduce space and time. The main objective of these methods is falsification. However, under certain conditions, they can provide verification as well.

We first present algorithms that use symmetry reduction to perform on-the-fly model checking for temporal safety properties. These algorithms avoid building the orbit relation and choose representatives on-the-fly while computing the reachable states. We then extend these algorithms to check liveness properties as well. In addition, we introduce an iterative on-the-fly algorithm that builds subsets of the orbit relation rather than the full relation.

Our methods are fully automatic once the user supplies some basic information about the symmetry in the verified system. Moreover, the methods are robust and work correctly even if the information supplied by the user is incorrect. Furthermore, the methods return correct results even when the computation of the symmetry reduction has not been completed due to memory or time explosion.

We implemented our methods within the IBM model checker Rule-Base and compared their performance to that of RuleBase. In most cases, our algorithms outperformed RuleBase in both time and space.

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. B. Alpern and F. Schneider, “Verifying temporal properties without using temporal logic,” Technical Report TR 85-723, Cornell University, Dept. of Computer Science, Cornell University, Dec. 1985.

  2. I. Beer, S. Ben-David, C. Eisner, and A. Landver, “RuleBase: An industry-oriented formal verification tool,” in Design Automation Conference, June 1996, pp. 655–660.

  3. I. Beer, S. Ben-David, and A. Landver, “On-the-fly model checking of RCTL formulas,” in A.J. Hu and M.Y. Vardi (Eds.), Proceedings of the 10th International Conference on Computer-Aided Verification, Vol. 1427 of LNCS, Springer-Verlag, June 1998, pp. 184–194.

  4. R. Bloem, K. Ravi, and F. Somenzi, “Symbolic guided search for CTL model checking,” in Design Automation Conference, June 2000, pp. 29–34.

  5. M. Browne, E. Clarke, and O. Grumberg, “Characterizing finite Kripke structures in propositional temporal logic,” Theoretical Comput. Sci., Vol. 59, pp. 115–131, 1988.

    Article  Google Scholar 

  6. R.E. Bryant, “Graph-based algorithms for boolean function manipulation,” IEEE transactions on Computers, Vol. C-35, No. 8, pp. 677–691, 1986.

    Google Scholar 

  7. J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and L.J. Hwang, “Symbolic model checking: 1020 states and beyond,” Information and Computation, Vol. 98, No. 2, pp. 142–170, 1992.

    Article  Google Scholar 

  8. E. Clarke, O. Grumberg, and H. Hamaguchi, “Another look at LTL model checking,” Formal Methods in System Design, Vol. 10, No. 1, 1997.

  9. E. Clarke, O. Grumberg, and D. Peled, “Model Checking,” MIT Press, Dec. 1999.

  10. E.M. Clarke and E.A. Emerson, “Synthesis of synchronization skeletons for branching time temporal logic,” in Logic of Programs: Workshop, Yorktown Heights, NY, May 1981, vol. 131 of Lecture Notes in Computer Science. Springer-Verlag, 1981.

  11. E.M. Clarke, E.A. Emerson, and A.P. Sistla, “Automatic verification of finite-state concurrent systems using temporal logic specifications,” ACM Trans. Prog. Lang. Syst., Vol. 8, No. 2, pp. 244–263, 1986.

    Article  Google Scholar 

  12. C.N. Ip and D.L. Dill, “Better verification through symmetry,” in D. Agnew, L. Claesen, and R. Camposano, (Eds.), Computer Hardware Description Languages and their Applications, Ottawa, Canada, 1993, pp. 87–100. Elsevier Science Publishers B.V., Amsterdam, Netherlands.

    Google Scholar 

  13. D. Geist and I. Beer, “Efficient model checking by automated ordering of transition relation,” in David L. Dill, (Ed.), Proceedings of the Sixth International Conference on Computer-Aided Verification, Vol. 818, Springer-Verlag, June 1994, pp. 299–310.

  14. E.A. Emerson and J.Y. Halpern, “Sometimes and Not Never revisited: On branching time versus linear time,” jacm, Vol. 33, pp. 151–178, 1986.

    Article  Google Scholar 

  15. E.A. Emerson and A.P. Sistla, “Symmetry and model checking,” in C. Courcoubetis (Ed.), Proceedings of the 5th International Conference on Computer-Aided Verification, volume 697 of LNCS. Springer-Verlag, June 1993.

  16. E.A. Emerson and A.P. Sistla, “Utilizing symmetry when model-checking under fairness assumptions: An automata-theoretic approach,” ACM Transactions on Programming Languages and Systems, Vol. 19, No. 4, pp. 617–638, July 1997.

    Article  Google Scholar 

  17. E.A. Emerson and R.J. Trefler, “From asymmetry to full symmetry: New techniques for symmetry reduction in model checking,” in Conference on Correct Hardware Design and Verification Methods, 1999, pp. 142–156.

  18. R. Fraer, G. Kamhi, B. Ziv, M.Y. Vardi, and L. Fix, “Prioritized traversal: Efficient reachability analysis for verification and falsification,” in E.A. Emerson and A.P. Sistla, (Eds.), Proceedings of the 12th International Conference on Computer-Aided Verification, volume 1855 of LNCS, Springer-Verlag, July 2000, pp. 389–402.

  19. O. Grumberg and D. Long, “Model checking and modular verification,” ACM Trans. on Programming Languages and Systems, Vol. 16, No. 3, pp. 843–871, 1994.

    Article  Google Scholar 

  20. V. Gyuris and A.P. Sistla, “On-the-fly model checking under fairness that exploits symmetry,” Formal Methods in System Design: An International Journal, Vol. 15, No. 3, pp. 217–238, 1999.

    Article  Google Scholar 

  21. S. Jha, “Symmetry and induction in Model checking,” PhD thesis, CMU, 1996.

  22. S. Katz, “Coverage of model checking,” Master’s thesis, Technion, Haifa, Israel, 2001.

  23. K.L. McMillan, Symbolic Model Checking: An Approach to the State Explosion Problem, Kluwer Academic Publishers, 1993.

  24. R. Milner, “An algebraic definition of simulation between programs,” in Proceedings of the 2nd International Joint Conference on Artificial Intelligence, Sept. 1971, pp. 481–489.

  25. D. Park, “Concurrency and automata on infinite sequences,” in 5th GI-Conference on Theoretical Computer Science, LNCS 104, Springer-Verlag, 1981, pp. 167–183.

  26. J.P. Queille and J. Sifakis, “Specification and verification of concurrent systems in CESAR,” in Proceedings of the 5th International Symposium on Programming, vol. 137 of Lecture Notes in Computer Science, Springer Verlag, 1981, pp. 337–351.

  27. K. Ravi and F. Somenzi, “High-density reachability analysis,” in Proc. Intl. Conf, on Computer-Aided Design, Nov. 1995, pp. 154–158.

  28. A.P. Sistla, V. Gyuris, and E.A. Emerson, “SMC: A symmetry-based model checker for verification of safety and liveness properties,” Software Engineering and Methodology, Vol. 9, No. 2, pp. 133–166, 2000.

    Article  Google Scholar 

  29. C.H. Yang and D.L. Dill, “Validation with guided search of the state space,” in Design Automation Conference, June 1998, pp. 599–604.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sharon Barner.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Barner, S., Grumberg, O. Combining Symmetry Reduction and Under-Approximation for Symbolic Model Checking. Form Method Syst Des 27, 29–66 (2005). https://doi.org/10.1007/s10703-005-2246-x

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-005-2246-x

Keywords

Navigation