Results 1  10
of
24
Exploiting symbolic techniques in automated synthesis of distributed programs
 In IEEE International Conference on Distributed Computing Systems
, 2007
"... Automated formal analysis methods such as program verification and synthesis algorithms often suffer from time complexity of their decision procedures and also high space complexity known as the state explosion problem. Symbolic techniques, in which elements of a problem are represented by Boolean f ..."
Abstract

Cited by 17 (11 self)
 Add to MetaCart
(Show Context)
Automated formal analysis methods such as program verification and synthesis algorithms often suffer from time complexity of their decision procedures and also high space complexity known as the state explosion problem. Symbolic techniques, in which elements of a problem are represented by Boolean formulae, are desirable in the sense that they often remedy the state explosion problem and time complexity of decision procedures. Although symbolic techniques have successfully been used in program verification, their benefits have not yet been exploited in the context of program synthesis and transformation extensively. In this paper, we present a symbolic method for automatic synthesis of faulttolerant distributed programs. Our experimental results on synthesis of classical faulttolerant distributed problems such as Byzantine agreement and token ring show a significant performance improvement by several orders of magnitude in both time and space complexity. To the best of our knowledge, this is the first illustration where programs with large state space (beyond 2 100) is handled during synthesis.
Symbolic Statespace Generation of Asynchronous Systems Using Extensible Decision Diagrams
"... Abstract. We propose a new type of canonical decision diagrams, which allows a more efficient symbolic statespace generation for general asynchronous systems by allowing onthefly extension of the possible state variable domains. After implementing both breadthfirst and saturationbased statespac ..."
Abstract

Cited by 8 (6 self)
 Add to MetaCart
(Show Context)
Abstract. We propose a new type of canonical decision diagrams, which allows a more efficient symbolic statespace generation for general asynchronous systems by allowing onthefly extension of the possible state variable domains. After implementing both breadthfirst and saturationbased statespace generation with this new data structure in our tool SmArT, we are able to exhibit substantial efficiency improvements with respect to traditional “static ” decision diagrams. Since our previous works demonstrated that saturation outperforms breadthfirst approaches, saturation with this new structure is now arguably the stateoftheart algorithm for symbolic statespace generation of asynchronous systems. 1
Symbolic Reachability for Process Algebras with Recursive Data Types
 University of Twente
, 2008
"... Abstract. In this paper, we present a symbolic reachability algorithm for process algebras with recursive data types. Like the various saturation based algorithms of Ciardo et al, the algorithm is based on partitioning of the transition relation into events whose influence is local. As new features ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
(Show Context)
Abstract. In this paper, we present a symbolic reachability algorithm for process algebras with recursive data types. Like the various saturation based algorithms of Ciardo et al, the algorithm is based on partitioning of the transition relation into events whose influence is local. As new features, our algorithm supports recursive data types and allows unbounded nondeterminism, which is needed to support open systems with data. The algorithm does not use any specific features of process algebras. That is, it will work for any system that consists of a fixed number of communicating processes, where in each atomic step only a subset of the processes participate. As proof of concept we have implemented the algorithm in the context of the µCRL toolset. We also compared the performance of this prototype with the performance of the existing explicit tools on a set of typical case studies. 1
New metrics for static variable ordering in decision diagrams
 In TACAS, LNCS 3920:90–104
, 2006
"... Abstract. We investigate a new class of metrics to find good variable orders for decision diagrams in symbolic statespace generation. Most of the previous work on static ordering is centered around the concept of minimum variable span, which can also be found in the literature under several other n ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
(Show Context)
Abstract. We investigate a new class of metrics to find good variable orders for decision diagrams in symbolic statespace generation. Most of the previous work on static ordering is centered around the concept of minimum variable span, which can also be found in the literature under several other names. We use a similar concept, but applied to event span, and generalize it to a family of metrics parameterized by a moment, where the metric of moment 0 is the combined event span. Finding a good variable order is then reduced to optimizing one of these metrics, and we design extensive experiments to evaluate them. First, we investigate how the actual optimal order performs in statespace generation, when it can be computed by evaluating all possible permutations. Then, we study the performance of these metrics on selected models and compare their impact on two different statespace generation algorithms: classic breadthfirst and our own saturation strategy. We conclude that the new metric of moment 1 is the best choice. In particular, the saturation algorithm seems to benefit the most from using it, as it achieves the better performance in nearly 80 % of the cases. 1
A finegrained fullnessguided chaining heuristic for symbolic reachability analysis
 In Proc. Automated Technology for Verification and Analysis (ATVA), LNCS
, 2006
"... Abstract. Chaining can reduce the number of iterations required for symbolic statespace generation and modelchecking, especially in Petri nets and similar asynchronous systems, but requires considerable insight and is limited to a static ordering of the events in the highlevel model. We introduce ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Chaining can reduce the number of iterations required for symbolic statespace generation and modelchecking, especially in Petri nets and similar asynchronous systems, but requires considerable insight and is limited to a static ordering of the events in the highlevel model. We introduce a twostep approach that is instead finegrained and dynamically applied to the decision diagrams nodes. The first step, based on a precedence relation, is guaranteed to improve convergence, while the second one, based on a notion of node fullness, is heuristic. We apply our approach to traditional breadthfirst and saturation statespace generation, and show that it is effective in both cases. 1
Symbolic CTL Model Checking of Asynchronous Systems Using Constrained Saturation ⋆
"... Abstract. The saturation statespace generation algorithm has demonstrated clear improvements over stateoftheart symbolic methods for asynchronous systems. This work is motivated by efficiently applying saturation to CTL model checking. First, we introduce a new “constrained saturation ” algorith ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
Abstract. The saturation statespace generation algorithm has demonstrated clear improvements over stateoftheart symbolic methods for asynchronous systems. This work is motivated by efficiently applying saturation to CTL model checking. First, we introduce a new “constrained saturation ” algorithm which constrains state exploration to a set of states satisfying given properties. This algorithm avoids the expensive afterthefact intersection operations and retains the advantages of saturation, namely, exploiting event locality and benefiting from recursive local fixpoint computations. Then, we employ constrained saturation to build the set of states satisfying EU and EG properties for asynchronous systems. The new algorithm can achieve ordersofmagnitude reduction in runtime and memory consumption with respect to methods based on breathfirst search, and even with a previouslyproposed hybrid approach that alternates between “safe ” saturation and “unsafe ” breadthfirst searches. Furthermore, the new approch is fully general, as it does not require the nextstate function to be expressable in Kronecker form. We conclude this paper with a discussion of some possible future work, such as building the set of states belonging to strongly connected components. 1
Improving static variable orders via invariants
 In Application and Theory of Petri Nets and Other Models of Concurrency (ICATPN
, 2007
"... Abstract. Choosing a good variable order is crucial for making symbolic statespace generation algorithms truly efficient. One such algorithm is the MDDbased Saturation algorithm for Petri nets implemented in SmArT, whose efficiency relies on exploiting event locality. This paper presents a novel, ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
(Show Context)
Abstract. Choosing a good variable order is crucial for making symbolic statespace generation algorithms truly efficient. One such algorithm is the MDDbased Saturation algorithm for Petri nets implemented in SmArT, whose efficiency relies on exploiting event locality. This paper presents a novel, static ordering heuristic that considers place invariants of Petri nets. In contrast to related work, we use the functional dependencies encoded by invariants to merge decisiondiagram variables, rather than to eliminate them. We prove that merging variables always yields smaller MDDs and improves event locality, while eliminating variables may increase MDD sizes and break locality. Combining this idea of merging with heuristics for maximizing event locality, we obtain an algorithm for static variable order which outperforms competing approaches regarding both timeefficiency and memoryefficiency, as we demonstrate by extensive benchmarking. 1
Symbolic Reachability Analysis of Integer Timed Petri Nets
"... Abstract. Petri nets are an effective formalism to model discrete event systems, and several variants have been defined to explicitly include real time in the model. We consider two fundamental reachability problems for Timed Petri Nets with positive integer firing times: timed reachability (find al ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Petri nets are an effective formalism to model discrete event systems, and several variants have been defined to explicitly include real time in the model. We consider two fundamental reachability problems for Timed Petri Nets with positive integer firing times: timed reachability (find all markings where the model can be at a given finite time) and earliest reachability (find the minimum time when each reachable marking is entered). For these two problems, we define efficient symbolic algorithms that make use of both ordinary and edgevalued decision diagrams, and provide runtime results on an extensive suite of models. 1
Model Checking with Edgevalued Decision Diagrams
 in Proceedings of the Second NASA Formal Methods Symposium (NFM 2010), NASA/CP2010216215. NASA
, 2010
"... Abstract. We describe an algebra of EdgeValued Decision Diagrams (EVMDDs) to encode arithmetic functions and its implementation in a model checking library along with stateoftheart algorithms for building the transition relation and the state space of discrete state systems. We provide efficien ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
(Show Context)
Abstract. We describe an algebra of EdgeValued Decision Diagrams (EVMDDs) to encode arithmetic functions and its implementation in a model checking library along with stateoftheart algorithms for building the transition relation and the state space of discrete state systems. We provide efficient algorithms for manipulating EVMDDs and give upper bounds of the theoretical time complexity of these algorithms for all basic arithmetic and relational operators. We also demonstrate that the time complexity of the generic recursive algorithm for applying a binary operator on EVMDDs is no worse than that of MultiTerminal Decision Diagrams. We have implemented a new symbolic model checker with the intention to represent in one formalism the best techniques available at the moment across a spectrum of existing tools: EVMDDs for encoding arithmetic expressions, identityreduced MDDs for representing the transition relation, and the saturation algorithm for reachability analysis. We compare our new symbolic model checking EVMDD library with the widely used CUDD package and show that, in many cases, our tool is several orders of magnitude faster than CUDD.
Advanced features in SMART: the Stochastic Model checking Analyzer for Reliability and Timing ∗
"... We describe some of the advanced features of the software tool SmArT, the Stochastic Model checking Analyzer for Reliability and Timing. Initially conceived as a software package for numerical solution and discreteevent simulation of stochastic models, SmArT now also provides powerful modelchecking ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
(Show Context)
We describe some of the advanced features of the software tool SmArT, the Stochastic Model checking Analyzer for Reliability and Timing. Initially conceived as a software package for numerical solution and discreteevent simulation of stochastic models, SmArT now also provides powerful modelchecking capabilities, thanks to its extensive use of various forms of decision diagrams, which in turn also greatly increase the efficiency of its stochastic analysis algorithms. These aspects make it an excellent choice when tackling systems with extremely large state spaces. 1.