Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Symbolic model checking: 1020 states and beyond
Information and Computation - Special issue: Selections from 1990 IEEE symposium on logic in computer science
The STATEMATE semantics of statecharts
ACM Transactions on Software Engineering and Methodology (TOSEM)
Improving the Variable Ordering of OBDDs Is NP-Complete
IEEE Transactions on Computers
A practical method for verifying event-driven software
Proceedings of the 21st international conference on Software engineering
Object-oriented nets with algebraic specifications: the CO-OPN/2 formalism
Concurrent object-oriented programming and petri nets
Stochastic Well-Formed Colored Nets and Symmetric Modeling Applications
IEEE Transactions on Computers
Using Edge-Valued Decision Diagrams for Symbolic Generation of Shortest Paths
FMCAD '02 Proceedings of the 4th International Conference on Formal Methods in Computer-Aided Design
Verification of Asynchronous Circuits by BDD-based Model Checking of Petri Nets
Proceedings of the 16th International Conference on Application and Theory of Petri Nets
Data Decision Diagrams for Petri Net Analysis
ICATPN '02 Proceedings of the 23rd International Conference on Applications and Theory of Petri Nets
Hierarchical Set Decision Diagrams and Automatic Saturation
PETRI NETS '08 Proceedings of the 29th international conference on Applications and Theory of Petri Nets
TACAS'03 Proceedings of the 9th international conference on Tools and algorithms for the construction and analysis of systems
Modeling dynamic architectures using nets-within-nets
ICATPN'05 Proceedings of the 26th international conference on Applications and Theory of Petri Nets
Hierarchical decision diagrams to exploit model structure
FORTE'05 Proceedings of the 25th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
Hi-index | 0.00 |
Shared decision diagram representations of a state-space provide efficient solutions for model-checking of large systems. However, decision diagram manipulation is tricky, as the construction procedure is liable to produce intractable intermediate structures (a.k.a peak effect). The definition of the so-called saturation method has empirically been shown to mostly avoid this peak effect, and allows verification of much larger systems. However, applying this algorithm currently requires deep knowledge of the decision diagram data structures. Hierarchical Set Decision Diagrams (SDD) are decision diagrams in which arcs of the structure are labeled with sets, themselves stored as SDD. This data structure offers an elegant and very efficient way of encoding structured specifications using decision diagram technology. It also offers, through the concept of inductive homomorphisms, flexibility to a user defining a symbolic transition relation. We show in this paper how, with very limited user input, the SDD library is able to optimize evaluation of a transition relation to produce a saturation effect at runtime. We build as an example an SDD model-checker for a compositional formalism: Instantiable Petri Nets (IPN). IPN define a type as an abstract contract. Labeled P/T nets are used as an elementary type. A composite type is defined to hierarchically contain instances (of elementary or composite type). To compose behaviors, IPN use classic label synchronization semantics from process calculi. With a particular recursive folding SDD are able to offer solutions for symmetric systems in logarithmic complexity with respect to other DD. Even in less regular cases, the use of hierarchy in the specification is shown to be well supported by SDD. Experimentations and performances are reported on some well known examples.