A fast algorithm for computing longest common subsequences
Communications of the ACM
Avoiding exponential explosion: generating compact verification conditions
POPL '01 Proceedings of the 28th 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
Extended static checking for Java
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
The recognition of Series Parallel digraphs
STOC '79 Proceedings of the eleventh annual ACM symposium on Theory of computing
Efficient weakest preconditions
Information Processing Letters
Weakest-precondition of unstructured programs
PASTE '05 Proceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Algebraic Structures and Algorithms for Matching and Matroid Problems
FOCS '06 Proceedings of the 47th Annual IEEE Symposium on Foundations of Computer Science
A practical dynamic single assignment transformation
ACM Transactions on Design Automation of Electronic Systems (TODAES)
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
ESC/Java2: uniting ESC/Java and JML
CASSIS'04 Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Computing preconditions and postconditions of while loops
ICTAC'11 Proceedings of the 8th international conference on Theoretical aspects of computing
VSTTE'12 Proceedings of the 4th international conference on Verified Software: theories, tools, experiments
Verification conditions for single-assignment programs
Proceedings of the 27th Annual ACM Symposium on Applied Computing
Hi-index | 0.00 |
To avoid exponential explosion, program verifiers turn the program into a passive form before generating verification conditions. A little known fact is that the passive form makes it easy to use a strongest postcondition calculus to derive the verification condition. In the first part of this paper, the passivation phase is defined precisely enough to allow a study of its algorithmic properties. In the second part, the weakest precondition and strongest postcondition methods are presented in a unified way and then compared empirically.