| Pascal Van Hentenryck, Vijay Saraswat, and Yves Deville. Design, implementation and evaluation of the constraint language cc(FD). In Andreas Podelski, editor, Constraint Programming: Basics and Trends, Lecture Notes in Computer Science, vol. 910, pages 293--316. Springer-Verlag, 1995. 15 |
....constraint programming, especially with finite domain constraints, has become popular in many application areas. To a large extent, the growing interest is caused by both the expressive power and the availability of efficient implementations like CHIP [DVS 88] ECLiPSe [ACD 95] cc(FD) VSD95] clp(FD) DC93] just to name a few. Development of applications based on constraint programming proceeds in two steps. The first step is to design a principally working solution. This is followed by the much harder task to make this solution work for problems of real world size. The latter ....
Pascal Van Hentenryck, Vijay Saraswat, and Yves Deville. Design, implementation and evaluation of the constraint language cc(FD). In Andreas Podelski, editor, Constraint Programming: Basics and Trends, Lecture Notes in Computer Science, vol. 910, pages 293--316. Springer-Verlag, 1995. 15
....also performs linear arithmetic over bounded subsets of the integers (known as finite domains ) Prolog III also computes over a domain of strings. There are now several languages which compute over finite domains in the manner of CHIP, including clp(FD) 75] Echidna [103] and Flang [181] cc(FD) [116] is essentially a second generation CHIP system. LOGIN [7] and LIFE [9] compute over an order sorted domain of feature trees. This domain provides a limited notion of object (in the object oriented sense) The languages support a term syntax which is not first order, although every term can be ....
.... infer repeatedly computes smaller intervals for each of the variables, based on the constraints in S, terminating when no smaller interval can be derived (modulo the precision of the arithmetic) Execution of language constructs such as the cardinality operator [112] constructive disjunction [116] and special purpose constructs (for example, in [77, 2] can also be understood as i transitions, where these constructs are viewed as part of the language of constraints. Generally, the active constraints are determined syntactically. As examples, in Prolog all equations are active, in CLP(R) ....
[Article contains additional citation context not shown here]
P. van Hentenryck, V. Saraswat & Y. Deville, Design, Implementations and Evaluation of the Constraint Language cc(FD), Technical Report CS-93-02, Brown University, 1993.
....language CLP(R) has linear arithmetic constraints and computes over the real numbers. CHIP and Prolog III compute over several domains: Boolean, linear arithmetic over the rational numbers, CHIP over linear arithmetic over finite domains, Prolog III over a domain of strings. The language cc(FD) [40] is basically a second generation CHIP system. In [41] the authors describe how the CLP language cc(FD) can be used to solve the two combinatorial search problems of test pattern generation and car sequencing. Many of the definitions, results, and proofs for the theory of logic programming ....
....Our presentation is very similar to that of [16] except for the handling of bounded quantifiers and a slightly different treatment of bound variables in constraints. The operational semantics for finite domains that is similar to our semantics is introduced in the form of cardinality operators of [41, 40]. Our paper is different from the above mentioned papers in the systematic treatment of logic programming both with constraints and bounded quantifiers. As a consequence, we obtain a uniform semantics for handling constraints both over finite and infinite domains. With some modifications, we can ....
[Article contains additional citation context not shown here]
P. Van Hentenryck, W. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(fd). In A. Podelski, editor, Constraint Programming: Basics and Tools, volume 910 of Lecture Notes in Computer Science, pages 293--316. Springer Verlag, 1995.
....collaboration [28] and correlative combination of theories in prove theory. The combination of constraint satisfaction techniques with traditional OR methods like integer programming is another challenge of current research. Last but not least, parallelism and concurrent constraint solving (cc) [39] are studied as methods for improving efficiency. In these systems, multiagent technology looks very promising. 7 Summary In the paper we give a survey of basic solving techniques behind constraint programming. In particular we concentrate on constraint satisfaction algorithms that solve ....
van Hentenryck, P., Saraswat, V., Deville, Y.: Design, Implementations and Evaluation of the Constraint Language cc(FD), Tech. Report CS-93-02, Brown University, 1992
....consistency. However, it is not guaranteed to rule out all invalid values. Using the domain consistency technique, each combination of possible values of the domain variables is attempted. This is more effective in eliminating invalid values but consumes more execution time. Unlike cc(FD) VHSD93] in that the programmer has to specify whether interval consistency or domain consistency is to be used, our Firebird implementation will be able to choose between the two (or some intermediaries) depending on processor elements availability. If there are enough processor elements, each partition ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Technical Report CS-93-02, Department of Computer Science, Brown University, Providence, 1993.
....developed; perhaps the most successful in practice have been those based on finite domains, in which variables can be constrained to range over a finite set of possible values. The first finite domain CLP language was CHIP [4] but this has been followed by others, including clp(FD) 3] and cc(FD) [5], among others. Here we shall use the name CLP(FD) to refer to a generic finite domain CLP language. In CLP(FD) some variables in a program may be designated as domain variables, ranging over a specified finite domain. Domain variables are treated differently by unification and constraints. ....
P. V. Hentenryck, V. Saraswat, and Y. Deville. Design, Implementation and Evaluation of the Constraint Language cc(FD). Technical Report No. CS-93-02, Dept. of Computer Science, Brown University, Jan 1993.
....for performing specialised tasks very efficiently. In some cases, their implementation is hidden and, for this reason, such solvers are called black boxes. An alternative approach, called the glass box approach, allows the user to control the constraint solver at a more detailed level [vHE 94] We consider here two black box constraint languages (ECL i PS e [AGG 95, BRI 95] and Oz [SMO 95] and two glass box languages (clp(FD) COD 96, DIA 94] and CHR [FRU 94, BRI 95] comparing both their expressiveness and their efficiency. We chose these particular languages since all provide ....
Van HENTENRYCK P., SARASWAT V.A. and DEVILLE Y. Design, Implementation and Evaluation of the Constraint Language cc(FD), In A. Podelski, editor, Constraint Programming: Basics and Trends, pp:293-316, LNCS 910, May 1994.
....space has become stable (a crucial control condition we have also adopted in Oz) In AKL, search alternatives are not available as first class citizens. All solutions search is provided through an extra primitive. Best solution and demand driven multiple solution search are not expressible. cc(FD) [10] is a constraint programming language specialized for finite domain constraints. It employs a Prolog style search strategy and three concurrent constraint combinators called cardinality, constructive disjunction, and blocking implication. It is a compromise between a flat and a deep guard language ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Report CS-93-02, Brown University, Jan. 1993.
....interval consistency. However, it is not guaranteed to rule out all invalid values. Using the domain consistency technique, each combination of possible values of the domain variables is attempted. This is more effective in eliminating invalid values but consumes more execution time. Unlike cc(FD) [22] in that the programmer has to specify whether interval consistency or domain consistency is to be used, our Firebird implementation will be able to choose between the two (or some intermediaries) depending on processor elements availability. If there are enough processor elements, each partition ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Technical Report CS-93-02, Department of Computer Science, Brown University, Providence, 1993.
....domain constraints is called a store. X ] S , the domain of X in S, is defined as the intersection of all I such that X 2 I belongs to S (if no such X 2 I belongs to S, X ] S = Z) A store S 0 is an extension of a store S iff 8X : X ] S 0 [X ] S . The following definitions, adapted from [25], define important notions of consistency and entailment of constraints wrt. stores. Let [ X ] S denote the interval min( X ] S ) max( X ] S ) A constraint C is domain consistent wrt. S iff, for each variable X i and value V i in [X i ] S , there exist values V j in [X j ] S , 1 j n; i 6= j, ....
....provides the necessary back end, managing memory, storing byte code in core, etc. The interface between the Prolog engine and the solver is provided in part by the attributed variables mechanism [13] which has been used previously to interface several constraint solvers into CLP systems [10,12,25,9,6,22]. This mechanism associates solver specific information with variables, and provides hooks for extended unification and projection of answer constraints. Thus, the only extension to the Prolog kernel was the introduction of a new predicate type, a truly minimal and modular extension. 3.4 ....
[Article contains additional citation context not shown here]
Pascal Van Hentenryck, Vijay Saraswat, and Yves Deville. Design, implementation and evaluation of the constraint language cc(FD). In A. Podelski, editor, Constraints: Basics and Trends, volume 910 of Lecture Notes in Computer Science. Springer-Verlag, 1995.
....space has become stable (a crucial control condition we have also adopted in Oz) In AKL, search alternatives are not available as first class citizens. All solutions search is provided through an extra primitive. Best solution and demand driven multiple solution search are not expressible. cc(FD) [11] is a constraint programming language specialized for finite domain constraints. It employs a Prolog style search strategy and three concurrent constraint combinators called cardinality, constructive disjunction, and blocking implication. It is a compromise between a flat and a deep guard language ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Report CS-93-02, Brown University, Jan. 1993.
....we have the possibility to analyze and test our algorithms on a high level before implementing them (e.g. as builtins) A variety of algorithms may be designed and tested with small effort. Since algorithms for virtual constraints are at the core of languages like CHIP [DVS 88] or cc(FD) VSD93] the question arises whether these algorithms are correct, terminating and complete. 1 In the sequential setting general algorithms achieving arc consistency (e.g. Mac77, VDT92] are proved to be correct. Nevertheless, the concurrent logic setting is the more natural one for solving constraint ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Report CS-93-02, Brown University, January 1993.
....x n ) and y = y 1 ; y n ) we will use the notation 9 x c for 9 x1 ( 9 xn (c) and d x y for d x1y1 t : t d xnyn . The constraint system we will use in the following to encode our combinatorial problem corresponds to the finite intervals part of cc(FD) as described in [10, 11]. To each task corresponds a constant duration d i and a variable t i representing the starting time of the execution of t and whose domain is actually an interval. Tokens are the primitive interval constraints t i d i t j and t i n, the entailment relation resulting from arc consistency ....
Pascal Van Hentenryck, Vijay Saraswat, and Yves Deville. Design, implementation and evaluation of the constraint language cc(fd). Technical Report CS-93-02, Brown University, January 1993.
....very similar to that of [GaDoLe 95] except for the handling of bounded quantifiers and a slightly different treatment of bound variables in constraints. The operational semantics for finite domains that is similar to our semantics is introduced in the form of cardinality operators of [VaSiDi 92, VaSaDe 95] Our paper is different from the above mentioned papers in the systematic treatment of logic programming both with constraints and bounded quantifiers. As a consequence, we obtain a uniform semantics for handling constraints both over finite and infinite domains. With some modifications, we can ....
....with constraints and bounded quantifiers. As a consequence, we obtain a uniform semantics for handling constraints both over finite and infinite domains. With some modifications, we can apply our semantics to characterize existing constraint logic programming languages, like cc(FD) of [VaSiDi 92, VaSaDe 95] For example, the cardinality operators may be described as bounded quantifiers like 9 n , although for their correct treatment one needs to consider negation which is outside of the scope of this paper. Our presentation was not bound to any particular domain. In some particular domains there ....
P. Van Hentenryck, W. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(fd). In A. Podelski, editor, Constraint Programming: Basics and Tools, volume 910 of Lecture Notes in Computer Science, pages 293--316. Springer Verlag, 1995.
....blocks until the amount of accumulated information (the store) is strong enough to entail c, in which case c A evolves to A. This gives rise to a natural form of data driven computation, that generalizes the delay mechanism of Prolog with freeze and of early CLP systems such as CHIP [34] [10], and is now central in the applications of constraint programming to complex system modelling and combinatorial optimization problems [17] Inherited from the process algebra tradition, cc languages can be presented very simply by a set of operators for parallel composition k, non deterministic ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(fd). In Constraint Programming: Basics and Trends, pages 293--316, 1995.
....width (the width of a rational is 0 and the width of an interval is the difference of the bounds) In general, the chosen domain, being necessarily an interval, is splitted in two or three equal parts 4 . 5. 4 Constructive disjunction Constructive disjunction was studied in the CLP community [24, 41] to efficiently handle disjunctive constraints. The main idea is to infer informations from disjunctive constraints, i.e. reducing the domains of variables, rather than creating a Prolog choice point. We use a similar idea to handle disjunctive constraints to be processed by interval Newton ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, Implementation and Evaluation of the Constraint Language cc(fd). In Constraint Programming: Basics and Trends, volume 910 of LNCS. Springer-Verlag, 1994.
....space has become stable (a crucial control condition we have also adopted in Oz) In AKL, search alternatives are not available as first class citizens. All solutions search is provided through an extra primitive. Best solution and demand driven multiple solution search are not expressible. cc(FD) [8] is a constraint programming language specialized for finite domain constraints. It employs a Prolog style search strategy and three concurrent constraint combinators called cardinality, constructive disjunction, and blocking implication. It is a compromise between a flat and a deep guard language ....
P. Van Hentenryck, V. Saraswat, and Y. Deville. Design, implementation and evaluation of the constraint language cc(FD). Report CS-93-02, Brown University, Jan. 1993.
No context found.
P. Van Hentenryck, V. Saraswat and Y. Deville, Design, implementation and evaluation of the constraint language cc(FD). In A. Podelski, ed., Constraints: Basics and Trends, LNCS 910. Springer-Verlag, 1995.
No context found.
Pascal Van Hentenryck, Vijay Saraswat, and Yves Deville. Design, implementation and evaluation of the constraint language cc(FD). In A. Podelski, editor, Constraints: Basics and Trends, volume 910 of Lecture Notes in Computer Science. Springer-Verlag, 1995. This article was processed using the L A T E X macro package with LLNCS style
No context found.
P. Van Hentenryck, V. Saraswat, Y. Deville, Design, implementation and evaluation of the constraint language CC(FD), in Constraint Programming: basics and trends, A. Podelski Ed., Chatillon-sur-Seine, Springer-Verlag LNCS 910, pp.68-90, (1995).
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC