Multi-core symbolic bisimulation minimisation



Published in: TACAS pp 332–348

DOI: 10.1007/978-3-662-49674-9_19



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 up to 95x sequentially. In addition, we find parallel speedups of up 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.

BibTeX entry:

 author = {Tom van Dijk and Jaco van de Pol},
 booktitle = {TACAS},
 doi = {10.1007/978-3-662-49674-9_19},
 pages = {332--348},
 publisher = {Springer},
 series = {LNCS},
 talk = {2016sigref_talk.pdf},
 title = {{Multi-core symbolic bisimulation minimisation}},
 volume = {9636},
 year = {2016}