Results 1  10
of
35
Constraint Logic Programming: A Survey
"... Constraint Logic Programming (CLP) is a merger of two declarative paradigms: constraint solving and logic programming. Although a relatively new field, CLP has progressed in several quite different directions. In particular, the early fundamental concepts have been adapted to better serve in differe ..."
Abstract

Cited by 771 (23 self)
 Add to MetaCart
Constraint Logic Programming (CLP) is a merger of two declarative paradigms: constraint solving and logic programming. Although a relatively new field, CLP has progressed in several quite different directions. In particular, the early fundamental concepts have been adapted to better serve in different areas of applications. In this survey of CLP, a primary goal is to give a systematic description of the major trends in terms of common fundamental concepts. The three main parts cover the theory, implementation issues, and programming for applications.
Rules and Strategies for Transforming Functional and Logic Programs
 ACM Computing Surveys
, 1996
"... We present an overview of the program transformation methodology, focusing our attention on the socalled `rules + strategies' approach in the case of functional and logic programs. The paper is intended to offer an introduction to the subject. The various techniques we present are illustrated via s ..."
Abstract

Cited by 76 (4 self)
 Add to MetaCart
We present an overview of the program transformation methodology, focusing our attention on the socalled `rules + strategies' approach in the case of functional and logic programs. The paper is intended to offer an introduction to the subject. The various techniques we present are illustrated via simple examples. A preliminary version of this report has been published in: Moller, B., Partsch, H., and Schuman, S. (eds.): Formal Program Development. Lecture Notes in Computer Science 755, Springer Verlag (1993) 263304. Also published in: ACM Computing Surveys, Vol 28, No. 2, June 1996. 3 1 Introduction The program transformation approach to the development of programs has first been advocated by [BurstallDarlington 77], although the basic ideas were already presented in previous papers by the same authors [Darlington 72, BurstallDarlington 75]. In that approach the task of writing a correct and efficient program is realized in two phases: the first phase consists in writing an in...
A flexible framework for defeasible logics
 In Proc. American National Conference on Artificial Intelligence (AAAI2000
, 2000
"... Logics for knowledge representation suffer from overspecialization: while each logic may provide an ideal representation formalism for some problems, it is less than optimal for others. A solution to this problem is to choose from several logics and, when necessary, combine the representations. In g ..."
Abstract

Cited by 56 (47 self)
 Add to MetaCart
Logics for knowledge representation suffer from overspecialization: while each logic may provide an ideal representation formalism for some problems, it is less than optimal for others. A solution to this problem is to choose from several logics and, when necessary, combine the representations. In general, such an approach results in a very difficult problem of combination. However, if we can choose the logics from a uniform framework then the problem of combining them is greatly simplified. In this paper, we develop such a framework for defeasible logics. It supports all defeasible logics that satisfy a strong negation principle. We use logic metaprograms as the basis for the framework.
ACLP: Abductive Constraint Logic Programming
, 2000
"... This paper presents the framework of Abductive Constraint Logic Programming (ACLP), which integrates Abductive Logic Programming (ALP) and Constraint Logic Programming (CLP). In ACLP, the task of abduction is supported and enhanced by its nontrivial integration with constraint solving. This int ..."
Abstract

Cited by 52 (5 self)
 Add to MetaCart
This paper presents the framework of Abductive Constraint Logic Programming (ACLP), which integrates Abductive Logic Programming (ALP) and Constraint Logic Programming (CLP). In ACLP, the task of abduction is supported and enhanced by its nontrivial integration with constraint solving. This integration of constraint solving into abductive reasoning facilitates a general form of constructive abduction and enables the application of abduction to computationally demanding problems
Pushing Constraint Selections
 Journal of Logic Programming
, 1992
"... this paper, we present a procedure that generates and propagates minimum QRPconstraints (if it terminates), based on the definition and uses of program predicates (Section 4). By propagating minimum QRPconstraints to the original program, we obtain a program that fully utilizes the constraint info ..."
Abstract

Cited by 49 (7 self)
 Add to MetaCart
this paper, we present a procedure that generates and propagates minimum QRPconstraints (if it terminates), based on the definition and uses of program predicates (Section 4). By propagating minimum QRPconstraints to the original program, we obtain a program that fully utilizes the constraint information present in the original program. This procedure is based on two subprocedures: 1. Procedure Gen Prop predicateconstraints, which generates and propagates constraints that are satisfied by program predicates based on their definitions.
A logicbased framework for attribute based access control
 In 2nd ACM Workshop on Formal Methods in Security Engineering (FMSE 2004
, 2004
"... Attribute based access control (ABAC) grants accesses to services based on the attributes possessed by the requester. Thus, ABAC differs from the traditional discretionary access control model by replacing the subject by a set of attributes and the object by a set of services in the access control m ..."
Abstract

Cited by 49 (3 self)
 Add to MetaCart
Attribute based access control (ABAC) grants accesses to services based on the attributes possessed by the requester. Thus, ABAC differs from the traditional discretionary access control model by replacing the subject by a set of attributes and the object by a set of services in the access control matrix. The former is appropriate in an identityless system like the Internet where subjects are identified by their characteristics, such as those substantiated by certificates. These can be modeled as attribute sets. The latter is appropriate because most Internet users are not privy to method names residing on remote servers. These can be modeled as sets of service options. We present a framework that models this aspect of access control using logic programming with set constraints of a computable set theory [DPPR00]. Our framework specifies policies as stratified constraint flounderfree logic programs that admit primitive recursion. The design of the policy specification framework ensures that they are consistent and complete. Our ABAC policies can be transformed to ensure faster runtimes.
A Logic Programming View of CLP
 International Conference on Logic Programming
, 1993
"... We address the problem of lifting definitions, results, and even proofs for the theory of logic programming, so that they apply to constraint logic programming (CLP). We attempt to systematize this lifting, where it is possible, and delineate where it is not possible. We show that the Independence o ..."
Abstract

Cited by 47 (9 self)
 Add to MetaCart
We address the problem of lifting definitions, results, and even proofs for the theory of logic programming, so that they apply to constraint logic programming (CLP). We attempt to systematize this lifting, where it is possible, and delineate where it is not possible. We show that the Independence of Negated Constraints property of constraint domains is fundamental to several different aspects of constraint logic programming. This is a principal cause for the inability to lift some traditional logic programming results to constraint logic programming. 1 Introduction We address the problem of lifting definitions, results, and even proofs for the theory of logic programming, so that they apply to constraint logic programming (CLP). (In viewing the theory of constraint logic programming as lifted from the theory of logic programming, we are taking a logic programming view of CLP.) Several papers have dealt with this problem for specific results, mostly inspired by the CLP Scheme [10, 11...
On The Correctness Of Unfold/fold Transformation Of Normal And Extended Logic Programs
 JOURNAL OF LOGIC PROGRAMMING
, 1995
"... ..."
Partial Deduction of Disjunctive Logic Programs: A Declarative Approach
 In Logic Program Synthesis and Transformation  Meta Programming in Logic, LNCS 883
, 1994
"... . This paper presents a partial deduction method for disjunctive logic programs. We first show that standard partial deduction in logic programming is not applicable as it is in the context of disjunctive logic programs. Then we introduce a new partial deduction technique for disjunctive logic progr ..."
Abstract

Cited by 20 (1 self)
 Add to MetaCart
. This paper presents a partial deduction method for disjunctive logic programs. We first show that standard partial deduction in logic programming is not applicable as it is in the context of disjunctive logic programs. Then we introduce a new partial deduction technique for disjunctive logic programs, and show that it preserves the minimal model semantics of positive disjunctive programs, and the stable model semantics of normal disjunctive programs. Goaloriented partial deduction is also presented for query optimization. 1 Introduction Partial deduction or partial evaluation is known as one of the optimization techniques in logic programming. Given a logic program, partial deduction derives a more specific program through performing deduction on a part of the program, while preserving the meaning of the original program. Such a specialized program is usually more efficient than the original program when executed. Partial deduction in logic programming was firstly introduced by Kom...
A Transformation System for Lazy Functional Logic Programs
, 1999
"... Needed narrowing is a complete operational principle for modern declarative languages which integrate the best features of (lazy) functional and logic programming. We define a transformation methodology for functional logic programs based on needed narrowing. We provide (strong) correctness results ..."
Abstract

Cited by 19 (13 self)
 Add to MetaCart
Needed narrowing is a complete operational principle for modern declarative languages which integrate the best features of (lazy) functional and logic programming. We define a transformation methodology for functional logic programs based on needed narrowing. We provide (strong) correctness results for the transformation system w.r.t. the set of computed values and answer substitutions and show that the prominent properties of needed narrowing  namely, the optimality w.r.t. the length of derivations and the number of computed solutions  carry over to the transformation process and the transformed programs. We illustrate the power of the system by taking on in our setting two wellknown transformation strategies (composition and tupling). We also provide an implementation of the transformation system which, by means of some experimental results, highlights the benefits of our approach.