Termination Proofs for Logic Programs with Tabling
Sofie Verbaeten, Danny De Schreye, Konstantinos Sagonas
Abstract
Tabled logic programming is receiving increasing attention in the Logic Programming community. It avoids many of the shortcomings of SLD execution and provides a more flexible and often extremely efficient execution mechanism for logic programs. In particular, tabled execution of logic programs terminates more often than execution based on SLD-resolution. In this article, we introduce two notions of universal termination of logic programming with Tabling: quasi-termination and (the stronger notion of) LG-termination. We present sufficient conditions for these two notions of termination, namely quasi-acceptability and LG-acceptability, and we show that these conditions are also necessary in case the tabling is well-chosen. Starting from these conditions, we give modular termination proofs, i.e., proofs capable of combining termination proofs of separate programs to obtain termination proofs of combined programs. Finally, in the presence of mode information, we state sufficient conditions which form the basis for automatically proving termination in a constraint-based way.
Create a lesson
Related papers
Beyond LLM Judge: Mechanical Verification for Agentic Autoformalization
Anna Mei, Michael R. Douglas
Finite Satisfiability of Two-Variable Logic with Arbitrarily Many Successors
Artur Jeż, Jakub Michaliszyn, Piotr Witkowski
A Non-Dichotomy for CSPs of Stable ω-Categorical Structures
Manuel Bodirsky, David Bradley-Williams, Ehud Hrushovski et al.
Non-Wellfounded and Cyclic Proofs for LTL: A Syntactic Correspondence with Linear Nested Sequents
Tim S. Lyon, Lukas Zenger
Finite-on-Top-of-Temporal CSPs in Fixed-Point Logic
Manuel Bodirsky, Philipp A. Grzywaczyk
The Complexity of Verifying Strategic Abilities in Succinct Multiagent Systems
Yifan He, Munyque Mittelmann, Aniello Murano et al.