2012
DOI: 10.1007/978-3-642-29822-6_11
|View full text |Cite
|
Sign up to set email alerts
|

A General Implementation Framework for Tabled CLP

Abstract: Abstract. This paper describes a framework to combine tabling evaluation and constraint logic programming (TCLP). While this combination has been studied previously from a theoretical point of view and some implementations exist, they either suffer from a lack of efficiency, flexibility, or generality, or have inherent limitations with respect to the programs they can execute to completion (either with success or failure). Our framework addresses these issues directly, including the ability to check for answer… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
17
0

Year Published

2013
2013
2019
2019

Publication Types

Select...
4
2

Relationship

4
2

Authors

Journals

citations
Cited by 7 publications
(17 citation statements)
references
References 24 publications
0
17
0
Order By: Relevance
“…However, the integration of tabling and CLP makes it possible to execute the dist/3, right, using constraint entailment [4] to suspend calls which are more particular than previous calls, and to keep only the most general answers. The query ?-D #< K, dist(a,Y,D) terminates under TCLP because by placing the constraint D #< K before dist(a,Y,D), the search is pruned when the values in D are larger than or equal to K.…”
Section: Background: Tabling and Constraintsmentioning
confidence: 99%
“…However, the integration of tabling and CLP makes it possible to execute the dist/3, right, using constraint entailment [4] to suspend calls which are more particular than previous calls, and to keep only the most general answers. The query ?-D #< K, dist(a,Y,D) terminates under TCLP because by placing the constraint D #< K before dist(a,Y,D), the search is pruned when the values in D are larger than or equal to K.…”
Section: Background: Tabling and Constraintsmentioning
confidence: 99%
“…Finally, we write the CLP clauses defining the predicate unsafe that holds if and only if there exists an execution of the program P that leads from an initial configuration to an error configuration. 10. unsafe :-initConf(X), reach(X).…”
Section: Encoding Safety Problems Of Imperative Programs Using Clpmentioning
confidence: 99%
“…Instead, consider an IHC solver following the approach of Failure Tabled CLP (FTCLP) [23]. In a nutshell, FTCLP augments tabled CLP [10,12] by computing interpolants whenever a failed derivation CLP constraints for Figure 1 is encountered during the top-down evaluation of the CLP program. If a call of predicate p has been fully executed and has not produced any solution then its interpolants denote the conditions under which the execution of p will always lead to failure.…”
Section: An Introductory Examplementioning
confidence: 99%
“…Although we currently support only variant tabling under swapping evaluation, Ciao can combine tabled LP and CLP [4], and work to combine them with once/1 under swapping evaluation is underway. The resulting system can be applied, for example, to a declarative and efficient formulation of optimization.…”
Section: Application To Minimization Problemsmentioning
confidence: 99%
“…Also, variant tabling is assumed, i.e., a call is considered a consumer iff it is identical, modulo variable renaming, to a previous generator. Adapting the proposed solutions to work under subsumptive tabling, which considers a goal A to be a consumer of a goal B if B θ ≡ A for some substitution θ (or, in general, for tabling under constraints where consumers are defined under the notion of entailment [4]) is left for future work. We assume some familiarity with the WAM [5] and proper tabling implementations.…”
Section: Introductionmentioning
confidence: 99%