Results 1 
7 of
7
Fast and Accurate Bitstate Verification for SPIN
 In Proceedings of the 11th International SPIN Workshop on Model Checking of Software (SPIN
, 2004
"... Bitstate hashing in SPIN has proved invaluable in probabilistically detecting errors in large models, but in many cases, the number of omitted states is much higher than it would be if SPIN allowed more than two hash functions to be used. For example, adding just one more hash function can reduce th ..."
Abstract

Cited by 17 (2 self)
 Add to MetaCart
(Show Context)
Bitstate hashing in SPIN has proved invaluable in probabilistically detecting errors in large models, but in many cases, the number of omitted states is much higher than it would be if SPIN allowed more than two hash functions to be used. For example, adding just one more hash function can reduce the probability of omitting states at all from 99% to under 3%. Because hash computation accounts for an overwhelming portion of the total execution cost of bitstate verification with SPIN, adding additional independent hash functions would slow down the process tremendously. We present efficient ways of computing multiple hash values that, despite sacrificing independence, give virtually the same accuracy and even yield a speed improvement in the two hash function case when compared to the current SPIN implementation. Another key to accurate bitstate hashing is utilizing as much memory as is available. The current SPIN implementation is limited to only 512MB and allows only poweroftwo granularity (256MB, 128MB, etc). However, using 768MB instead of 512MB could reduce the probability of a single omission from 20% to less than one chance in 10,000, which demonstrates the magnitude of both the maximum and the granularity limitation. We have modified SPIN to utilize any addressable amount of memory and use any number of efficientlycomputed hash functions, and we present empirical results from extensive experimentation comparing various configurations of our modified version to the original SPIN.
Bloom Filters in Probabilistic Verification
 In Proceedings of the 5th International Conference on Formal Methods in ComputerAided Design (FMCAD
, 2004
"... ..."
(Show Context)
Towards partial order reduction for model checking temporal epistemic logic
"... Abstract. We introduce basic partial order reduction techniques in a temporalepistemic setting. We analyse the semantics of interpreted systems with respect to the notions of traceequivalence for the epistemic linear time logic LTLK−X. 1 ..."
Abstract

Cited by 12 (9 self)
 Add to MetaCart
(Show Context)
Abstract. We introduce basic partial order reduction techniques in a temporalepistemic setting. We analyse the semantics of interpreted systems with respect to the notions of traceequivalence for the epistemic linear time logic LTLK−X. 1
Enhanced Probabilistic Verification with 3Spin and 3Murphi
"... Abstract. 3Spin and 3Murphi are modified versions of the Spin model checker and the Murϕ verifier. Our modifications enhance the probabilistic algorithms and data structures for storing visited states, making them more effective and more usable for verifying huge transition systems. The tools also s ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
Abstract. 3Spin and 3Murphi are modified versions of the Spin model checker and the Murϕ verifier. Our modifications enhance the probabilistic algorithms and data structures for storing visited states, making them more effective and more usable for verifying huge transition systems. The tools also support a verification methodology designed to minimize time to finding errors, or to reaching desired certainty of errorfreedom. This methodology calls for bitstate hashing, hash compaction, and integrated analyses of both to provide feedback and advice to the user. 3Spin and 3Murphi are the only tools to offer this support, and do so with the most powerful and flexible currentlyavailable implementations of the underlying algorithms and data structures. 1
Stronger reduction criteria for Local First Search
"... Abstract. Local First Search (LFS) is a partial order technique for reducing the number of states to be explored when trying to decide reachability of a local (component) property in a parallel system; it is based on an analysis of the structure of the partial orders of executions in such systems. I ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
(Show Context)
Abstract. Local First Search (LFS) is a partial order technique for reducing the number of states to be explored when trying to decide reachability of a local (component) property in a parallel system; it is based on an analysis of the structure of the partial orders of executions in such systems. Intuitively, LFS is based on a criterion that allows to guide the search for such local properties by limiting the “concurrent progress ” of components. In this paper, we elaborate the analysis of the partial orders in question and obtain related but significantly stronger criteria for reductions, show their relation to the previously established criterion, and discuss the algorithmics of the proposed improvement. Our contribution is both fundamental in providing better insights into LFS and practical in providing an improvement of high potential.
Symmetry Reduction in the ProB Model Checker
"... Abstract. Model checking suffers from the state space explosion problem. One method to alleviate this problem is to exploit symmetries in the system, such that duplicate symmetric components of the state space are not explored – saving time during the checking process. This paper identifies symmetri ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Model checking suffers from the state space explosion problem. One method to alleviate this problem is to exploit symmetries in the system, such that duplicate symmetric components of the state space are not explored – saving time during the checking process. This paper identifies symmetries in typical structures of the formal language of B, including relations, powersets and elements of sets, and presents a method for finding them through the modification of the well known graph isomorphism program, NAUTY. This work has been implemented in the ProB model checker and preliminary experiments indicate the idea holds much potential for improving the performance of model checking for B. 1
Fast, AllPurpose State Storage
, 2009
"... Existing techniques for approximate storage of visited states in a model checker are too specialpurpose and too DRAMintensive. Bitstate hashing, based on Bloom filters, is good for exploring most of very large state spaces, and hash compaction is good for highassurance verification of more tract ..."
Abstract
 Add to MetaCart
(Show Context)
Existing techniques for approximate storage of visited states in a model checker are too specialpurpose and too DRAMintensive. Bitstate hashing, based on Bloom filters, is good for exploring most of very large state spaces, and hash compaction is good for highassurance verification of more tractable problems. We describe a scheme that is good at both, because it adapts at run time to the number of states visited. It does this within a fixed memory space and with remarkable speed and accuracy. In many cases, it is faster than existing techniques, because it only ever requires one random access to main memory per operation; existing techniques require several to have good accuracy. Adapting to accomodate more states happens in place using streaming access to memory; traditional rehashing would require extra space, random memory accesses, and hash computation. The structure can also incorporate search stack matching for partialorder reductions, saving the need for extra resources dedicated to an additional structure. Our scheme is wellsuited for a future in which random accesses to memory are more of a limiting factor than the size of memory.