Affiliation:
1. Sun Microsystems, in Burlington, MA
2. Hewlett-Packard, Palo Alto, CA
Abstract
This article provides a detailed description of the automatic theorem prover Simplify, which is the proof engine of the Extended Static Checkers ESC/Java and ESC/Modula-3. Simplify uses the Nelson--Oppen method to combine decision procedures for several important theories, and also employs a matcher to reason about quantifiers. Instead of conventional matching in a term DAG, Simplify matches up to equivalence in an E-graph, which detects many relevant pattern instances that would be missed by the conventional approach. The article describes two techniques, error context reporting and error localization, for helping the user to determine the reason that a false conjecture is false. The article includes detailed performance figures on conjectures derived from realistic program-checking problems.
Publisher
Association for Computing Machinery (ACM)
Subject
Artificial Intelligence,Hardware and Architecture,Information Systems,Control and Systems Engineering,Software
Reference61 articles.
1. Ahrendt W. Baar T. Beckert B. Bubel R. Giese M. Hähnle R. Menzel W. Mostowski W. Roth A. Schlager S. and Schmitt P. H. 2003. The KeY tool. Technical report in computing science no. 2003--5 Department of Computing Science Chalmers University and Göteborg University Göteborg Sweden. February. Ahrendt W. Baar T. Beckert B. Bubel R. Giese M. Hähnle R. Menzel W. Mostowski W. Roth A. Schlager S. and Schmitt P. H. 2003. The KeY tool. Technical report in computing science no. 2003--5 Department of Computing Science Chalmers University and Göteborg University Göteborg Sweden. February.
2. The Cassowary linear arithmetic constraint solving algorithm
3. Barrett C. W. 2002. Checking validity of quantifier-free formulas in combinations of first-order theories. Ph.D. thesis Department of Computer Science Stanford University Stanford CA. Available at http://verify.stanford.edu/barrett/thesis.ps. Barrett C. W. 2002. Checking validity of quantifier-free formulas in combinations of first-order theories. Ph.D. thesis Department of Computer Science Stanford University Stanford CA. Available at http://verify.stanford.edu/barrett/thesis.ps.
Cited by
304 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. An Infinite Needle in a Finite Haystack: Finding Infinite Counter-Models in Deductive Verification;Proceedings of the ACM on Programming Languages;2024-01-05
2. State Merging with Quantifiers in Symbolic Execution;Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering;2023-11-30
3. Complete First-Order Reasoning for Properties of Functional Programs;Proceedings of the ACM on Programming Languages;2023-10-16
4. Equality Saturation Theory Exploration à la Carte;Proceedings of the ACM on Programming Languages;2023-10-16
5. Static Analysis Method of C Code Based on Model Checking and Defect Pattern Matching;2023 IEEE 5th International Conference on Power, Intelligent Computing and Systems (ICPICS);2023-07-14