Skip to main content
Log in

From Bisimulation to Simulation: Coarsest Partition Problems

  • Published:
Journal of Automated Reasoning Aims and scope Submit manuscript

Abstract

The notions of bisimulation and simulation are used for graph reduction and are widely employed in many areas: modal logic, concurrency theory, set theory, formal verification, and so forth. In particular, in the context of formal verification they are used to tackle the so-called state-explosion problem. The faster algorithms to compute the maximum bisimulation on a given labeled graph are based on the crucial equivalence between maximum bisimulation and relational coarsest partition problem. As far as simulation is concerned, many algorithms have been proposed that turn out to be relatively inexpensive in terms of either time or space. In this paper we first revisit the state of the art about bisimulation and simulation, pointing out the analogies and differences between the two problems. Then, we propose a generalization of the relational coarsest partition problem, which is equivalent to the simulation problem. Finally, we present an algorithm that exploits such a characterization and improves on previously proposed algorithms for simulation.

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. Aczel, P.: Non-Well-Founded Sets, CSLI Lecture Notes 14, Stanford University Press, 1988.

  2. Bloem, R., Gabow, H. N. and Somenzi, F.: An algorithm for strongly connected component analysis in n log n symbolic steps, in W. A. Hunt, Jr. and S. D. Johnson (eds.), Proceedings of International Conference on Formal Methods in Computer-Aided Design (FMCAD'00), Lecture Notes in Comput. Sci. 1954, Springer, 2000, pp. 37-54.

  3. Bloom, B.: Ready simulation, bisimulation, and the semantics of CCS-like languages, Ph.D. thesis, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, August 1989.

  4. Bloom, B. and Paige, R.: Transformational design and implementation of a new efficient solution to the ready simulation problem, Science of Computer Programming 24(3) (June 1995), 189-220.

    Article  MATH  MathSciNet  Google Scholar 

  5. Bouajjani, A., Fernandez, J. C. and Halbwachs, N.:Minimal model generation, in E. Clarke and R. Kurshan (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'90), Lecture Notes in Comput. Sci. 531, Springer, 1990, pp. 197-203.

  6. Bouali, A.: XEVE, an ESTEREL verification environment, in A. J. Hu and M. Y. Vardi (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'98), Lecture Notes in Comput. Sci. 1427, Springer, 1998, pp. 500-504.

  7. Bouali, A. and de Simone, R.: Symbolic bisimulation minimization, in G. von Bochmann and D. K. Probst (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'92), Lecture Notes in Comput. Sci. 663, Springer, 1992, pp. 96-108.

  8. Bryant, R. E.: Symbolic manipulation of Boolean functions using a graphical representation, in Proceedings of Design Automation Conference (DAC'85), 1985.

  9. Bustan, D. and Grumberg, O.: Simulation based minimization, in D. A. McAllester (ed.), Proceedings of International Conference on Automated Deduction (CADE00), Lecture Notes in Comput. Sci. 1831, Springer, 2000, pp. 255-270.

  10. Clarke, E. M. and Emerson, E. A.: Design and synthesis of synchronization skeletons using brancing time temporal logic, in Proceedings ofWorkshop on Logic of Programs, Lecture Notes in Comput. Sci. 131, Springer, 1982, pp. 52-71.

  11. Clarke, E. M., Grumberg, O. and Peled, D. A.: Model Checking, MIT Press, 1999.

  12. Cleaveland, R., Parrow, J. and Steffen, B.: The concurrency workbench: A semantics based tool for the verification of concurrent systems, ACM Transactions on Programming Languages and Systems 15(1) (January 1993), 36-72.

    Article  Google Scholar 

  13. Cleaveland, R. and Sims, S.: The NCSU concurrency workbench, in R. Alur and T. A. Henzinger (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'96), Lecture Notes in Comput. Sci. 1102, Springer, 1996, pp. 394-397.

  14. Cleaveland, R. and Steffen, B.: A linear-time model-checking algorithm for the alternation free modal mu-calculus, in K. G. Larsen and A. Skou (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'91), Lecture Notes in Comput. Sci. 575, Springer, 1992, pp. 48-58.

  15. Cleaveland, R. and Tan, L.: Simulation revised, in T. Margaria and W. Yi (eds.), Proceedings of International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS'01), Lecture Notes in Comput. Sci. 2031, Springer, 2001, pp. 480-495.

  16. Dams, D., Gerth, R. and Grumberg, O.: Generation of reduced models for checking fragments of CTL, in C. Courcoubetis (ed.), Proceedings of International Conference on Computer Aided nVerification (CAV'93), Lecture Notes in Comput. Sci. 697, Springer, 1993, pp. 479-490.

  17. Dams, D., Gerth, R. and Grumberg, O.: Abstract interpretation of reactive systems, ACM Transactions on Programming Languages and Systems 19(2) (March 1997), 253-291.

    Article  Google Scholar 

  18. Dovier, A., Gentilini, R., Piazza, C. and Policriti, A.: Rank-based symbolic bisimulation (and model checking), in Ruy J. Guerra B. de Queiroz (ed.), Proceedings of Workshop on Language, Logic, Information, and Computation (Wollic'02), ENTCS 67, Elsevier Science, 2002, pp. 167-184.

  19. Dovier, A., Piazza, C. and Policriti, A.: A fast bisimulation algorithm, in G. Berry, H. Comon and A. Finkel (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'01), Lecture Notes in Comput. Sci. 2102, Springer, 2001, pp. 79-90.

  20. Dovier, A., Piazza, C. and Policriti, A.: A fast bisimulation algorithm, J. Theoret. Comput. Sci. (2003). Accepted for publication, to appear.

  21. Fernandez, J. C., Garavel, H., Kerbrat, A., Mateescu, R., Mounier, L. and Sighireanu, M.: CADP: A protocol validation and verification toolbox, in R. Alur and T. A. Henzinger (eds.), Proceedings of International Conference on Computer Aided Verification (CAV'96), Lecture Notes in Comput. Sci. 1102, Springer, 1996, pp. 437-440.

  22. Fisler, K. and Vardi, M. Y.: Bisimulation and model checking, in L. Pierre and T. Kropf (eds.), Proceedings of Correct Hardware Design and Verification Methods (CHARME'99), Lecture Notes in Comput. Sci. 1703, Springer, 1999, pp. 338-341.

  23. Focardi, R. and Gorrieri, R.: The compositional security checker: A tool for the verification of information flow security properties, IEEE Transaction on Software Engineering 23(9) (1997), 550-571.

    Article  Google Scholar 

  24. Forti, M. and Honsell, F.: Set theory with free construction principles, Ann. Scuola Norm. Sup. Pisa Cl. Sc. IV(10) (1983), 493-522.

    MATH  MathSciNet  Google Scholar 

  25. Gentilini, R., Piazza, C. and Policriti, A.: Simulation as coarsest partition problem, in J. P. Katoen and P. Stevens (eds.), International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS'02), Lecture Notes in Comput. Sci. 2280, Springer, 2002, pp. 415-430.

  26. Gentilini, R., Piazza, C. and Policriti, A.: Simulation reduction as constraint, in M. Comini and M. Falaschi (eds.), Proceedings ofWorkshop on Functional and Constraint Logic Programming (WFLP'02), ENTCS 76, Elsevier Science, 2002.

  27. Gentilini, R., Piazza, C. and Policriti, A.: From bisimulation to simulation: Coarsest partition problems, RR 12-2003, Dep. of Computer Science, University of Udine, Italy, 2003.

    Google Scholar 

  28. Gries, D.: Describing an algorithm by Hopcroft, Acta Inform. 2 (1973), 97-109.

    Article  MATH  MathSciNet  Google Scholar 

  29. Grumberg, O. and Long, D. E.: Model checking and modular verification, ACM Transactions on Programming Languages and Systems 16(3) (May 1994), 843-871.

    Article  Google Scholar 

  30. Henzinger, M. R., Henzinger, T. A. and Kopke, P. W.: Computing simulations on finite and infinite graphs, in Proceedings of Symposium on Foundations of Computer Science (FOCS'95), IEEE Computer Society Press, 1995, pp. 453-462.

  31. Hopcroft, J. E.: An n log n algorithm for minimizing states in a finite automaton, in Z. Kohavi and A. Paz (eds.), Theory of Machines and Computations, Academic Press, 1971, pp. 189-196.

  32. Kanellakis, C. and Smolka, S. A.: CCS expressions, finite state processes, and three problems of equivalence, in ACM SIGACT-SIGOPS Symposium on Principles of Distributed Computing (PODC), 1983, pp. 228-240.

  33. Kannellakis, P. C. and Smolka, S. A.: CCS expressions, finite state processes, and three problems of equivalence, Inform. and Comput. 86(1) (1990), 43-68.

    Article  MathSciNet  Google Scholar 

  34. Knuutila, T.: Re-describing an algorithm by Hopcroft, Theoret. Comput. Sci. 250 (2001) 333-363.

    Article  MATH  MathSciNet  Google Scholar 

  35. Lee, D. and Yannakakis, M.: Online minimization of transition systems, in Proceedings of ACM Symposium on Theory of Computing (STOC'92), ACM Press, 1992, pp. 264-274.

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

  37. Milner, R.: An algebraic definition of simulation between programs, in Proceedings of International Joint Conference on Artificial Intelligence (IJCAI'71), Morgan Kaufmann,1971, pp. 481-489.

  38. Milner, R.: A calculus of communicating systems, in G. Goos and J. Hartmanis (eds.), Lecture Notes in Comput. Sci. 92, Springer, 1980.

  39. Paige, R. and Tarjan, R. E.: Three partition refinement algorithms, SIAM J. Comput. 16(6) (1987), 973-989.

    Article  MATH  MathSciNet  Google Scholar 

  40. Paige, R., Tarjan, R. E. and Bonic, R.: A linear time solution to the single function coarsest partition problem, Theoret. Comput. Sci. 40(1) (1985), 67-84.

    Article  MATH  MathSciNet  Google Scholar 

  41. Park, D.: Concurrency and automata on infinite sequences, in P. Deussen (ed.), Proceedings of International Conference on Theorical Computer Science (TCS'81), Lecture Notes in Comput. Sci. 104, Springer, 1981, pp. 167-183.

  42. Piazza, C.: Computing in Non Standard Set Theories, Ph.D. thesis, Department of Computer Science, University of Udine, 2002. Electronically available from http://www.dimi.uniud.it/~piazza.

  43. Piazza, C. and Policriti, A.: Ackermann encoding, bisimulations, and OBDD's, in M. Leuschel, A. Podelski, C. R. Ramakrishnan and U. Ultes-Nitsche (eds.), Proceedings of International Workshop on Verification and Computational Logic (VCL'01), Southampton University Technical Report DSSE-TR-2001-3, ACM Digital Library, 2001, pp. 43-53.

  44. Roscoe, W. R.: A Classical Mind: Essays in Honour of C. A. R. Hoare, Prentice Hall, 1994, Chapter ‘Model Checking CSP’.

  45. van Benthem, J.: Modal correspondence theory, Ph.D. thesis, Universiteit van Amsterdam, Instituut voor Logica en Grondslagenonderzoek van Exacte Wetenschappen, 1976.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Gentilini, R., Piazza, C. & Policriti, A. From Bisimulation to Simulation: Coarsest Partition Problems. Journal of Automated Reasoning 31, 73–103 (2003). https://doi.org/10.1023/A:1027328830731

Download citation

  • Issue Date:

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

Navigation