Graph-Based Algorithms for Boolean Function Manipulation
IEEE Transactions on Computers
Introduction to algorithms
Fast Decision Procedures Based on Congruence Closure
Journal of the ACM (JACM)
Simplification by Cooperating Decision Procedures
ACM Transactions on Programming Languages and Systems (TOPLAS)
Automatic predicate abstraction of C programs
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Predicate abstraction for software verification
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Construction of Abstract State Graphs with PVS
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Experience with Predicate Abstraction
CAV '99 Proceedings of the 11th International Conference on Computer Aided Verification
Abstract and Model Check While You Prove
CAV '99 Proceedings of the 11th International Conference on Computer Aided Verification
Syntactic Program Transformations for Automatic Abstraction
CAV '00 Proceedings of the 12th International Conference on Computer Aided Verification
Applying SAT Methods in Unbounded Symbolic Model Checking
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Deciding Separation Formulas with SAT
CAV '02 Proceedings of the 14th International Conference on Computer Aided Verification
Modular Verification of Software Components in C
IEEE Transactions on Software Engineering
Predicate Abstraction of ANSI-C Programs Using SAT
Formal Methods in System Design
Thorough static analysis of device drivers
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Automatic inference of optimizer flow functions from semantic meanings
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Decision Procedures for the Grand Challenge
Verified Software: Theories, Tools, Experiments
CADE-21 Proceedings of the 21st international conference on Automated Deduction: Automated Deduction
Loop Summarization Using Abstract Transformers
ATVA '08 Proceedings of the 6th International Symposium on Automated Technology for Verification and Analysis
Game-Based Probabilistic Predicate Abstraction in PRISM
Electronic Notes in Theoretical Computer Science (ENTCS)
Array abstractions from proofs
CAV'07 Proceedings of the 19th international conference on Computer aided verification
Cover algorithms and their combination
ESOP'08/ETAPS'08 Proceedings of the Theory and practice of software, 17th European conference on Programming languages and systems
Tighter integration of BDDs and SMT for predicate abstraction
Proceedings of the Conference on Design, Automation and Test in Europe
A framework for verification of software with time and probabilities
FORMATS'10 Proceedings of the 8th international conference on Formal modeling and analysis of timed systems
Efficient predicate abstraction of program summaries
NFM'11 Proceedings of the Third international conference on NASA Formal methods
SLAM2: static driver verification with under 4% false alarms
Proceedings of the 2010 Conference on Formal Methods in Computer-Aided Design
Using stålmarck’s algorithm to prove inequalities
ICFEM'05 Proceedings of the 7th international conference on Formal Methods and Software Engineering
Zap: automated theorem proving for software analysis
LPAR'05 Proceedings of the 12th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
SMT techniques for fast predicate abstraction
CAV'06 Proceedings of the 18th international conference on Computer Aided Verification
Approximating predicate images for bit-vector logic
TACAS'06 Proceedings of the 12th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Loop summarization using state and transition invariants
Formal Methods in System Design
Hi-index | 0.00 |
We present a new approach for performing predicate abstraction based on symbolic decision procedures. A symbolic decision procedure for a theory T (SDPT) takes sets of predicates G and E and symbolically executes a decision procedure for T on G′ ∪ {– e | e ∈ E}, for all the subsets G′ of G. The result of SDPT is a shared expression (represented by a directed acyclic graph) that implicitly represents the answer to a predicate abstraction query. We present symbolic decision procedures for the logic of Equality and Uninterpreted Functions(EUF) and Difference logic (DIF) and show that these procedures run in pseudo-polynomial (rather than exponential) time. We then provide a method to construct SDP's for simple mixed theories (including EUF + DIF) using an extension of the Nelson-Oppen combination method. We present preliminary evaluation of our procedure on predicate abstraction benchmarks from device driver verification in SLAM.