Correcting a Space-Efficient Simulation Algorithm

  • Rob van Glabbeek
  • Bas Ploeger
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5123)


Although there are many efficient algorithms for calculating the simulation preorder on finite Kripke structures, only two have been proposed of which the space complexity is of the same order as the size of the output of the algorithm. Of these, the one with the best time complexity exploits the representation of the simulation problem as a generalised coarsest partition problem. It is based on a fixed-point operator for obtaining a generalised coarsest partition as the limit of a sequence of partition pairs. We show that this fixed-point theory is flawed, and that the algorithm is incorrect. Although we do not see how the fixed-point operator can be repaired, we correct the algorithm without affecting its space and time complexity.


Partial Order Model Check Simulation Algorithm Input Graph Label Transition System 
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.


  1. 1.
    Bloom, B., Istrail, S., Meyer, A.R.: Bisimulation can’t be traced. Journal of the ACM 42(1), 232–268 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Bloom, B., Paige, R.: Transformational design and implementation of a new efficient solution to the ready simulation problem. Science of Computer Programming 24(3), 189–220 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Bustan, D., Grumberg, O.: Simulation-based minimization. ACM Transactions on Computational Logic 4(2), 181–206 (2003)CrossRefMathSciNetGoogle Scholar
  4. 4.
    Courcoubetis, C., Vardi, M.Y., Wolper, P., Yannakakis, M.: Memory efficient algorithms for the verification of temporal properties. In: Clarke, E., Kurshan, R.P. (eds.) CAV 1990. LNCS, vol. 531, pp. 233–242. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  5. 5.
    Dams, D., Grumberg, O., Gerth, R.: Generation of reduced models for checking fragments of CTL. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 479–490. Springer, Heidelberg (1993)Google Scholar
  6. 6.
    Emerson, E.A., Halpern, J.Y.: ”Sometimes” and ”Not Never” revisited: On branching versus linear time temporal logic. Journal of the ACM 33(1), 151–178 (1986)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Evangelista, S., Pradat-Peyre, J.-F.: Memory efficient state space storage in explicit software model checking. In: Godefroid, P. (ed.) SPIN 2005. LNCS, vol. 3639, pp. 43–57. Springer, Heidelberg (2005)Google Scholar
  8. 8.
    Gentilini, R., Piazza, C., Policriti, A.: From bisimulation to simulation: Coarsest partition problems. Journal of Automated Reasoning 31(1), 73–103 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Gentilini, R., Piazza, C., Policriti, A.: From bisimulation to simulation: Coarsest partition problems. RR 12-2003, Dep. of Computer Science, University of Udine, Italy (2003) Google Scholar
  10. 10.
    van Glabbeek, R.J., Ploeger, B.: Correcting a space-efficient simulation algorithm. CS-Report 08-06, Eindhoven University of Technology (2008) Google Scholar
  11. 11.
    Groote, J.F., Vaandrager, F.W.: Structured operational semantics and bisimulation as a congruence. Information and Computation 100(2), 202–260 (1992)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Henzinger, M.R., Henzinger, T.A., Kopke, P.W.: Computing simulations on finite and infinite graphs. In: 36th Annual Symposium on Foundations of Computer Science (FOCS 1995), pp. 453–462. IEEE Computer Society Press, Los Alamitos (1995)Google Scholar
  13. 13.
    Holzmann, G.J.: An improved protocol reachability analysis technique. Software Practice and Experience 18(2), 137–161 (1988)CrossRefGoogle Scholar
  14. 14.
    Kozen, D.: Results on the propositional μ-calculus. Theoretical Computer Science 27, 333–354 (1983)zbMATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Kucera, A., Jancar, P.: Equivalence-checking on infinite-state systems: Techniques and results. Theory and Practice of Logic Programming 6(3), 227–264 (2006)zbMATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Loiseaux, C., Graf, S., Sifakis, J., Bouajjani, A., Bensalem, S.: Property preserving abstractions for the verification of concurrent systems. Formal Methods in System Design 6(1), 11–44 (1995)zbMATHCrossRefGoogle Scholar
  17. 17.
    Park, D.M.R.: Concurrency and automata on infinite sequences. In: Deussen, P. (ed.) GI-TCS 1981. LNCS, vol. 104, pp. 167–183. Springer, Heidelberg (1981)CrossRefGoogle Scholar
  18. 18.
    Ranzato, F., Tapparo, F.: A new efficient simulation equivalence algorithm. In: Proc. 22nd Annual IEEE Symposium on Logic in Computer Science (LICS 2007), pp. 171–180. IEEE Computer Society Press, Los Alamitos (2007)Google Scholar
  19. 19.
    Stockmeyer, L.J., Meyer, A.R.: Word problems requiring exponential time. In: Proc. 5th Annual ACM Symposium on Theory of Computing (STOC 1973), pp. 1–9. ACM, New York (1973)CrossRefGoogle Scholar
  20. 20.
    Tan, L., Cleaveland, R.: Simulation revisited. In: Margaria, T., Yi, W. (eds.) ETAPS 2001 and TACAS 2001. LNCS, vol. 2031, pp. 480–495. Springer, Heidelberg (2001)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Rob van Glabbeek
    • 1
    • 2
  • Bas Ploeger
    • 3
  1. 1.National ICT AustraliaSydneyAustralia
  2. 2.School of Computer Science and EngineeringThe University of New South WalesSydneyAustralia
  3. 3.Design and Analysis of Systems GroupEindhoven University of TechnologyEindhovenThe Netherlands

Personalised recommendations