The search for proof and the search for counterexamples (bugs) are complementary activities that need to be pursued concurrently in order to maximize the practical success rate of verification tools. While this is well-understood in safety verification, the current focus of liveness verification has been almost exclusively on the search for termination proofs. A counterexample to termination is an infinite program execution. In this paper, we propose a method to search for such counterexamples. The search proceeds in two phases. We first dynamically enumerate lasso-shaped candidate paths for counterexamples, and then statically prove their feasibil-ity. We illustrate the utility of our nontermination prover, called TNT, on several nontrivia...
Non-termination analysis proves that programs, or parts of a program, do notterminate. This is impor...
Termination and non-termination are a pair of fundamental program properties. Arguably, the majority...
Proving program termination is typically done by finding a well-founded ranking function for the pro...
The search for proof and the search for counterexamples (bugs) are complementary activities that nee...
The search for reliable and scalable automated methods for finding counterexamples to termination or...
We show how the problem of nontermination proving can be reduced to a question of underapproximation...
While termination checking tailored to real-world library code or frameworks has received ever-incre...
While termination checking tailored to real-world library code or frameworks has received ever-incre...
Abstract. We present a new method for proving liveness and termination prop-erties for fair concurre...
Abstract. We present a new method for proving liveness and termination properties for fair concurren...
One way to develop more robust software is to use formal program verification. Formal program verifi...
We present a new approach to proving non-termination of non-deterministic integer programs. Our tech...
International audienceThis paper proposes a framework for detecting termination of programs handling...
Abstract. We show how Max-SMT-based invariant generation can be exploited for proving non-terminatio...
AbstractNon-termination analysis proves that programs, or parts of a program, do not terminate. This...
Non-termination analysis proves that programs, or parts of a program, do notterminate. This is impor...
Termination and non-termination are a pair of fundamental program properties. Arguably, the majority...
Proving program termination is typically done by finding a well-founded ranking function for the pro...
The search for proof and the search for counterexamples (bugs) are complementary activities that nee...
The search for reliable and scalable automated methods for finding counterexamples to termination or...
We show how the problem of nontermination proving can be reduced to a question of underapproximation...
While termination checking tailored to real-world library code or frameworks has received ever-incre...
While termination checking tailored to real-world library code or frameworks has received ever-incre...
Abstract. We present a new method for proving liveness and termination prop-erties for fair concurre...
Abstract. We present a new method for proving liveness and termination properties for fair concurren...
One way to develop more robust software is to use formal program verification. Formal program verifi...
We present a new approach to proving non-termination of non-deterministic integer programs. Our tech...
International audienceThis paper proposes a framework for detecting termination of programs handling...
Abstract. We show how Max-SMT-based invariant generation can be exploited for proving non-terminatio...
AbstractNon-termination analysis proves that programs, or parts of a program, do not terminate. This...
Non-termination analysis proves that programs, or parts of a program, do notterminate. This is impor...
Termination and non-termination are a pair of fundamental program properties. Arguably, the majority...
Proving program termination is typically done by finding a well-founded ranking function for the pro...