Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
A practical algorithm for exact array dependence analysis
Communications of the ACM
An introduction to assertional reasoning for concurrent systems
ACM Computing Surveys (CSUR)
Finite transition systems: semantics of communicating systems
Finite transition systems: semantics of communicating systems
The algorithmic analysis of hybrid systems
Theoretical Computer Science - Special issue on hybrid systems
Verification of arithmetic circuits with binary moment diagrams
DAC '95 Proceedings of the 32nd annual ACM/IEEE Design Automation Conference
A logic-model semantics for SCR software requirements
ISSTA '96 Proceedings of the 1996 ACM SIGSOFT international symposium on Software testing and analysis
Automated consistency checking of requirements specifications
ACM Transactions on Software Engineering and Methodology (TOSEM)
Model checking large software specifications
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
Documentation for safety critical software
ICSE '93 Proceedings of the 15th international conference on Software Engineering
Symbolic Model Checking
State-Based Model Checking of Event-Driven System Requirements
IEEE Transactions on Software Engineering
Automatic Symbolic Verification of Embedded Systems
IEEE Transactions on Software Engineering
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Symbolic Model Checking of Infinite State Systems Using Presburger Arithmetic
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Symbolic Protocol Verification with Queue BDDs
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
Word Level Symbolic Model Checking: A New Approach for Verifying Arithmetic Circuits
Word Level Symbolic Model Checking: A New Approach for Verifying Arithmetic Circuits
ACM Transactions on Programming Languages and Systems (TOPLAS)
Using shape analysis to reduce finite-state models of concurrent Java programs
ACM Transactions on Software Engineering and Methodology (TOSEM)
Composite model-checking: verification with type-specific symbolic representations
ACM Transactions on Software Engineering and Methodology (TOSEM)
Action Language: a specification language for model checking reactive systems
Proceedings of the 22nd international conference on Software engineering
Proceedings of the 22nd international conference on Software engineering
A composite model checking toolset for analyzing software systems
ACM SIGSOFT Software Engineering Notes
FMSP '00 Proceedings of the third workshop on Formal methods in software practice
Automatic abstraction for model checking software systems with interrelated numeric constraints
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Explanation-Based Scenario Generation for Reactive System Models
Automated Software Engineering
Automated Software Engineering
Lightweight Reasoning about Program Correctness
Information Systems Frontiers
TACAS '99 Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems
TACAS '00 Proceedings of the 6th International Conference on Tools and Algorithms for Construction and Analysis of Systems: Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS 2000
A Library for Composite Symbolic Representations
TACAS 2001 Proceedings of the 7th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
Parametric Verification of a Group Membership Algorithm
FTRTFT '02 Proceedings of the 7th International Symposium on Formal Techniques in Real-Time and Fault-Tolerant Systems: Co-sponsored by IFIP WG 2.2
Parametric Verification of a Group Membership Algorithm
Theory and Practice of Logic Programming
Taylor Expansion Diagrams: A Canonical Representation for Verification of Data Flow Designs
IEEE Transactions on Computers
Using counterexamples for improving the precision of reachability computation with polyhedra
CAV'07 Proceedings of the 19th international conference on Computer aided verification
On computing reachability sets of process rewrite systems
RTA'05 Proceedings of the 16th international conference on Term Rewriting and Applications
Hi-index | 0.01 |
Symbolic mode, checking has proved highly successful for large finite-state systems, in which states can be compactly encoded using binary decision diagrams (BDDs) or their variants. The inherent limitation of this approach is that it cannot be applied to systems with an infinite number of states --- even those with a single unbounded integer.Alternatively, we recently proposed a model checker for integer-based systems that uses Presburger constraints as the underlying state representation. While this approach easily verified some subtle, infinite-state concurrency problems, it proved inefficient in its treatment of Boolean and (unordered) enumerated types --- which possess no natural mapping to the Euclidean coordinate space.In this paper we describe a model checker which combines the strengths of both approaches. We use a composite model, in which a formula's valuations are encoded in a mixed BDD-Presburger form, depending on the variables used. We demonstrate our technique's effectiveness on a nontrivial requirements specification, which includes a mixture of Booleans, integers and enumerated types.