Comparison of Algorithms for Checking Emptiness on Büchi Automata

We re-investigate the problem of LTL model-checking for finite-state systems. Typical solutions, like in Spin, work on the fly, reducing the problem to Buchi emptiness. This can be done in linear time, and a variety of algorithms with this property exist. Nonetheless, subtle design decisions can make a great difference to their actual performance in practice, especially when used on-the-fly. We compare a number of algorithms experimentally on a large benchmark suite, measure their actual run-time performance, and propose improvements. Compared with the algorithm implemented in Spin, our best algorithm is faster by about 33 % on average. We therefore recommend that, for on-the-fly explicit-state model checking, nested DFS should be replaced by better solutions.

[1]  Radek Pelánek,et al.  Relating Hierarchy of Linear Temporal Properties to Model Checking , 2003 .

[2]  Denis Poitrenaud,et al.  On-the-Fly Emptiness Checks for Generalized Büchi Automata , 2005, SPIN.

[3]  Gerard J. Holzmann,et al.  The SPIN Model Checker - primer and reference manual , 2003 .

[4]  Radek Pelánek,et al.  BEEM: Benchmarks for Explicit Model Checkers , 2007, SPIN.

[5]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[6]  Jaco Geldenhuys,et al.  More efficient on-the-fly LTL verification with Tarjan's algorithm , 2005, Theor. Comput. Sci..

[7]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[8]  Kathi Fisler,et al.  Is There a Best Symbolic Cycle-Detection Algorithm? , 2001, TACAS.

[9]  Mihalis Yannakakis,et al.  On nested depth first search , 1996, The Spin Verification System.

[10]  Paul Gastin,et al.  Fast LTL to Büchi Automata Translation , 2001, CAV.

[11]  Pierre Wolper,et al.  Memory-efficient algorithms for the verification of temporal properties , 1990, Formal Methods Syst. Des..

[12]  Michael Weber An embeddable virtual machine for state space generation , 2010, International Journal on Software Tools for Technology Transfer.

[13]  Heikki Tauriainen,et al.  Nested emptiness search for generalized Buchi automata , 2004, Proceedings. Fourth International Conference on Application of Concurrency to System Design, 2004. ACSD 2004..

[14]  Jaco Geldenhuys,et al.  Tarjan's Algorithm Makes On-the-Fly LTL Verification More Efficient , 2004, TACAS.

[15]  Javier Esparza,et al.  A Note on On-the-Fly Verification Algorithms , 2005, TACAS.

[16]  Lubos Brim,et al.  DiVinE Multi-Core - A Parallel LTL Model-Checker , 2008, ATVA.

[17]  Jean-Michel Couvreur,et al.  On-the-Fly Verification of Linear Temporal Logic , 1999, World Congress on Formal Methods.

[18]  Paul Gastin,et al.  Minimization of Counterexamples in SPIN , 2004, SPIN.