Abstract
Partition refinement is a method for minimizing automata and transition systems of various types. Recently, we have developed a partition refinement algorithm that is generic in the transition type of the given system and matches the run time of the best known algorithms for many concrete types of systems, e.g. deterministic automata as well as ordinary, weighted, and probabilistic (labelled) transition systems. Genericity is achieved by modelling transition types as functors on sets, and systems as coalgebras. In the present work, we refine the run time analysis of our algorithm to cover additional instances, notably weighted automata and, more generally, weighted tree automata. For weights in a cancellative monoid we match, and for non-cancellative monoids such as (the additive monoid of) the tropical semiring even substantially improve, the asymptotic run time of the best known algorithms. We have implemented our algorithm in a generic tool that is easily instantiated to concrete system types by implementing a simple refinement interface. Moreover, the algorithm and the tool are modular, and partition refiners for new types of systems are obtained easily by composing pre-implemented basic functors. Experiments show that even for complex system types, the tool is able to handle systems with millions of transitions.
Article PDF
Similar content being viewed by others
Avoid common mistakes on your manuscript.
References
Adams, S.: Efficient Sets: A Balancing Act. J Funct Program 3(4), 553–561 (1993)
Awodey S (2010) Category Theory, volume 52 of Oxford Logic Guides. Oxford University Press, Oxford, 2 edition
Berkholz, C., Bonsma, P.S., Grohe, M.: Tight Lower and Upper Bounds for the Complexity of Canonical Colour Refinement. Theory Comput Syst 60(4), 581–614 (2017)
Björklund J, Cleophas L (2020) Aggregation-Based Minimization of Finite State Automata. Acta Informatica, January 2020
Bergamini D, Descoubes N, Joubert C, Mateescu R (2005) BISIMULATOR: A Modular Tool for on-the-Fly Equivalence Checking. In: Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2005, volume 3440 of LNCS. Springer, pp 581–585
Baier, C., Engelen, B., Majster-Cederbaum, M.: Deciding bisimilarity and similarity for probabilistic processes. J Comput Syst Sci 60, 187–231 (2000)
Bunte, O., Groote, J.F., Keiren Jeroen, J.A., Laveaux, M., Neele, T., de Vink, Erik P., Wesselink, W., Wijs, A., Willemse Tim, A.C.: The mCRL2 Toolset for Analysing Concurrent Systems: Improvements in Expressivity and Usability. Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2019, 21–39 (2019)
Bojańczyk, M., Klin, B., Lasota, S.: Automata Theory in Nominal Sets. Log Methods Comput Sci 10(3), (2014)
Blom S, Orzan S (2006) Distributed Branching Bisimulation Reduction of State Spaces. In: Parallel and Distributed Model Checking, PDMC 2003, volume 89 of ENTCS. Elsevier, pp. 99–113
Blom, S., Orzan, S.: A Distributed Algorihm for Strong Bisimulation Reduction of State Spaces. J Softw Tools Technol Transfer 7(1), 74–86 (2005)
Bartels F, Sokolova A, de Vink E (2003) A Hierarchy of Probabilistic System Types. In: Coagebraic Methods in Computer Science, CMCS 2003, volume 82 of ENTCS. Elsevier, pp. 57 – 75
Buchholz, P.: Bisimulation Relations for Weighted Automata. Theor Comput Sci 393, 109–123 (2008)
Cormen, T., Leiserson, C., Rivest, R.: Introduction to Algorithms. MIT Press, Cambridge (1990)
Ciardo, G., Trivedi, K.S.: A Decomposition Approach for Stochastic Reward Net Models. Perform Evaluat 18(1), 37–59 (1993)
Deifel H-P (2019) Implementation and Evaluation of Efficient Partition Refinement Algorithms. Master's thesis, Friedrich-Alexander Universität Erlangen-Nürnberg, https://hpdeifel.de/master-thesis-deifel.pdf
Derisavi, S., Hermanns, H., Sanders, W.: Optimal state-space lumping in Markov chains. Inf Process Lett 87(6), 309–315 (2003)
Dorsch U, Milius S, Schröder L, Wißmann T (2017) Efficient Coalgebraic Partition Refinement. In Concurrency Theory, CONCUR 2017, volume 85 of LIPIcs, pp. 32:1–32:16. Schloss Dagstuhl – Leibniz-Zentrum für Informatik
Deifel H-P, Milius S, Schröder L, Wißmann T (2019) Generic Partition Refinement and Weighted Tree Automata. In: ter Beek Maurice H, McIver Annabelle, Oliveira José N editors, Formal Methods – The Next 30 Years, Cham, 10. Springer, pp. 280–297
Dovier, A., Piazza, C., Policriti, A.: An efficient algorithm for computing bisimulation equivalence. Theor Comput Sci 311(1–3), 221–256 (2004)
Esik, Z., Maletti, A.: The Category of Simulations for Weighted Tree Automata. Int J Found Comput Sci 22(1845–1859), 12 (2011)
Garavel H, Hermanns H (2002) On Combining Functional Verification and Performance Evaluation Using CADP. In: Formal Methods Europe, FME 2002, volume 2391 of LNCS. Springer, pp. 410–429
Groote JF, Jansen DN, Keiren Jeroen JA, Wijs Anton (2017) An O(mlogn) Algorithm for Computing Stuttering Equivalence and Branching Bisimulation. ACM Trans Comput Log 18(2):13:1–13:34
Gries, D.: Describing an Algorithm by Hopcroft. Acta Informatica 2, 97–109 (1973)
Groote, J.F., Verduzco, J.R., de Vink, Erik P.: An Efficient Algorithm to Determine Probabilistic Bisimulation. Algorithms 11(9), 131 (2018)
Högberg J, Maletti A, May J (2007) Bisimulation Minimisation for Weighted Tree Automata. In: Developments in Language Theory, DLT 2007, volume 4588 of LNCS. Springer, pp. 229–241
Högberg, J., Maletti, A., May, J.: Backward and Forward Bisimulation Minimization of Tree Automata. Theor Comput Sci 410, 3539–3552 (2009)
Hopcroft John (1971) An \(n \log n\) Algorithm for Minimizing States in a Finite Automaton. In: Theory of Machines and Computations. Academic Press, pp. 189–196
Huynh, D., Tian, L.: On Some Equivalence Relations for Probabilistic Processes. Fund Inform 17, 211–234 (1992)
Kwiatkowska M, Norman G, Parker D (2011) PRISM 4.0: Verification of Probabilistic Real-Time Systems. In: Computer Aided Verification, CAV 2011, volume 6806 of LNCS. Springer, pp. 585–591
Kwiatkowska MZ, Norman G, Parker D (2012) The PRISM Benchmark Suite. In: Ninth International Conference on Quantitative Evaluation of Systems, QEST 2012, London, United Kingdom, September 17–20, 2012. IEEE Computer Society, pp. 203–204
Kwiatkowska MZ, Norman G, Sproston J (2002) Probabilistic Model Checking of the IEEE 802.11 Wireless Local Area Network Protocol. In: Holger Hermanns and Roberto Segala, editors, Process Algebra and Probabilistic Methods, Performance Modeling and Verification, Second Joint International Workshop PAPM-PROBMIV 2002, Copenhagen, Denmark, July 25–26, 2002, Proceedings, volume 2399 of Lecture Notes in Computer Science. Springer, pp. 169–187
Knuutila, T.: Re-describing an algorithm by Hopcroft. Theor Comput Sci 250, 333–363 (2001)
Kanellakis, P., Smolka, S.: CCS expressions, finite state processes, and three problems of equivalence. Inf Comput 86(1), 43–68 (1990)
Klin, B., Sassone, V.: Structural Operational Semantics for Stochastic and Weighted Transition Systems. Inf Comput 227, 58–83 (2013)
Launchbury J, Peyton J, Simon L (1994) Lazy functional state threads. In Sarkar Vivek, Ryder Barbara G, Soffa Mary Lou editors, Proceedings of the ACM SIGPLAN'94 Conference on Programming Language Design and Implementation (PLDI), Orlando, Florida, USA, June 20–24, 1994. ACM, pp. 24–35
Milner R (1980) A Calculus of Communicating Systems, volume 92 of LNCS. Springer
May J, Knight K (2006) Tiburon: A Weighted Tree Automata Toolkit. In: Ibarra OH, Yen H-C editors, Implementation and Application of Automata, Berlin, Heidelberg, pp. 102–113
Park D (1981) Concurrency and Automata on Infinite Sequences. In Theoretical Computer Science, 5th GI-Conference, volume 104 of LNCS. Springer, pp. 167–183
Petrov S, Barrett L, Thibaux R, Klein D (2006) Learning Accurate, Compact, and Interpretable Tree Annotation. In: Proceedings of the 21st International Conference on Computational Linguistics and 44th Annual Meeting of the Association for Computational Linguistics, Sydney, Australia, July 2006. Association for Computational Linguistics, pp. 433–440
Petrov S, Klein D (2007) Improved Inference for Unlexicalized Parsing. In Human Language Technologies 2007: The Conference of the North American Chapter of the Association for Computational Linguistics; Proceedings of the Main Conference, Rochester, New York, April 2007. Association for Computational Linguistics, pp. 404–411
Paige, R., Tarjan, R.: Three Partition Refinement Algorithms. SIAM J Comput 16(6), 973–989 (1987)
Ranzato, F., Tapparo, F.: Generalizing the Paige-Tarjan Algorithm by Abstract Interpretation. Inf Comput 206, 620–651 (2008)
Jan, Rutten: Universal Coalgebra: A Theory of Systems. Theor Comput Sci 249, 3–80 (2000)
Silva, A., Bonchi, F., Bonsangue, M.M., Rutten Jan, J.M.M.: Generalizing determinization from automata to coalgebras. Log Methods Comput Sci 9(1), (2013)
Segala R (1995) Modelling and Verification of Randomized Distributed Real-Time Systems. PhD thesis, MIT
Schröder L, Kozen D, Milius S, Wißmann T (2017) Nominal automata with name binding. In: Foundations of Software Science and Computation Structures, FOSSACS 2017, volume 10203 of LNCS, pp. 124–142
Valmari A (2009) Bisimilarity minimization in \((m \log n)\) time. In: Applications and Theory of Petri Nets, PETRI NETS 2009, volume 5606 of LNCS. Springer, pp. 123–142
Valmari, A.: Simple bisimilarity minimization in \((m \log n)\) time. Fund Inform 105(3), 319–339 (2010)
van Dijk, T., van de Pol, J.: Multi-Core Symbolic Bisimulation Minimization. J Softw Tools Technol Transfer 20(2), 157–177 (2018)
Valmari A, Franceschinis G (2010) Simple \((m\log n)\) time Markov chain lumping. In: Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2010, volume 6015 of LNCS. Springer, pp. 38–52
van Glabbeek R (2001) The Linear Time—Branching Time Spectrum I; the Semantics of Concrete, Sequential Processes. In: Bergstra J, Ponse A, Smolka S (2001) editors, Handbook of Process Algebra. Elsevier, pp. 3–99
Wißmann, T., Dorsch, U., Milius, S.: Schröder L (2020) Efficient and Modular Coalgebraic Partition Refinement. Logical Methods in Computer Science 16(1), (January 2020)
Funding
Open Access funding enabled and organized by Projekt DEAL.
Author information
Authors and Affiliations
Corresponding author
Additional information
Annabelle McIver, Maurice ter Beek and Cliff Jones
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Supported by the DFG project COAX (MI 717/5-2)
Supported by the DFG project COAX (SCHR 1118/12-2)
Supported by the Deutsche Forschungsgemeinschaft (DFG) as part of the Research and Training Group 2475 “Cybercrime and Forensic Computing” (393541319/GRK2475/1-2019)
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Wißmann, T., Deifel, HP., Milius, S. et al. From generic partition refinement to weighted tree automata minimization. Form Asp Comp 33, 695–727 (2021). https://doi.org/10.1007/s00165-020-00526-z
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00165-020-00526-z