Kovács, L., & Varonka, A. (2023). What Else is Undecidable About Loops? In R. Glück, L. Santocanale, & M. Winter (Eds.), Relational and Algebraic Methods in Computer Science. RAMiCS 2023 (pp. 176–193). Springer. https://doi.org/10.1007/978-3-031-28083-2_11
20th International Conference on Relational and Algebraic Methods in Computer Science
en
Event date:
3-Apr-2023 - 6-Apr-2023
-
Event place:
Augsburg, Germany
-
Number of Pages:
18
-
Publisher:
Springer
-
Peer reviewed:
Yes
-
Keywords:
program analysis; invariants
en
symbolic computation
-
Abstract:
We address algebraic aspects of invariant generation and proving termination, two central questions of program analysis, for non-deterministic loops with polynomial updates. Our focus is sketching the boundary of (un-)decidability for both problems between different classes of programs. The first main contribution of this work is related to the question raised by Braverman in 2006: “How much non-determinism can be introduced in a linear loop before termination becomes undecidable?” We show that termination of loops with a purely non-deterministic choice between linear updates is undecidable in the presence of linear inequality loop conditions. In the context of invariants, an algorithm is known that computes all polynomial relations among variables of loops with multiple linear updates. At the same time, allowing polynomial assignments of higher degrees was shown to result in algorithmic unsolvability. We highlight that negative results in fact do not exploit general polynomial updates. We show that no algorithm can find all polynomial relations for programs as soon as quadratic updates or updates guarded by affine equalities are involved.
en
Project title:
Automated Reasoning with Theories and Induction for Software Technologies: 101002685 (ERC Consolidator Grant 20200) Distribution Recovery for Invariant Generation of Probabilistic Programs: ICT19-018 (WWTF Wiener Wissenschafts-, Forschung und Technologiefonds) Logics for Computer Science Program at TU Wien: 101034440 (European Commission)