DynamiTe: dynamic termination and non-termination proofs
Ton Chanh Le, Timos Antonopoulos, Parisa Fathololumi, Eric Koskinen, ThanhVu Nguyen
摘要
There is growing interest in termination reasoning for non-linear programs and, meanwhile, recent dynamic strategies have shown they are able to infer invariants for such challenging programs. These advances led us to hypothesize that perhaps such dynamic strategies for non-linear invariants could be adapted to learn recurrent sets (for non-termination) and/or ranking functions (for termination).
In this paper, we exploit dynamic analysis and draw termination and non-termination as well as static and dynamic strategies closer together in order to tackle non-linear programs. For termination, our algorithm infers ranking functions from concrete transitive closures, and, for non-termination, the algorithm iteratively collects executions and dynamically learns conditions to refine recurrent sets. Finally, we describe an integrated algorithm that allows these algorithms to mutually inform each other, taking counterexamples from a failed validation in one endeavor and crossing both the static/dynamic and termination/non-termination lines, to create new execution samples for the other one.
We have implemented these algorithms in a new tool called DynamiTe. For non-linear programs, there are currently no SV-COMP termination benchmarks so we created new sets of 38 terminating and 39 nonterminating programs. Our empirical evaluation shows that we can effectively guess (and sometimes even validate) ranking functions and recurrent sets for programs with non-linear behaviors. Furthermore, we show that counterexamples from one failed validation can be used to generate executions for a dynamic analysis of the opposite property. Although we are focused on non-linear programs, as a point of comparison, we compare DynamiTe's performance on linear programs with that of the state-of-the-art tool, Ultimate. Although DynamiTe is an order of magnitude slower it is nonetheless somewhat competitive and sometimes finds ranking functions where Ultimate was unable to. Ultimate cannot, however, handle the non-linear programs in our new benchmark suite.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper10
- Learning Probabilistic Termination ProofsAlessandro Abate, Mirco Giacobbe, Diptarko RoyCAV 2021 · 被引用 26 次
- Dynaplex: analyzing program complexity using dynamically inferred recurrence relationsDidier Ishimwe, KimHao Nguyen, ThanhVu NguyenOOPSLA 2021 · 被引用 16 次
- Neural termination analysisMirco Giacobbe, Daniel Kroening, Julian ParsertFSE 2022 · 被引用 16 次
- Large-scale analysis of non-termination bugs in real-world OSS projectsXiuhan Shi, Xiaofei Xie, Yi Li, Yao Zhang 等FSE 2022 · 被引用 12 次
- Non-termination Proving at ScaleAzalea Raad, Julien Vanegue, Peter W. O'HearnOOPSLA 2024 · 被引用 10 次
它引用的顶会 Paper2
相关 Paper
- Data-driven Recurrent Set Learning For Non-termination AnalysisZhilei Han, Fei HeICSE 2023 · 被引用 1 次
- Decision Tree Learning in CEGIS-Based Termination AnalysisSatoshi Kura, Hiroshi Unno, Ichiro HasuoCAV 2021 · 被引用 6 次
- Accurate Inference of Termination ConditionsBiting Huang, Zhilei Han, Fei HeICSE 2026
- Sound and Complete Certificates for Quantitative Termination Analysis of Probabilistic ProgramsKrishnendu Chatterjee, Amir Kafshdar Goharshady, Tobias Meggendorfer, Dorde ZikelicCAV 2022 · 被引用 30 次
- Recurrence Sets for Proving Fair Non-termination under Axiomatic Memory Consistency ModelsThomas Haas, Roland Meyer, Hernán Ponce de León, Andrés Lomelí GarduñoPOPL 2026 · 被引用 2 次
