Memorias de investigación
Artículos en revistas:
Description, Implementation, and Evaluation of a Generic Design for Tabled CLP (JCR-Q1)
Año:2019

Áreas de investigación
  • Ingenierías

Datos
Descripción
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 + tabling. Previous designs of TCLP systems did not fully use entailment to determine call / answer subsumption and did not provide a simple and well-documented interface to facilitate the integration of constraint solvers in existing tabling systems. We study the role of projection and entailment in the termination, soundness and completeness of TCLP systems, and present the design and an experimental evaluation of Mod TCLP, a framework that eases the integration of additional constraint solvers. Mod TCLP views constraint solvers as clients of the tabling system, which is generic w.r.t. the solver and only requires a clear interface from the latter. We validate our design by integrating four constraint solvers: a previously existing constraint solver for difference constraints, written in C; the standard versions of Holzbaur's CLP(Q) and CLP(R), written in Prolog; and a new constraint solver for equations over finite lattices. We evaluate the performance of our framework in several benchmarks using the aforementioned constraint solvers. Mod TCLP is developed in Ciao Prolog, a robust, mature, next-generation Prolog system.
Internacional
Si
JCR del ISI
Si
Título de la revista
Theory And Practice of Logic Programming
ISSN
1471-0684
Factor de impacto JCR
0,875
Información de impacto
Datos JCR del año 2017
Volumen
19
DOI
10.1017/S1471068418000571
Número de revista
3
Desde la página
412
Hasta la página
448
Mes
MAYO
Ranking

Esta actividad pertenece a memorias de investigación

Participantes

Grupos de investigación, Departamentos, Centros e Institutos de I+D+i relacionados
  • Creador: Grupo de Investigación: Computación lógica, Lenguajes, Implementación y Paralelismo (CLIP)
  • Departamento: Lenguajes y Sistemas Informáticos e Ingeniería de Software