🤖 AI Summary
This paper addresses the termination analysis of Linear Constraint Programs (LCPs)—a fundamentally challenging problem due to the undecidability of the halting problem for general numerical programs. To tackle LCPs with numerical variables and linear transition constraints, the authors develop a systematic analytical framework. Methodologically, they unify decidable techniques—including ranking functions and disjunctive well-founded transition invariants—to characterize their expressive power and algorithmic complexity boundaries; additionally, they introduce the first sound and complete non-termination witness generation mechanism, yielding verifiable counterexamples for undecidable cases. Through integrated modeling, complexity classification, and trade-off analysis among techniques, the work precisely delineates the applicability conditions and theoretical limits of existing approaches. The contributions significantly advance both the theoretical foundations and practical applicability of LCP termination 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.