-
A Transformation-based Implementation for CLP with Qualification and Proximity
Authors:
R. Caballero,
M. Rodriguez-Artalejo,
C. A. Romero-Diaz
Abstract:
Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme for Constraint Logic Programming. In a previous work we have proposed the SQCLP ({\em proximity-based qualified constraint logic programming}) scheme as a quit…
▽ More
Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme for Constraint Logic Programming. In a previous work we have proposed the SQCLP ({\em proximity-based qualified constraint logic programming}) scheme as a quite expressive extension of CLP with support for qualification values and proximity relations as generalizations of uncertainty values and similarity relations, respectively. In this paper we provide a transformation technique for transforming SQCLP programs and goals into semantically equivalent CLP programs and goals, and a practical Prolog-based implementation of some particularly useful instances of the SQCLP scheme. We also illustrate, by showing some simple---and working---examples, how the prototype can be effectively used as a tool for solving problems where qualification values and proximity relations play a key role. Intended use of SQCLP includes flexible information retrieval applications.
△ Less
Submitted 25 January, 2012;
originally announced January 2012.
-
A Generic Scheme for Qualified Constraint Functional Logic Progamming
Authors:
Rafael Caballero,
Mario Rodríguez-Artalejo,
Carlos A. Romero-Díaz
Abstract:
Qualification has been recently introduced as a generalization of uncertainty in the field of Logic Programming. In this report we investigate a more expressive language for First-Order Functional Logic Programming with Constraints and Qualification. We present a Rewriting Logic which characterizes the intended semantics of programs, and a prototype implementation based on a semantically correct p…
▽ More
Qualification has been recently introduced as a generalization of uncertainty in the field of Logic Programming. In this report we investigate a more expressive language for First-Order Functional Logic Programming with Constraints and Qualification. We present a Rewriting Logic which characterizes the intended semantics of programs, and a prototype implementation based on a semantically correct program transformation. Potential applications of the resulting language include flexible information retrieval. As a concrete illustration, we show how to write program rules to compute qualified answers for user queries concerning the books available in a given library.
△ Less
Submitted 11 January, 2011;
originally announced January 2011.
-
Fixpoint & Proof-theoretic Semantics for CLP with Qualification and Proximity
Authors:
Mario Rodríguez-Artalejo,
Carlos A. Romero-Díaz
Abstract:
Uncertainty in Logic Programming has been investigated during the last decades, dealing with various extensions of the classical LP paradigm and different applications. Existing proposals rely on different approaches, such as clause annotations based on uncertain truth values, qualification values as a generalization of uncertain truth values, and unification based on proximity relations. On the o…
▽ More
Uncertainty in Logic Programming has been investigated during the last decades, dealing with various extensions of the classical LP paradigm and different applications. Existing proposals rely on different approaches, such as clause annotations based on uncertain truth values, qualification values as a generalization of uncertain truth values, and unification based on proximity relations. On the other hand, the CLP scheme has established itself as a powerful extension of LP that supports efficient computation over specialized domains while keeping a clean declarative semantics. In this report we propose a new scheme SQCLP designed as an extension of CLP that supports qualification values and proximity relations. We show that several previous proposals can be viewed as particular cases of the new scheme, obtained by partial instantiation. We present a declarative semantics for SQCLP that is based on observables, providing fixpoint and proof-theoretical characterizations of least program models as well as an implementation-independent notion of goal solutions.
△ Less
Submitted 14 January, 2011; v1 submitted 10 September, 2010;
originally announced September 2010.
-
A Transformation-based Implementation for CLP with Qualification and Proximity
Authors:
Rafael Caballero,
Mario Rodríguez-Artalejo,
Carlos A. Romero-Díaz
Abstract:
Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme for Constraint Logic Programming. In a previous work we have proposed the SQCLP (proximity-based qualified constraint logic programming) scheme as a quite expr…
▽ More
Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme for Constraint Logic Programming. In a previous work we have proposed the SQCLP (proximity-based qualified constraint logic programming) scheme as a quite expressive extension of CLP with support for qualification values and proximity relations as generalizations of uncertainty values and similarity relations, respectively. In this paper we provide a transformation technique for transforming SQCLP programs and goals into semantically equivalent CLP programs and goals, and a practical Prolog-based implementation of some particularly useful instances of the SQCLP scheme. We also illustrate, by showing some simple-and working-examples, how the prototype can be effectively used as a tool for solving problems where qualification values and proximity relations play a key role. Intended use of SQCLP includes flexible information retrieval applications.
△ Less
Submitted 10 September, 2010;
originally announced September 2010.
-
Similarity-based Reasoning in Qualified Logic Programming
Authors:
Rafael Caballero,
Mario Rodríguez-Artalejo,
Carlos A. Romero-Díaz
Abstract:
Similarity-based Logic Programming (briefly, SLP ) has been proposed to enhance the LP paradigm with a kind of approximate reasoning which supports flexible information retrieval applications. This approach uses a fuzzy similarity relation R between symbols in the program's signature, while keeping the syntax for program clauses as in classical LP. Another recent proposal is the QLP(D) scheme for…
▽ More
Similarity-based Logic Programming (briefly, SLP ) has been proposed to enhance the LP paradigm with a kind of approximate reasoning which supports flexible information retrieval applications. This approach uses a fuzzy similarity relation R between symbols in the program's signature, while keeping the syntax for program clauses as in classical LP. Another recent proposal is the QLP(D) scheme for Qualified Logic Programming, an extension of the LP paradigm which supports approximate reasoning and more. This approach uses annotated program clauses and a parametrically given domain D whose elements qualify logical assertions by measuring their closeness to various users' expectations. In this paper we propose a more expressive scheme SQLP(R,D) which subsumes both SLP and QLP(D) as particular cases. We also show that SQLP(R,D) programs can be transformed into semantically equivalent QLP(D) programs. As a consequence, existing QLP(D) implementations can be used to give efficient support for similarity-based reasoning.
△ Less
Submitted 23 August, 2010;
originally announced August 2010.
-
A Generic Scheme for Qualified Logic Programming
Authors:
Mario Rodríguez-Artalejo,
Carlos A. Romero-Díaz
Abstract:
Uncertainty in Logic Programming has been investigated since about 25 years, publishing papers dealing with various approaches to semantics and different applications. This report is intended as a first step towards the investigation of qualified computations in Constraint Functional Logic Programming, including uncertain computations as a particular case. We revise an early proposal, namely van E…
▽ More
Uncertainty in Logic Programming has been investigated since about 25 years, publishing papers dealing with various approaches to semantics and different applications. This report is intended as a first step towards the investigation of qualified computations in Constraint Functional Logic Programming, including uncertain computations as a particular case. We revise an early proposal, namely van Emden's Quantitative Logic Programming, and we improve it in two ways. Firstly, we generalize van Emden's QLP to a generic scheme QLP(D) parameterized by any given Qualification Domain D, which must be a lattice satisfying certain natural axioms. We present several interesting instances for D, one of which corresponds to van Emden's QLP. Secondly, we generalize van Emden's results by providing stronger ones, concerning both semantics and goal solving. We present Qualified SLD Resolution over D, a sound and strongly complete goal solving procedure for QLP(D), which is applicable to open goals and can be efficiently implemented using CLP technology over any constraint domain CD able to deal with qualification constraints over D. We have developed a prototype implementation of some instances of the QLP(D) scheme (including van Emden's QLP) on top of the CFLP system TOY.
△ Less
Submitted 23 August, 2010;
originally announced August 2010.
-
A Declarative Semantics for CLP with Qualification and Proximity
Authors:
Mario Rodríguez-Artalejo,
Carlos A. Romero-Díaz
Abstract:
Uncertainty in Logic Programming has been investigated during the last decades, dealing with various extensions of the classical LP paradigm and different applications. Existing proposals rely on different approaches, such as clause annotations based on uncertain truth values, qualification values as a generalization of uncertain truth values, and unification based on proximity relations. On the o…
▽ More
Uncertainty in Logic Programming has been investigated during the last decades, dealing with various extensions of the classical LP paradigm and different applications. Existing proposals rely on different approaches, such as clause annotations based on uncertain truth values, qualification values as a generalization of uncertain truth values, and unification based on proximity relations. On the other hand, the CLP scheme has established itself as a powerful extension of LP that supports efficient computation over specialized domains while keeping a clean declarative semantics. In this paper we propose a new scheme SQCLP designed as an extension of CLP that supports qualification values and proximity relations. We show that several previous proposals can be viewed as particular cases of the new scheme, obtained by partial instantiation. We present a declarative semantics for SQCLP that is based on observables, providing fixpoint and proof-theoretical characterizations of least program models as well as an implementation-independent notion of goal solutions.
△ Less
Submitted 21 July, 2010;
originally announced July 2010.
-
On the Cooperation of the Constraint Domains H, R and FD in CFLP
Authors:
S. Estévez-Martín,
T. Hortalá-González,
Rodríguez-Artalejo,
R. del Vado-Vírseda,
F. Sáenz-Pérez,
A. J. Fernández
Abstract:
This paper presents a computational model for the cooperation of constraint domains and an implementation for a particular case of practical importance. The computational model supports declarative programming with lazy and possibly higher-order functions, predicates, and the cooperation of different constraint domains equipped with their respective solvers, relying on a so-called Constraint Fun…
▽ More
This paper presents a computational model for the cooperation of constraint domains and an implementation for a particular case of practical importance. The computational model supports declarative programming with lazy and possibly higher-order functions, predicates, and the cooperation of different constraint domains equipped with their respective solvers, relying on a so-called Constraint Functional Logic Programming (CFLP) scheme. The implementation has been developed on top of the CFLP system TOY, supporting the cooperation of the three domains H, R and FD, which supply equality and disequality constraints over symbolic terms, arithmetic constraints over the real numbers, and finite domain constraints over the integers, respectively. The computational model has been proved sound and complete w.r.t. the declarative semantics provided by the $CFLP$ scheme, while the implemented system has been tested with a set of benchmarks and shown to behave quite efficiently in comparison to the closest related approach we are aware of.
To appear in Theory and Practice of Logic Programming (TPLP)
△ Less
Submitted 14 April, 2009;
originally announced April 2009.
-
Constraint Logic Programming with Hereditary Harrop Formula
Authors:
Javier Leach,
Susana Nieva,
Mario Rodriguez-Artalejo
Abstract:
Constraint Logic Programming (CLP) and Hereditary Harrop formulas (HH) are two well known ways to enhance the expressivity of Horn clauses. In this paper, we present a novel combination of these two approaches. We show how to enrich the syntax and proof theory of HH with the help of a given constraint system, in such a way that the key property of HH as a logic programming language (namely, the…
▽ More
Constraint Logic Programming (CLP) and Hereditary Harrop formulas (HH) are two well known ways to enhance the expressivity of Horn clauses. In this paper, we present a novel combination of these two approaches. We show how to enrich the syntax and proof theory of HH with the help of a given constraint system, in such a way that the key property of HH as a logic programming language (namely, the existence of uniform proofs) is preserved. We also present a procedure for goal solving, showing its soundness and completeness for computing answer constraints. As a consequence of this result, we obtain a new strong completeness theorem for CLP that avoids the need to build disjunctions of computed answers, as well as a more abstract formulation of a known completeness theorem for HH.
△ Less
Submitted 26 April, 2004;
originally announced April 2004.
-
A General Framework For Lazy Functional Logic Programming With Algebraic Polymorphic Types
Authors:
Puri Arenas-Sanchez,
Mario Rodriguez-Artalejo
Abstract:
We propose a general framework for first-order functional logic programming, supporting lazy functions, non-determinism and polymorphic datatypes whose data constructors obey a set C of equational axioms. On top of a given C, we specify a program as a set R of C-based conditional rewriting rules for defined functions. We argue that equational logic does not supply the proper semantics for such p…
▽ More
We propose a general framework for first-order functional logic programming, supporting lazy functions, non-determinism and polymorphic datatypes whose data constructors obey a set C of equational axioms. On top of a given C, we specify a program as a set R of C-based conditional rewriting rules for defined functions. We argue that equational logic does not supply the proper semantics for such programs. Therefore, we present an alternative logic which includes C-based rewriting calculi and a notion of model. We get soundness and completeness for C-based rewriting w.r.t. models, existence of free models for all programs, and type preservation results. As operational semantics, we develop a sound and complete procedure for goal solving, which is based on the combination of lazy narrowing with unification modulo C. Our framework is quite expressive for many purposes, such as solving action and change problems, or realizing the GAMMA computation model.
△ Less
Submitted 24 April, 2004;
originally announced April 2004.