Results 1  10
of
65
Compiling Constraints in clp(FD)
, 1996
"... We present the clp(FD) system: a Constraint Logic Programming language with finite domain constraints... ..."
Abstract

Cited by 174 (24 self)
 Add to MetaCart
We present the clp(FD) system: a Constraint Logic Programming language with finite domain constraints...
A Methodological View of Constraint Solving
, 1996
"... Constraints have become very popular during the last decade. Constraints allow to define sets of data by means of logical formulae. Our goal here is to survey the notion of constraint system and to give examples of constraint systems operating on various domains, such as natural, rational or real nu ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
the paper to illustrate the concepts and methods. We also discuss applications of constraints to various fields, such as programming, operations research, and theorem proving. y CNRS and LRI, Bat. 490, Universit'e de Paris Sud, 91405 ORSAY Cedex, France fcomon, jouannaudg@lri.lri.fr z COSYTEC, Parc
A Minimal Extension of the WAM for clp(FD)
 Proceedings of the Tenth International Conference on Logic Programming
, 1993
"... We present an abstract instruction set for a constraint solver over finite domains, which can be smoothly integrated in the WAM architecture. It is based on the use of a single primitive constraint X in r which embeds the core propagation mechanism. Complex user constraints such as linear equations ..."
Abstract

Cited by 73 (8 self)
 Add to MetaCart
We present an abstract instruction set for a constraint solver over finite domains, which can be smoothly integrated in the WAM architecture. It is based on the use of a single primitive constraint X in r which embeds the core propagation mechanism. Complex user constraints such as linear equations or inequations are compiled into X in r expressions which encode the propagation scheme chosen to solve the constraint. The uniform treatment of a single primitive constraint leads to a better understanding of the overall constraint solving process and makes possible three main global optimizations which encompass many previous particular optimizations of "black box" finite domains solvers. Implementation results show that this approach combines both simplicity and efficiency. Our clp(FD) system is more than twice as fast as CHIP on average, with peak speedup reaching seven. 1 Introduction Constraint Logic Programming (CLP) has shown to be a very active field of research over recent years, ...
Efficient CNF encoding of Boolean cardinality constraints
, 2003
"... In this paper, we address the encoding into CNF clauses of Boolean cardinality constraints that arise in many practical applications. The proposed encoding is efficient with respect to unit propagation, which is implemented in almost all complete CNF satisfiability solvers. We prove the practical e ..."
Abstract

Cited by 68 (5 self)
 Add to MetaCart
In this paper, we address the encoding into CNF clauses of Boolean cardinality constraints that arise in many practical applications. The proposed encoding is efficient with respect to unit propagation, which is implemented in almost all complete CNF satisfiability solvers. We prove the practical efficiency of this encoding on some problems arising in discrete tomography that involve many cardinality constraints. This encoding is also used together with a trivial variable elimination in order to reencode parity learning benchmarks so that a simple Davis and Putnam procedure can solve them.
Design and Implementation of the GNU Prolog System
 Journal of Functional and Logic Programming
, 2001
"... In this paper we describe the design and the implementation of the GNU Prolog system. This system draws on our previous experience of compiling Prolog to C in the wamcc system and of compiling finite domain constraints in the clp(FD) system. The compilation scheme has however been redesigned in orde ..."
Abstract

Cited by 50 (14 self)
 Add to MetaCart
In this paper we describe the design and the implementation of the GNU Prolog system. This system draws on our previous experience of compiling Prolog to C in the wamcc system and of compiling finite domain constraints in the clp(FD) system. The compilation scheme has however been redesigned in order to overcome the drawbacks of compiling to C. In particular, GNUProlog is based on a lowlevel miniassembly platformindependent language that makes it possible to avoid compiling C code, and thus drastically reduces compilation time. It also makes it possible to produce small standalone executable files as the result of the compilation process. Interestingly, GNU Prolog is now compliant to the ISO standard, includes several extensions (OS interface, sockets, global variables, etc) and integrates a powerful constraint solver over finite domains. The system is efficient and in terms of performance is comparable with commercial systems for both the Prolog and constraint aspects.
A Tutorial on Constraint Programming
 University of Leeds
, 1995
"... A constraint satisfaction problem (CSP) consists of a set of variables; for each variable, a finite set of possible values (its domain); and a set of constraints restricting the values that the variables can simultaneously take. A solution to a CSP is an assignment of a value from its domain to ever ..."
Abstract

Cited by 35 (3 self)
 Add to MetaCart
A constraint satisfaction problem (CSP) consists of a set of variables; for each variable, a finite set of possible values (its domain); and a set of constraints restricting the values that the variables can simultaneously take. A solution to a CSP is an assignment of a value from its domain to every variable, in such a way that every constraint is satisfied. Many problems arising in O.R., in particular scheduling, timetabling and other combinatorial problems, can be represented as CSPs. Constraint programming tools now exist which allow CSPs to be expressed easily, and provide standard strategies for finding solutions. This tutorial is intended to give a basic grounding in constraint satisfaction problems and some of the algorithms used to solve them, including the techniques commonly used in constraint programming tools. In particular, it covers arc and path consistency; simple backtracking and forward checking, as examples of search algorithms; and the use of heuristics to guide the...
The GNU Prolog System and its Implementation
, 2000
"... We describe in this paper the GNUProlog system, a free system consisting of a Prolog compiler and a constraint solver on finite domains. GNUProlog is based on a lowlevel miniassembly platformindependent language that makes it possible for efficient compilation time, and allows to produce small ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
We describe in this paper the GNUProlog system, a free system consisting of a Prolog compiler and a constraint solver on finite domains. GNUProlog is based on a lowlevel miniassembly platformindependent language that makes it possible for efficient compilation time, and allows to produce small stand alone executable files as the result of the compilation process. Interestingly, the Prolog part is compliant to the ISO standard, and the constraint part includes several extensions, such as an efficient handling of reified constraints. The overall system is efficient and comparable in performances with commercial systems, both for the Prolog and constraint parts. 1. INTRODUCTION GNU Prolog 1 is a free Prolog compiler supported by the GNU organization. It was released in April 1999 and more than 2500 copies have been downloaded up to now from the INRIA ftp mirror site 2 . It is built on previous systems developed at INRIA, namely wamcc [4] for Prolog and clp(FD) [5] for constrain...
A Problem Classification Scheme for Finite Domain Constraint Solving
 PROCEEDING OF WORKSHOP ON CONSTRAINT APPLICATIONS, CP96,BOSTON
, 1996
"... In this paper we give a classification of problems solved with finite domain solvers in Constraint Logic Programming (CLP). This scheme tries to explain which types of problems can effectively be solved with CLP and which problems are best solved with competing techniques like integer programming or ..."
Abstract

Cited by 18 (5 self)
 Add to MetaCart
In this paper we give a classification of problems solved with finite domain solvers in Constraint Logic Programming (CLP). This scheme tries to explain which types of problems can effectively be solved with CLP and which problems are best solved with competing techniques like integer programming or local search. The survey is based on industrial studies and applications developed over the last ten years. We also try to find explanations for failures in some projects and give a list of critical issues in problem solving with constraint logic programming.
Modelling Producer/Consumer Constraints
"... In this paper we describe the modelling of producer/consumer constraints with the CHIP system. Producer/consumer constraints arise in scheduling problems with consumable resources like raw materials or money, in particular for batch based processing. The constraint assures that at each time point en ..."
Abstract

Cited by 20 (5 self)
 Add to MetaCart
In this paper we describe the modelling of producer/consumer constraints with the CHIP system. Producer/consumer constraints arise in scheduling problems with consumable resources like raw materials or money, in particular for batch based processing. The constraint assures that at each time point enough consumable resources are available. The modelling with CHIP uses the cumulative constraint to express conditions in a very declarative way, yet obtains very good propagation due to the reasoning power build into the cumulative constraint. We show that with producer/consumer constraints many resource scheduling problems can be easily expressed and give examples of its industrial use.
Results 1  10
of
65