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.
Work by S. Milius, L. Schröder, and T. Wißmann forms part of the DFG project COAX (MI 717/5-2 and SCHR 1118/12-2).
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Adams, S.: Efficient sets - a balancing act. J. Funct. Program. 3(4), 553–561 (1993)
Baier, C., Engelen, B., Majster-Cederbaum, M.: Deciding bisimilarity and similarity for probabilistic processes. J. Comput. Syst. Sci. 60, 187–231 (2000)
Bartels, F., Sokolova, A., de Vink, E.: A hierarchy of probabilistic system types. In: Coagebraic Methods in Computer Science, CMCS 2003, ENTCS, vol. 82, pp. 57–75. Elsevier (2003)
Bergamini, D., Descoubes, N., Joubert, C., Mateescu, R.: BISIMULATOR: a modular tool for on-the-fly equivalence checking. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 581–585. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-31980-1_42
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)
Blom, S., Orzan, S.: Distributed branching bisimulation reduction of state spaces. In: Parallel and Distributed Model Checking, PDMC 2003, ENTCS, vol. 89, pp. 99–113. Elsevier (2003)
Blom, S., Orzan, S.: A distributed algorihm for strong bisimulation reduction of state spaces. J. Softw. Tools Technol. Transf. 7(1), 74–86 (2005)
Bojańczyk, M., Klin, B., Lasota, S.: Automata theory in nominal sets. Log. Methods Comput. Sci. 10(3) (2014)
Buchholz, P.: Bisimulation relations for weighted automata. Theor. Comput. Sci. 393, 109–123 (2008)
Bunte, O., et al.: The mCRL2 toolset for analysing concurrent systems. In: Vojnar, T., Zhang, L. (eds.) TACAS 2019. LNCS, vol. 11428, pp. 21–39. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-17465-1_2
Deifel, H.-P.: Implementation and evaluation of efficient partition refinement algorithms. Master’s thesis, Friedrich-Alexander Universität Erlangen-Nürnberg (2019). https://hpdeifel.de/master-thesis-deifel.pdf
Deifel, H.-P., Milius, S., Schröder, L., Wißmann, T.: Generic partition refinement and weighted tree automata (2019). https://arxiv.org/abs/1811.08850
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.: Efficient coalgebraic partition refinement. In: Concurrency Theory, CONCUR 2017, LIPIcs, pp. 32:1–32:16. Schloss Dagstuhl - Leibniz-Zentrum für Informatik (2017)
Dovier, A., Piazza, C., Policriti, A.: An efficient algorithm for computing bisimulation equivalence. Theor. Comput. Sci. 311(1–3), 221–256 (2004)
Garavel, H., Hermanns, H.: On combining functional verification and performance evaluation using CADP. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 410–429. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45614-7_23
Gries, D.: Describing an algorithm by Hopcroft. Acta Informatica 2, 97–109 (1973)
Groote, J., Jansen, D., Keiren, J., Wijs, A.: An O(m log n) algorithm for computing stuttering equivalence and branching bisimulation. ACM Trans. Comput. Log. 18(2), 13:1–13:34 (2017)
Groote, J., Verduzco, J., de Vink, E.: An efficient algorithm to determine probabilistic bisimulation. Algorithms 11(9), 131 (2018)
Högberg, J., Maletti, A., May, J.: Bisimulation minimisation for weighted tree automata. In: Harju, T., Karhumäki, J., Lepistö, A. (eds.) DLT 2007. LNCS, vol. 4588, pp. 229–241. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-73208-2_23
Högberg, J., Maletti, A., May, J.: Backward and forward bisimulation minimization of tree automata. Theor. Comput. Sci. 410, 3539–3552 (2009)
Hopcroft, J.: An \(n \log n\) algorithm for minimizing states in a finite automaton. In: Theory of Machines and Computations, pp. 189–196. Academic Press (1971)
Huynh, D., Tian, L.: On some equivalence relations for probabilistic processes. Fund. Inf. 17, 211–234 (1992)
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)
Knuutila, T.: Re-describing an algorithm by Hopcroft. Theor. Comput. Sci. 250, 333–363 (2001)
Paige, R., Tarjan, R.: Three partition refinement algorithms. SIAM J. Comput. 16(6), 973–989 (1987)
PRISM: Benchmarks FMS and WLAN. http://www.prismmodelchecker.org/casestudies/fms.php, wlan.php. Accessed 16 Nov 2018
Ranzato, F., Tapparo, F.: Generalizing the Paige-Tarjan algorithm by abstract interpretation. Inf. Comput. 206, 620–651 (2008)
Rutten, J.: Universal coalgebra: a theory of systems. Theor. Comput. Sci. 249, 3–80 (2000)
Schröder, L., Kozen, D., Milius, S., Wißmann, T.: Nominal automata with name binding. In: Esparza, J., Murawski, A.S. (eds.) FoSSaCS 2017. LNCS, vol. 10203, pp. 124–142. Springer, Heidelberg (2017). https://doi.org/10.1007/978-3-662-54458-7_8
Segala, R.: Modelling and verification of randomized distributed real-time systems. Ph.D. thesis, MIT (1995)
Valmari, A.: Bisimilarity minimization in o(m logn) time. In: Franceschinis, G., Wolf, K. (eds.) PETRI NETS 2009. LNCS, vol. 5606, pp. 123–142. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02424-5_9
Valmari, A.: Simple bisimilarity minimization in O(m logn) time. Fund. Inform. 105(3), 319–339 (2010)
Valmari, A., Franceschinis, G.: Simple O(m logn) time Markov chain lumping. In: Esparza, J., Majumdar, R. (eds.) TACAS 2010. LNCS, vol. 6015, pp. 38–52. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-12002-2_4
van Dijk, T., van de Pol, J.: Multi-core symbolic bisimulation minimization. J. Softw. Tools Technol. Transf. 20(2), 157–177 (2018)
Wißmann, T., Dorsch, U., Milius, S., Schröder, L.: Efficient and modular coalgebraic partition refinement (2019). https://arxiv.org/abs/1806.05654
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Deifel, HP., Milius, S., Schröder, L., Wißmann, T. (2019). Generic Partition Refinement and Weighted Tree Automata. In: ter Beek, M., McIver, A., Oliveira, J. (eds) Formal Methods – The Next 30 Years. FM 2019. Lecture Notes in Computer Science(), vol 11800. Springer, Cham. https://doi.org/10.1007/978-3-030-30942-8_18
Download citation
DOI: https://doi.org/10.1007/978-3-030-30942-8_18
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-30941-1
Online ISBN: 978-3-030-30942-8
eBook Packages: Computer ScienceComputer Science (R0)