skip to main content

Fast Coalgebraic Bisimilarity Minimization

Published:11 January 2023Publication History
Skip Abstract Section

Abstract

Coalgebraic bisimilarity minimization generalizes classical automaton minimization to a large class of automata whose transition structure is specified by a functor, subsuming strong, weighted, and probabilistic bisimilarity. This offers the enticing possibility of turning bisimilarity minimization into an off-the-shelf technology, without having to develop a new algorithm for each new type of automaton. Unfortunately, there is no existing algorithm that is fully general, efficient, and able to handle large systems.

We present a generic algorithm that minimizes coalgebras over an arbitrary functor in the category of sets as long as the action on morphisms is sufficiently computable. The functor makes at most O(m logn) calls to the functor-specific action, where n is the number of states and m is the number of transitions in the coalgebra.

While more specialized algorithms can be asymptotically faster than our algorithm (usually by a factor of (m/n)), our algorithm is especially well suited to efficient implementation, and our tool often uses much less time and memory on existing benchmarks, and can handle larger automata, despite being more generic.

References

  1. Alfred V. Aho, John E. Hopcroft, and Jeffrey D. Ullman. 1974. The Design and Analysis of Computer Algorithms. Addison-Wesley, Reading, Mass.. Google ScholarGoogle Scholar
  2. Christel Baier, Bettina Engelen, and Mila Majster-Cederbaum. 2000. Deciding Bisimilarity and Similarity for Probabilistic Processes. J. Comput. Syst. Sci., 60 (2000), 187–231. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Christel Baier and Joost-Pieter Katoen. 2008. Principles of model checking. MIT Press. isbn:978-0-262-02649-9 Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Falk Bartels, Ana Sokolova, and Erik de Vink. 2003. A hierarchy of probabilistic system types. In Coagebraic Methods in Computer Science, CMCS 2003 (ENTCS, Vol. 82). Elsevier, 57 – 75. issn:1571-0661 Google ScholarGoogle Scholar
  5. Fabian Birkmann, Hans-Peter Deifel, and Stefan Milius. 2022. Distributed Coalgebraic Partition Refinement. In Tools and Algorithms for the Construction and Analysis of Systems - 28th International Conference, TACAS 2022, Proceedings, Part II, Dana Fisman and Grigore Rosu (Eds.) (LNCS, Vol. 13244). Springer, 159–177. https://doi.org/10.1007/978-3-030-99527-0_9 Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Johanna (Högberg) Björklund, Andreas Maletti, and Jonathan May. 2007. Bisimulation Minimisation for Weighted Tree Automata. In Developments in Language Theory, DLT 2007 (LNCS, Vol. 4588). Springer, 229–241. isbn:978-3-540-73207-5 Google ScholarGoogle Scholar
  7. Johanna (Högberg) Björklund, Andreas Maletti, and Jonathan May. 2009. Backward and forward bisimulation minimization of tree automata. Theor. Comput. Sci., 410 (2009), 3539–3552. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Stefan Blom and Simona Orzan. 2005. Distributed state space minimization. International Journal on Software Tools for Technology Transfer, 7, 3 (2005), June, 280–291. https://doi.org/10.1007/s10009-004-0185-2 Google ScholarGoogle ScholarCross RefCross Ref
  9. Filippo Bonchi and Damien Pous. 2013. Checking NFA equivalence with bisimulations up to congruence. In The 40th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, POPL ’13, Roberto Giacobazzi and Radhia Cousot (Eds.). ACM, 457–468. https://doi.org/10.1145/2429069.2429124 Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Hans-Peter Deifel, Stefan Milius, Lutz Schröder, and Thorsten Wiß mann. 2019. Generic Partition Refinement and Weighted Tree Automata. In Formal Methods – The Next 30 Years, Proc. 3rd World Congress on Formal Methods (FM 2019) (LNCS, Vol. 11800). Springer, 280–297. isbn:978-3-030-30942-8 Google ScholarGoogle Scholar
  11. Ulrich Dorsch, Stefan Milius, and Lutz Schröder. 2019. Graded Monads and Graded Logics for the Linear Time - Branching Time Spectrum. In 30th International Conference on Concurrency Theory, CONCUR 2019, Wan J. Fokkink and Rob van Glabbeek (Eds.) (LIPIcs, Vol. 140). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 36:1–36:16. https://doi.org/10.4230/LIPIcs.CONCUR.2019.36 Google ScholarGoogle ScholarCross RefCross Ref
  12. Ulrich Dorsch, Stefan Milius, Lutz Schröder, and Thorsten Wiß mann. 2017. Efficient Coalgebraic Partition Refinement. In Proc. 28th International Conference on Concurrency Theory (CONCUR 2017) (LIPIcs). Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik. Google ScholarGoogle Scholar
  13. Hubert Garavel and Frédéric Lang. 2022. Equivalence Checking 40 Years After: A Review of Bisimulation Tools. Lecture Notes in Computer Science. https://doi.org/10.1007/978-3-031-15629-8_13 Google ScholarGoogle ScholarCross RefCross Ref
  14. Jan Friso Groote and Frits W. Vaandrager. 1990. An Efficient Algorithm for Branching Bisimulation and Stuttering Equivalence. In Automata, Languages and Programming, 17th International Colloquium, ICALP90, Warwick University, England, UK, July 16-20, 1990, Proceedings, Mike Paterson (Ed.) (Lecture Notes in Computer Science, Vol. 443). Springer, 626–638. https://doi.org/10.1007/BFb0032063 Google ScholarGoogle ScholarCross RefCross Ref
  15. Jan Friso Groote, Jao Rivera Verduzco, and Erik P. de Vink. 2018. An Efficient Algorithm to Determine Probabilistic Bisimulation. Algorithms, 11, 9 (2018), 131. Google ScholarGoogle ScholarCross RefCross Ref
  16. H. Peter Gumm and Tobias Schröder. 2001. Monoid-labeled transition systems. In Coalgebraic Methods in Computer Science, CMCS 2001 (ENTCS, Vol. 44(1)). Elsevier, 185–204. Google ScholarGoogle Scholar
  17. Helle Hvid Hansen and Clemens Kupke. 2004. A Coalgebraic Perspective on Monotone Modal Logic. Electron. Notes Theor. Comput. Sci., 106 (2004), December, 121–143. issn:1571-0661 https://doi.org/10.1016/j.entcs.2004.02.028 Google ScholarGoogle ScholarCross RefCross Ref
  18. Helle Hvid Hansen and Clemens Kupke. 2004. A Coalgebraic Perspective on Monotone Modal Logic. In Proceedings of the Workshop on Coalgebraic Methods in Computer Science, CMCS, Jirí Adámek and Stefan Milius (Eds.) (Electronic Notes in Theoretical Computer Science, Vol. 106). Elsevier, 121–143. https://doi.org/10.1016/j.entcs.2004.02.028 Google ScholarGoogle ScholarCross RefCross Ref
  19. Ichiro Hasuo, Bart Jacobs, and Ana Sokolova. 2007. Generic Trace Semantics via Coinduction. Log. Methods Comput. Sci., 3, 4 (2007), https://doi.org/10.2168/LMCS-3(4:11)2007 Google ScholarGoogle ScholarCross RefCross Ref
  20. John Hopcroft. 1971. An n ologn algorithm for minimizing states in a finite automaton. In Theory of Machines and Computations. Academic Press, 189–196. Google ScholarGoogle Scholar
  21. David N. Jansen, Jan Friso Groote, Jeroen J. A. Keiren, and Anton Wijs. 2020. An O(m log n) algorithm for branching bisimilarity on labelled transition systems. In Tools and Algorithms for the Construction and Analysis of Systems - 26th International Conference, TACAS 2020, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2020, Dublin, Ireland, April 25-30, 2020, Proceedings, Part II, Armin Biere and David Parker (Eds.) (Lecture Notes in Computer Science, Vol. 12079). Springer, 3–20. https://doi.org/10.1007/978-3-030-45237-7_1 Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Thorsten Wissmann Jules Jacobs. 2022. Boa: binary coalgebraic partition refinement. https://doi.org/10.5281/zenodo.7150706 The most recent version is at Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Paris C. Kanellakis and Scott A. Smolka. 1983. CCS Expressions, Finite State Processes, and Three Problems of Equivalence. In Proceedings of the Second Annual ACM Symposium on Principles of Distributed Computing (PODC ’83). ACM, 228–240. isbn:0-89791-110-5 Google ScholarGoogle Scholar
  24. Paris C. Kanellakis and Scott A. Smolka. 1990. CCS Expressions, Finite State Processes, and Three Problems of Equivalence. Inf. Comput., 86, 1 (1990), 43–68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Joost-Pieter Katoen, Tim Kemna, Ivan Zapreev, and David Jansen. 2007. Bisimulation Minimisation Mostly Speeds Up Probabilistic Model Checking. In Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2007 (LNCS, Vol. 4424). Springer, 87–101. isbn:978-3-540-71208-4 Google ScholarGoogle Scholar
  26. Bartek Klin. 2009. Structural Operational Semantics for Weighted Transition Systems. In Semantics and Algebraic Specification: Essays Dedicated to Peter D. Mosses on the Occasion of His 60th Birthday, Jens Palsberg (Ed.) (LNCS, Vol. 5700). Springer, 121–139. Google ScholarGoogle Scholar
  27. Barbara König and Sebastian Küpper. 2014. Generic Partition Refinement Algorithms for Coalgebras and an Instantiation to Weighted Automata. In Theoretical Computer Science, IFIP TCS 2014 (LNCS, Vol. 8705). Springer, 311–325. isbn:978-3-662-44601-0 Google ScholarGoogle Scholar
  28. Dexter Kozen, Konstantinos Mamouras, Daniela Petrisan, and Alexandra Silva. 2015. Nominal Kleene Coalgebra. In Automata, Languages, and Programming, ICALP 2015 (lncs, Vol. 9135). springer, 286–298. isbn:978-3-662-47665-9 https://doi.org/10.1007/978-3-662-47666-6 Google ScholarGoogle ScholarCross RefCross Ref
  29. Marta Kwiatkowska, Gethin Norman, and David Parker. 2011. PRISM 4.0: Verification of Probabilistic Real-Time Systems. In Computer Aided Verification, Ganesh Gopalakrishnan and Shaz Qadeer (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 585–591. isbn:978-3-642-22110-1 Google ScholarGoogle Scholar
  30. Kim Guldstrand Larsen and Arne Arne Skou. 1991. Bisimulation through Probabilistic Testing. Inform. Comput., 94, 1 (1991), 1–28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Jonathan May and Kevin Knight. 2006. Tiburon: A Weighted Tree Automata Toolkit. In Implementation and Application of Automata, Oscar H. Ibarra and Hsu-Chun Yen (Eds.). Springer Berlin Heidelberg, Berlin, Heidelberg. 102–113. isbn:978-3-540-37214-1 Google ScholarGoogle Scholar
  32. Stefan Milius, Dirk Pattinson, and Lutz Schröder. 2015. Generic Trace Semantics and Graded Monads. In 6th Conference on Algebra and Coalgebra in Computer Science, CALCO 2015, Lawrence S. Moss and Pawel Sobocinski (Eds.) (LIPIcs, Vol. 35). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 253–269. https://doi.org/10.4230/LIPIcs.CALCO.2015.253 Google ScholarGoogle ScholarCross RefCross Ref
  33. Stefan Milius, Lutz Schröder, and Thorsten Wiß mann. 2016. Regular Behaviours with Names. Applied Categorical Structures, 24, 5 (2016), 663–701. issn:1572-9095 https://doi.org/10.1007/s10485-016-9457-8 Google ScholarGoogle ScholarCross RefCross Ref
  34. Robin Milner. 1980. A Calculus of Communicating Systems. Springer Berlin Heidelberg. https://doi.org/10.1007/3-540-10235-3 Google ScholarGoogle ScholarCross RefCross Ref
  35. Edward F. Moore. 1956. Gedanken-Experiments on Sequential Machines. Princeton University Press, 129–154. https://doi.org/doi:10.1515/9781400882618-006 Google ScholarGoogle Scholar
  36. Robert Paige and Robert E. Tarjan. 1987. Three partition refinement algorithms. SIAM J. Comput., 16, 6 (1987), 973–989. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Rohit Parikh. 1985. The Logic of Games and its Applications. In Topics in the Theory of Computation, Selected Papers of the International Conference on ‘Foundations of Computation Theory’, FCT ' 83. Elsevier, 111–139. https://doi.org/10.1016/s0304-0208(08)73078-0 Google ScholarGoogle ScholarCross RefCross Ref
  38. Marc Pauly. 2001. Logic for Social Software. Ph. D. Dissertation. https://dare.uva.nl/search?identifier=9ad66ec5-063d-4673-8563-91369d0af7aa Google ScholarGoogle Scholar
  39. David Peleg. 1987. Concurrent Dynamic Logic. J. ACM, 34, 2 (1987), apr, 450–479. issn:0004-5411 https://doi.org/10.1145/23005.23008 Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Lutz Schröder, Dexter Kozen, Stefan Milius, and Thorsten Wiß mann. 2017. Nominal Automata with Name Binding. In FoSSaCS 2017, Javier Esparza and Andrzej Murawski (Eds.) (LNCS, Vol. 10203). Springer, 124–142. https://doi.org/10.1007/978-3-662-54458-7_8 Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Alexandra Silva, Filippo Bonchi, Marcello M. Bonsangue, and Jan J. M. M. Rutten. 2013. Generalizing determinization from automata to coalgebras. Log. Methods Comput. Sci., 9, 1 (2013), https://doi.org/10.2168/LMCS-9(1:9)2013 Google ScholarGoogle ScholarCross RefCross Ref
  42. Alexandra Silva and Ana Sokolova. 2011. Sound and Complete Axiomatization of Trace Semantics for Probabilistic Systems. Electronic Notes in Theoretical Computer Science, 276 (2011), 291–311. issn:1571-0661 https://doi.org/10.1016/j.entcs.2011.09.027 Twenty-seventh Conference on the Mathematical Foundations of Programming Semantics (MFPS XXVII) Google ScholarGoogle ScholarCross RefCross Ref
  43. Antti Valmari. 2009. Bisimilarity Minimization in (m ologn) Time. In Applications and Theory of Petri Nets, PETRI NETS 2009 (LNCS, Vol. 5606). Springer, 123–142. isbn:978-3-642-02423-8 Google ScholarGoogle Scholar
  44. Antti Valmari. 2010. Simple Bisimilarity Minimization in O(m log n) Time. Fundam. Informaticae, 105, 3 (2010), 319–339. https://doi.org/10.3233/FI-2010-369 Google ScholarGoogle ScholarCross RefCross Ref
  45. Antti Valmari and Giuliana Franceschinis. 2010. Simple (m ologn) Time Markov Chain Lumping. In Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2010 (LNCS, Vol. 6015). Springer, 38–52. Google ScholarGoogle Scholar
  46. Antti Valmari and Petri Lehtinen. 2008. Efficient Minimization of DFAs with Partial Transition. In Theoretical Aspects of Computer Science, STACS 2008 (LIPIcs, Vol. 1). Schloss Dagstuhl – Leibniz-Zentrum für Informatik, Germany, 645–656. Google ScholarGoogle Scholar
  47. Rob J. van Glabbeek. 2001. The Linear Time - Branching Time Spectrum I. In Handbook of Process Algebra, Jan A. Bergstra, Alban Ponse, and Scott A. Smolka (Eds.). North-Holland / Elsevier, 3–99. https://doi.org/10.1016/b978-044482830-9/50019-9 Google ScholarGoogle ScholarCross RefCross Ref
  48. Glynn Winskel. 1993. The formal semantics of programming languages - an introduction. MIT Press. isbn:978-0-262-23169-5 Google ScholarGoogle Scholar
  49. Thorsten Wiß mann, Hans-Peter Deifel, Stefan Milius, and Lutz Schröder. 2021. From generic partition refinement to weighted tree automata minimization. Formal Aspects of Computing, March, 1–33. https://doi.org/10.1007/s00165-020-00526-z Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Thorsten Wißmann. 2023. Supported Sets – A New Foundation For Nominal Sets And Automata. In Computer Science Logic (CSL’23) (LIPIcs). arxiv:2201.09825 to appear Google ScholarGoogle Scholar
  51. Thorsten Wißmann, Ulrich Dorsch, Stefan Milius, and Lutz Schröder. 2020. Efficient and Modular Coalgebraic Partition Refinement. Logical Methods in Computer Science, 16:1 (2020), January, 8:1–8:63. https://doi.org/10.23638/LMCS-16(1:8)2020 Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Fast Coalgebraic Bisimilarity Minimization

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Article Metrics

      • Downloads (Last 12 months)169
      • Downloads (Last 6 weeks)22

      Other Metrics

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader
    About Cookies On This Site

    We use cookies to ensure that we give you the best experience on our website.

    Learn more

    Got it!