Termination analysis without the tears
Shaowei Zhu, Zachary Kincaid
摘要
Determining whether a given program terminates is the quintessential undecidable problem. Algorithms for termination analysis may be classified into two groups: (1) algorithms with strong behavioral guarantees that work in limited circumstances (e.g., complete synthesis of linear ranking functions for polyhedral loops), and (2) algorithms that are widely applicable, but have weak behavioral guarantees (e.g., Terminator). This paper investigates the space in between: how can we design practical termination analyzers with useful behavioral guarantees?
This paper presents a termination analysis that is both compositional (the result of analyzing a composite program is a function of the analysis results of its components) and monotone ("more information into the analysis yields more information out"). The paper has two key contributions. The first is an extension of Tarjan's method for solving path problems in graphs to solve infinite path problems. This provides a foundation upon which to build compositional termination analyses. The second is a collection of monotone conditional termination analyses based on this framework. We demonstrate that our tool ComPACT (Compositional and Predictable Analysis for Conditional Termination) is competitive with state-of-the-art termination tools while providing stronger behavioral guarantees.
• Software and its engineering → Automated static analysis.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper13
- Sound and Complete Proof Rules for Probabilistic TerminationRupak Majumdar, V. R. SathiyanarayanaPOPL 2025 · 被引用 16 次
- Neural termination analysisMirco Giacobbe, Daniel Kroening, Julian ParsertFSE 2022 · 被引用 16 次
- Exploiting the Sparseness of Control-Flow and Call Graphs for Efficient and On-Demand Algebraic Program AnalysisGiovanna Kobus Conrado, Amir Kafshdar Goharshady, Kerim Kochekov, Yun Chen Tsai 等OOPSLA 2023 · 被引用 12 次
- Solvable Polynomial Ideals: The Ideal Reflection for Program AnalysisJohn Cyphert, Zachary KincaidPOPL 2024 · 被引用 11 次
- Using graph neural networks for program terminationYoav Alon, Cristina DavidFSE 2022 · 被引用 9 次
相关 Paper
- Non-termination Proving at ScaleAzalea Raad, Julien Vanegue, Peter W. O'HearnOOPSLA 2024 · 被引用 10 次
- A Categorical Basis for Robust Program AnalysisZachary Kincaid, Shaowei ZhuPLDI 2026
- Sound and Complete Certificates for Quantitative Termination Analysis of Probabilistic ProgramsKrishnendu Chatterjee, Amir Kafshdar Goharshady, Tobias Meggendorfer, Dorde ZikelicCAV 2022 · 被引用 30 次
- Termination analysis for evolving programs: an incremental approach by reusing certified modulesFei He, Jitao HanOOPSLA 2020 · 被引用 3 次
- Sound Termination and Non-termination Analysis of C Programs with Bit-Precise Bounded Semantics and Advanced ConstructsNegar Fathi, Hiroshi Unno, Tachio Terauchi, Rahul PurandareFSE 2026
