DeepAI AI Chat
Log In Sign Up

A Theoretical Study of (Full) Tabled Constraint Logic Programming

by   Joaquín Arias, et al.

Logic programming with tabling and constraints (TCLP, tabled constraint logic programming) has been shown to be more expressive and, in some cases, more efficient than LP, CLP, or LP with tabling. In this paper we provide insights regarding the semantics, correctness, completeness, and termination of top-down execution strategies for full TCLP, i.e., TCLP featuring entailment checking in the calls and in the answers. We present a top-down semantics for TCLP and show that it is equivalent to a fixpoint semantics. We study how the constraints that a program generates can effectively impact termination, even for constraint classes that are not constraint compact, generalizing previous results. We also present how different variants of constraint projection impact the correctness and completeness of TCLP implementations. All of the presented characteristics are implemented (or can be experimented with) in Mod TCLP, a modular framework for Tabled Constraint Logic Programming, part of the Ciao Prolog logic programming system.


page 1

page 2

page 3

page 4


Description, Implementation, and Evaluation of a Generic Design for Tabled CLP

Logic programming with tabling and constraints (TCLP, tabled constraint ...

On correctness and completeness of an n queens program

Thom Frühwirth presented a short, elegant and efficient Prolog program f...

An Assertion language for slicing Constraint Logic Languages

Constraint Logic Programming (CLP) is a language scheme for combining tw...

Half-checking propagators

Propagators are central to the success of constraint programming, that i...

Timed Soft Concurrent Constraint Programs: An Interleaved and a Parallel Approach

We propose a timed and soft extension of Concurrent Constraint Programmi...

Augmenting Stream Constraint Programming with Eventuality Conditions

Stream constraint programming is a recent addition to the family of cons...

Using Linear Constraints for Logic Program Termination Analysis

It is widely acknowledged that function symbols are an important feature...