A distributed algorithm for strong bisimulation reduction of state spaces

Abstract It is a known problem that state spaces can grow very big, which makes operating with them (including reducing them) difficult because of memory shortage. In the attempt to extend the size of the state spaces that can be dealt with, we designed and implemented a bisimulation reduction algorithm for distributed memory settings using message passing communication. By using message passing, the same implementation can be used on both large SMP machines and clusters of workstations. The algorithm performs reduction of large labeled transition systems modulo strong bisimulation. We justify its correctness and termination. We provide an evaluation of the worst-case time and message complexity and some performance data from a prototype implementation. Both theory and practice show that the algorithm scales up with the number of workers.

[1]  Radu Mateescu,et al.  Parallel state space construction for model-checking , 2001, SPIN '01.

[2]  Jean-Claude Fernandez,et al.  An Implementation of an Efficient Algorithm for Bisimulation Equivalence , 1990, Sci. Comput. Program..

[3]  Alain Kerbrat,et al.  CADP - A Protocol Validation and Verification Toolbox , 1996, CAV.

[4]  Insup Lee,et al.  Parallel Algorithms for Relational Coarsest Partition Problems , 1998, IEEE Trans. Parallel Distributed Syst..

[5]  Thomas Noll,et al.  Truth/SLC - A Parallel Verification Platform for Concurrent Systems , 2001, CAV.

[6]  S. P. Luttik Description and formal specification of the Link Layer of P1394 , 1997, FME 1997.

[7]  Flavio Lerda,et al.  Distributed-Memory Model Checking with SPIN , 1999, SPIN.

[8]  Benedikt Bollig,et al.  Local Parallel Model Checking for the Alternation-Free µ-Calculus , 2002, SPIN.

[9]  Robert B. Ross,et al.  PVFS: A Parallel File System for Linux Clusters , 2000, Annual Linux Showcase & Conference.

[10]  Assaf Schuster,et al.  Distributed Symbolic Model Checking for µ-Calculus , 2001, CAV.

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

[12]  Benedikt Bollig,et al.  Parallel Model Checking for the Alternation Free µ-Calculus , 2001, TACAS.

[13]  Scott A. Smolka,et al.  CCS expressions, finite state processes, and three problems of equivalence , 1983, PODC '83.

[14]  J. F. Groote,et al.  A balancing act : analyzing a distributed lift system , 2001 .

[15]  Jan Friso Groote,et al.  µCRL: A Toolset for Analysing Algebraic Specifications , 2001, CAV.

[16]  Scott A. Smolka,et al.  Towards efficient parallelization of equivalence checking algorithms , 1992, FORTE.

[17]  Frits W. Vaandrager,et al.  Distributing Timed Model Checking - How the Search Order Matters , 2000, CAV.

[18]  Hagit Attiya,et al.  Distributed Computing: Fundamentals, Simulations and Advanced Topics , 1998 .