Multi-core Symbolic Bisimulation Minimisation

Bisimulation minimisation alleviates the exponential growth of transition systems in model checking by computing the smallest system that has the same behavior as the original system according to some notion of equivalence. One popular strategy to compute a bisimulation minimisation is signature-based partition refinement. This can be performed symbolically using binary decision diagrams to allow models with larger state spaces to be minimised. This paper studies strong and branching symbolic bisimulation for labeled transition systems, continuous-time markov chains, and interactive markov chains. We introduce the notion of partition refinement with partial signatures. We extend the parallel BDD library Sylvan to parallelize the signature refinement algorithm, and develop a new parallel BDD algorithm to refine a partition, which conserves previous block numbers and uses a parallel data structure to store block assignments. We also present a specialized BDD algorithm for the computation of inert transitions. The experimental evaluation, based on benchmarks from the literature, demonstrates a speedup of upi¾?to 95x sequentially. In addition, we find parallel speedups of upi¾?to 17x due to parallelisation with 48 cores. Finally, we present the implementation of these algorithms as a versatile tool that can be customized for bisimulation minimisation in various contexts.

[1]  Jaco van de Pol,et al.  Lace: Non-blocking Split Deque for Work-Stealing , 2014, Euro-Par Workshops.

[2]  Alfons Laarman,et al.  Multi-Core BDD Operations for Symbolic Reachability , 2013, Electron. Notes Theor. Comput. Sci..

[3]  Joost-Pieter Katoen,et al.  The How and Why of Interactive Markov Chains , 2009, FMCO.

[4]  Randal E. Bryant,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 1986, IEEE Transactions on Computers.

[5]  Konrad Kulakowski Concurrent bisimulation algorithm , 2013, ArXiv.

[6]  Rocco De Nicola,et al.  Three logics for branching bisimulation , 1995, JACM.

[7]  Robert de Simone,et al.  Symbolic Bisimulation Minimisation , 1992, CAV.

[8]  Marta Z. Kwiatkowska,et al.  PRISM 4.0: Verification of Probabilistic Real-Time Systems , 2011, CAV.

[9]  Peng Wu,et al.  Model checking the probabilistic pi-calculus , 2007 .

[10]  Anton Wijs GPU Accelerated Strong and Branching Bisimilarity Checking , 2015, TACAS.

[11]  Masahiro Fujita,et al.  Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping , 1993, 30th ACM/IEEE Design Automation Conference.

[12]  Gianfranco Ciardo,et al.  An Efficient Fully Symbolic Bisimulation Algorithm for Non-Deterministic Systems , 2013, Int. J. Found. Comput. Sci..

[13]  Bernd Becker,et al.  Optimization techniques for BDD-based bisimulation computation , 2007, GLSVLSI '07.

[14]  Matthias Kuntz,et al.  Distributed Markovian Bisimulation Reduction aimed at CSL Model Checking , 2008, Electron. Notes Theor. Comput. Sci..

[15]  Robert E. Tarjan,et al.  Three Partition Refinement Algorithms , 1987, SIAM J. Comput..

[16]  Tom van Dijk,et al.  Sylvan: multi-core decision diagrams , 2015, TACAS.

[17]  Alfons Laarman,et al.  LTSmin: High-Performance Language-Independent Model Checking , 2015, TACAS.

[18]  Edmund M. Clarke,et al.  Symbolic model checking for sequential circuit verification , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[19]  Bernd Becker,et al.  Sigref- A Symbolic Bisimulation Tool Box , 2006, ATVA.

[20]  Simona Orzan,et al.  Distributed Branching Bisimulation Reduction of State Spaces , 2003, Electron. Notes Theor. Comput. Sci..

[21]  R. I. Bahar,et al.  Algebraic decision diagrams and their applications , 1993, Proceedings of 1993 International Conference on Computer Aided Design (ICCAD).

[22]  Salem Derisavi,et al.  Signature-based Symbolic Algorithm for Optimal Markov Chain Lumping , 2007 .

[23]  William Pugh,et al.  Skip lists: a probabilistic alternative to balanced trees , 1989, CACM.

[24]  Holger Hermanns,et al.  Symbolic partition refinement with automatic balancing of time and space , 2010, Perform. Evaluation.

[25]  Robert D. Blumofe,et al.  Scheduling multithreaded computations by work stealing , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[26]  Bernd Becker,et al.  Correctness Issues of Symbolic Bisimulation Computation for Markov Chains , 2010, MMB/DFT.

[27]  Salem Derisavi A Symbolic Algorithm for Optimal Markov Chain Lumping , 2007, TACAS.