Logic programming with function symbols: Checking termination of bottom-up evaluation through program adornments

Recent years have witnessed an increasing interest in enhancing answer set solvers by allowing function symbols. Since the introduction of function symbols makes common inference tasks undecidable, research has focused on identifying classes of programs allowing only a restricted use of function symbols while ensuring decidability of common inference tasks. Finitely-ground programs, introduced in Calimeri et al. (2008), are guaranteed to admit a finite number of stable models with each of them of finite size. Stable models of such programs can be computed and thus common inference tasks become decidable. Unfortunately, checking whether a program is finitely-ground is semi-decidable. This has led to several decidable criteria, called termination criteria, providing sufficient conditions for a program to be finitely-ground. This paper presents a new technique that, used in conjunction with current termination criteria, allows us to detect more programs as finitely-ground. Specifically, the proposed technique takes a logic program P and transforms it into an adorned program P with the aim of applying termination criteria to P rather than P. The transformation is sound in that if the adorned program satisfies a certain termination criterion, then the original program is finitely-ground. Importantly, applying termination criteria to adorned programs rather than the original ones strictly enlarges the class of programs recognized as finitely-ground.

[1]  Piero A. Bonatti,et al.  On Finitely Recursive Programs , 2007, ICLP.

[2]  Jürgen Giesl,et al.  The Dependency Triple Framework for Termination of Logic Programs , 2009, LOPSTR.

[3]  John P. Gallagher,et al.  Termination analysis of logic programs through combination of type-based norms , 2007, TOPL.

[4]  Sergio Greco,et al.  On the Termination of Logic Programs with Function Symbols , 2012, ICLP.

[5]  Danny De Schreye,et al.  Termination of Logic Programs: The Never-Ending Story , 1994, J. Log. Program..

[6]  Jürgen Giesl,et al.  Automated termination analysis for logic programs with cut , 2010, Theory Pract. Log. Program..

[7]  Giovambattista Ianni,et al.  Computable Functions in ASP: Theory and Implementation , 2008, ICLP.

[8]  Sergio Greco,et al.  Chase termination , 2010, Proc. VLDB Endow..

[9]  Georg Lausen,et al.  On Chase Termination Beyond Stratification , 2009, Proc. VLDB Endow..

[10]  Germán Vidal,et al.  Termination of narrowing via termination of rewriting , 2010, Applicable Algebra in Engineering, Communication and Computing.

[11]  Hans Zantema,et al.  Total termination of term rewriting , 1993, Applicable Algebra in Engineering, Communication and Computing.

[12]  Alin Deutsch,et al.  The chase revisited , 2008, PODS.

[13]  Hans Zantema,et al.  Termination of Term Rewriting by Semantic Labelling , 1995, Fundam. Informaticae.

[14]  Jürgen Giesl,et al.  Termination of term rewriting using dependency pairs , 2000, Theor. Comput. Sci..

[15]  Bruno Marnette,et al.  Generalized schema-mappings: from termination to tractability , 2009, PODS.

[16]  Jürgen Giesl,et al.  Automated termination proofs for logic programs by term rewriting , 2008, TOCL.

[17]  Yuliya Lierler,et al.  One More Decidable Class of Finitely Ground Programs , 2009, ICLP.

[18]  Aart Middeldorp,et al.  Root-Labeling , 2008, RTA.

[19]  Michael Gelfond,et al.  Classical negation in logic programs and disjunctive databases , 1991, New Generation Computing.

[20]  Jürgen Giesl,et al.  Termination Analysis of Logic Programs Based on Dependency Graphs , 2007, LOPSTR.

[21]  Enno Ohlebusch,et al.  Termination of Logic Programs: Transformational Methods Revisited , 2001, Applicable Algebra in Engineering, Communication and Computing.

[22]  Ronald Fagin,et al.  Data exchange: semantics and query answering , 2005, Theor. Comput. Sci..

[23]  Boris Motik,et al.  Acyclicity Conditions and their Application to Query Answering in Description Logics , 2012, KR.

[24]  Hans Zantema,et al.  Termination of Term Rewriting: Interpretation and Type Elimination , 1994, J. Symb. Comput..

[25]  Hans Zantema,et al.  Matrix Interpretations for Proving Termination of Term Rewriting , 2006, Journal of Automated Reasoning.

[26]  Sergio Greco,et al.  Incomplete Data and Data Dependencies in Relational Databases , 2012, Incomplete Data and Data Dependencies in Relational Databases.

[27]  Martin Gebser,et al.  GrinGo : A New Grounder for Answer Set Programming , 2007, LPNMR.

[28]  Danny De Schreye,et al.  Non-termination analysis of logic programs with integer arithmetics , 2011, Theory Pract. Log. Program..

[29]  Piero A. Bonatti,et al.  Reasoning with infinite stable models , 2001, Artif. Intell..

[30]  Peter J. Stuckey,et al.  Testing for Termination with Monotonicity Constraints , 2005, ICLP.

[31]  Tommi Syrjänen Omega-Restricted Logic Programs , 2001, LPNMR.

[32]  Sergio Greco,et al.  Stratification criteria and rewriting techniques for checking chase termination , 2011, Proc. VLDB Endow..

[33]  Giovambattista Ianni,et al.  Enhancing ASP by Functions: Decidable Classes and Implementation Techniques , 2010, AAAI.

[34]  Sergio Greco,et al.  Bounded Programs: A New Decidable Class of Logic Programs with Function Symbols , 2013, IJCAI.

[35]  Mario Alviano,et al.  Disjunctive ASP with functions: Decidable queries and effective computation , 2010, Theory Pract. Log. Program..

[36]  Sebastian Rudolph,et al.  Extending Decidable Existential Rules by Joining Acyclicity and Guardedness , 2011, IJCAI.

[37]  Krishnendu Chatterjee,et al.  Finitary winning in ω-regular games , 2009, TOCL.

[38]  Massimo Marchiori Proving Existential Termination of Normal Logic Programs , 1996, AMAST.