A Calculus for Modular Loop Acceleration and Non-Termination Proofs
Florian Frohn, Carsten Fuhs

TL;DR
This paper introduces a modular calculus that combines various loop acceleration techniques, including new methods, to improve proofs of program safety, reachability, runtime bounds, and non-termination, demonstrated through empirical evaluation.
Contribution
It presents a novel modular calculus for combining multiple acceleration techniques, including new ones, to enhance non-termination proofs and loop analysis.
Findings
Effective combination of acceleration techniques demonstrated
New acceleration methods integrated seamlessly into the calculus
Empirical results confirm applicability for loop acceleration and non-termination proof
Abstract
Loop acceleration can be used to prove safety, reachability, runtime bounds, and (non-)termination of programs. To this end, a variety of acceleration techniques has been proposed. However, so far all of them have been monolithic, i.e., a single loop could not be accelerated using a combination of several different acceleration techniques. In contrast, we present a calculus that allows for combining acceleration techniques in a modular way and we show how to integrate many existing acceleration techniques into our calculus. Moreover, we propose two novel acceleration techniques that can be incorporated into our calculus seamlessly. Some of these acceleration techniques apply only to non-terminating loops. Thus, combining them with our novel calculus results in a new, modular approach for proving non-termination. An empirical evaluation demonstrates the applicability of our approach,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
