The DOI matches its Crossref record; 18 of the 18 references it cites were found in a registry or an index.
Termination proofs for systems code
Abstract
Program termination is central to the process of ensuring that systems code can always react. We describe a new program termination prover that performs a path-sensitive and context-sensitive program analysis and provides capacity for large program fragments (i.e. more than 20,000 lines of code) together with support for programming language features such as arbitrarily nested loops, pointers, function-pointers, side-effects, etc.We also present experimental results on device driver dispatch routines from theWindows operating system. The most distinguishing aspect of our tool is how it shifts the balance between the two tasks of constructing and respectively checking the termination argument. Checking becomes the hard step. In this paper we show how we solve the corresponding challenge of checking with binary reachability analysis.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
On computable numbers, with an application to the entscheidungsproblem
Turing, A. M. (1937) · Proceedings of the London Mathematical Society · doi:10.1112/plms/s2-42.1.230 · Cited by 8,283
A Tool for Checking ANSI-C Programs
Clarke, E., Kroening, D., & Lerda, F. (2004) · Lecture Notes in Computer Science · doi:10.1007/978-3-540-24730-2_15 · Cited by 1,408
Assigning meanings to programs
Floyd, R. W. (1967) · Proceedings of Symposia in Applied Mathematics · doi:10.1090/psapm/019/0235771 · Cited by 1,408
Assigning Meanings to Programs
Floyd, R. W. (1993) · Studies in Cognitive Systems · doi:10.1007/978-94-011-1793-7_4 · Cited by 1,079
Temporal Verification of Reactive Systems: Safety
Manna, Z., & Pnueli, A. (1995) · Medical Entomology and Zoology · Cited by 947
Automatic predicate abstraction of C programs
Ball, T., Majumdar, R., Millstein, T., & Rajamani, S. K. (2012) · ACM SIGPLAN Notices · doi:10.1145/2442776.2442783 · Cited by 694
A static analyzer for large safety-critical software
Blanchet, B., Cousot, P., Cousot, R., Feret, J., Mauborgne, L., Miné, A., Monniaux, D., & Rival, X. (2003) · ACM SIGPLAN Notices · doi:10.1145/780822.781153 · Cited by 573
On Computable Numbers, with an Application to the Entscheidungsproblem (1936)
Turing, A. M. (2021) · Ideas That Created the Future · doi:10.7551/mitpress/12274.003.0008 · Cited by 521
Henzinger, T. A., Jhala, R., Majumdar, R., & McMillan, K. L. (2014) · ACM SIGPLAN Notices · doi:10.1145/2641638.2641655 · Cited by 475
Thorough static analysis of device drivers
Ball, T., Bounimova, E., Cook, B., Levin, V., Lichtenberg, J., McGarvey, C., Ondrusek, B., Rajamani, S. K., & Ustuner, A. (2006) · Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006 · doi:10.1145/1217935.1217943 · Cited by 371
Self-citation
Cited by
A survey of symbolic execution techniques
Baldoni, R., Coppa, E., D’elia, D. C., Demetrescu, C., & Finocchi, I. (2019) · ACM Computing Surveys · doi:10.1145/3182657 · Cited by 708
Thorough static analysis of device drivers
Ball, T., Bounimova, E., Cook, B., Levin, V., Lichtenberg, J., McGarvey, C., Ondrusek, B., Rajamani, S. K., & Ustuner, A. (2006) · Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006 · doi:10.1145/1217935.1217943 · Cited by 371
Self-citation
Metadata
- Authors
- Cook, B., Podelski, A., & Rybalchenko, A.
- Venue
- ACM SIGPLAN Notices
- Published
- 2006-06-11
- Volume
- 41
- Issue
- 6
- Pages
- 415-426
- ISSN
- 0362-1340 (ISSN-L)
- 1558-1160
- OpenAlex
- W2124909257
- Cited by
- 317
- References
- 18
- FWCI
- 29.47
- Type
- journal article
- Language
- en
- Open access
- closed
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review
How to cite
Cite CoChat for the checks on this page, and the paper for its own findings.
- This page
- CoChat. (2026). Citation check: Termination proofs for systems code. https://app.cochat.ai/papers/10.1145/1133255.1134029
- The paper
- Cook, B., Podelski, A., & Rybalchenko, A. (2006). Termination proofs for systems code. ACM SIGPLAN Notices. https://doi.org/10.1145/1133255.1134029
Data sources
Bibliographic data: Semantic Scholar, OpenAlex, Crossref.
Contains information from the Semantic Scholar Academic Graph Datasets, made available under the ODC Attribution License (ODC-BY 1.0).
Semantic Scholar’s data is described in: Kinney, R., et al. (2023). The Semantic Scholar Open Data Platform. arXiv:2301.10140.