Journal Article10.1145/1707801.1706307
Compositional may-must program analysis
52
TL;DR: In this chapter three subsequent studies of the determinants of runtime errors in the proof of the absence of bugs in a distributed system showed that the programming language itself was to blame for the bugs.
read more
Abstract: Program analysis tools typically compute two types of information: (1) may information that is true of all program executions and is used to prove the absence of bugs in the program, and (2) must i...
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
SMT-Based Model Checking for Recursive Programs
Anvesh Komuravelli,Arie Gurfinkel,Sagar Chaki +2 more
- 18 Jul 2014
TL;DR: An SMT-based symbolic model checking algorithm for safety verification of recursive programs and shows that for programs and properties over a decidable theory, the algorithm is guaranteed to find a counterexample, if one exists.
Software model checking via IC3
Alessandro Cimatti,Alberto Griggio +1 more
- 07 Jul 2012
TL;DR: This paper generalizes IC3 from SAT to Satisfiability Modulo Theories (SMT), thus enabling the direct analysis of programs after an encoding in form of symbolic transition systems, and adapts the "linear" search style of IC3 to a tree-like search.
MintHint: automated synthesis of repair hints
Shalini Kaleeswaran,Varun Tulsian,Aditya Kanade,Alessandro Orso +3 more
- 31 May 2014
TL;DR: MintHint as mentioned in this paper performs statistical correlation analysis to identify expressions that are likely to occur in the repaired code and generates, using pattern-matching based synthesis, repair hints from these expressions.
103
Circuit Structures for Improving Efficiency of Security and Privacy Tools
Samee Zahur,David Evans +1 more
- 19 May 2013
TL;DR: It is demonstrated how many common array usage patterns can be significantly improved with the help of these circuit structures, and how these techniques take advantage of locality and batching to provide amortized costs that scale polylogarithmically in the size of the structure.
From under-approximations to over-approximations and back
Aws Albarghouthi,Arie Gurfinkel,Marsha Chechik +2 more
- 24 Mar 2012
TL;DR: Ufo is an algorithm that unifies OD and UD approaches in order to leverage both of their advantages, and is parameterized by the degree to which over- and under-approximations drive the analysis.
References
Lazy abstraction
Thomas A. Henzinger,Ranjit Jhala,Rupak Majumdar,Grégoire Sutre +3 more
- 01 Jan 2002
TL;DR: This work presents an algorithm for model checking safety properties using lazy abstraction and describes an implementation of the algorithm applied to C programs and provides sufficient conditions for the termination of the method.
1.3K
Interpolation and SAT-Based Model Checking
Kenneth L. McMillan
- 08 Jul 2003
TL;DR: In this article, a fully SAT-based method of unbounded symbolic model checking based on computing Craig interpolants was proposed, which is greatly more efficient than BDD-based symbolic model-checking.
ESP: path-sensitive program verification in polynomial time
Manuvir Das,Sorin Lerner,Mark C. Seigle +2 more
- 17 May 2002
TL;DR: This paper presents a new algorithm for partial program verification that runs in polynomial time and space, and shows that property simulation scales to large programs and is accurate enough to verify meaningful properties.
Active property checking
Patrice Godefroid,Michael Y. Levin,David Molnar +2 more
- 19 Oct 2008
TL;DR: It is shown how static and dynamic type checking can be extended with active type checking and results of experiments with media playing applications on Windows are discussed, where active property checking was able to detect several new security-related bugs.
Proving non-termination
Ashutosh Gupta,Thomas A. Henzinger,Rupak Majumdar,Andrey Rybalchenko,Ru-Gang Xu +4 more
- 07 Jan 2008
TL;DR: This paper proposes a method to search for counterexamples to termination, and illustrates the utility of the nontermination prover, called TNT, on several nontrivial examples, some of which require bit-level reasoning about integer representations.
198
Related Papers (5)
[...]
Thomas A. Henzinger,Ranjit Jhala,Rupak Majumdar,Grégoire Sutre +3 more
- 01 Jan 2002
Leonardo de Moura,Nikolaj Bjørner +1 more
- 29 Mar 2008
Patrice Godefroid,Michael Y. Levin,David Molnar +2 more
- 01 Nov 2008