Termination Analysis of Linear-Constraint Programs
Amir M. Ben-Amram, Samir Genaim, Joël Ouaknine, James Worrell
TL;DR
This survey addresses termination analysis for linear-constraint programs, where numerical variables evolve under linear transitions. It surveys three core approaches: ranking functions (LRFs/LLRFs and their variants), disjunctive well-founded invariants (DTIs) for decomposing proofs across multiple cycles, and non-termination witnesses (recurrent sets) to certify infinite behavior. It presents decidability landscapes across real, rational, and integer domains, highlighting complete algorithms for affine single-path loops, partial results for SLC/MLC, and undecidability for broader multi-path models. The work emphasizes algorithmic trade-offs between expressive power and complexity, covering polyhedral techniques, invariant synthesis, and various specialized loop classes (octagonal, gap/monotonicity constraints, etc.), while noting open problems and the limitations of current methods. Collectively, these insights underpin practical termination analysis tools and guide future theoretical advances in linear-constraint programming analysis.
Abstract
This Survey provides an overview of techniques in termination analysis for programs with numerical variables and transitions defined by linear constraints. This subarea of program analysis is challenging due to the existence of undecidable problems, and this Survey systematically explores approaches that mitigate this inherent difficulty. These include foundational decidability results, the use of ranking functions, and disjunctive well-founded transition invariants. The Survey also discusses non-termination witnesses, used to prove that a program will not halt. We examine the algorithmic and complexity aspects of these methods, showing how different approaches offer a trade-off between expressive power and computational complexity. The Survey does not discuss how termination analysis is performed on real-world programming languages, nor does it consider more expressive abstract models that include non-linear arithmetic, probabilistic choice, or term rewriting systems.
