Proving non-termination
Gupta A, Henzinger TA, Majumdar R, Rybalchenko A, Xu R. 2008. Proving non-termination. POPL: Principles of Programming Languages, 147–158.
Download
No fulltext has been uploaded. References only!
Conference Paper
| Published
Author
Gupta, AshutoshISTA;
Henzinger, Thomas AISTA ;
Majumdar, Ritankar S;
Rybalchenko, Andrey;
Xu, Ru-Gang
Abstract
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 programexecution. 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 feasibility. We illustrate the utility of our nontermination prover, called TNT, on several nontrivial examples, some of which require bit-level reasoning about integer representations.
Publishing Year
Date Published
2008-01-01
Publisher
ACM
Page
147 - 158
Conference
POPL: Principles of Programming Languages
IST-REx-ID
Cite this
Gupta A, Henzinger TA, Majumdar R, Rybalchenko A, Xu R. Proving non-termination. In: ACM; 2008:147-158. doi:10.1145/1328438.1328459
Gupta, A., Henzinger, T. A., Majumdar, R., Rybalchenko, A., & Xu, R. (2008). Proving non-termination (pp. 147–158). Presented at the POPL: Principles of Programming Languages, ACM. https://doi.org/10.1145/1328438.1328459
Gupta, Ashutosh, Thomas A Henzinger, Ritankar Majumdar, Andrey Rybalchenko, and Ru Xu. “Proving Non-Termination,” 147–58. ACM, 2008. https://doi.org/10.1145/1328438.1328459.
A. Gupta, T. A. Henzinger, R. Majumdar, A. Rybalchenko, and R. Xu, “Proving non-termination,” presented at the POPL: Principles of Programming Languages, 2008, pp. 147–158.
Gupta A, Henzinger TA, Majumdar R, Rybalchenko A, Xu R. 2008. Proving non-termination. POPL: Principles of Programming Languages, 147–158.
Gupta, Ashutosh, et al. Proving Non-Termination. ACM, 2008, pp. 147–58, doi:10.1145/1328438.1328459.
Link(s) to Main File(s)
Access Level
Closed Access