Results 1  10
of
23
Predicting the Drape of Woven Cloth Using Interacting Particles
, 1994
"... We demonstrate a physicallybased technique for predicting the drape of a wide variety of woven fabrics. The approach exploits a theoretical model that explicitly represents the microstructure of woven cloth with interacting particles, rather than utilizing a continuum approximation. By testing a cl ..."
Abstract

Cited by 144 (5 self)
 Add to MetaCart
We demonstrate a physicallybased technique for predicting the drape of a wide variety of woven fabrics. The approach exploits a theoretical model that explicitly represents the microstructure of woven cloth with interacting particles, rather than utilizing a continuum approximation. By testing a cloth sample in a Kawabata fabric testing device, we obtain data that is used to tune the model's energy functions, so that it reproduces the draping behavior of the original material. Photographs, comparing the drape of actual cloth with visualizations of simulation results, show that we are able to reliably model the unique largescale draping characteristics of distinctly different fabric types. iii Figure 1.1: Draping cloth objects 1 Introduction The vast number of uses for cloth are mirrored in the extraordinary variety of types of woven fabrics. These range from the most exquisite fine silks, to the coarsest of burlaps, and are woven from such diverse fibers as natural wool and synth...
The Computational Power and Complexity of Constraint Handling Rules
 In Second Workshop on Constraint Handling Rules, at ICLP05
, 2005
"... Constraint Handling Rules (CHR) is a highlevel rulebased programming language which is increasingly used for general purposes. We introduce the CHR machine, a model of computation based on the operational semantics of CHR. Its computational power and time complexity properties are compared to thos ..."
Abstract

Cited by 52 (21 self)
 Add to MetaCart
(Show Context)
Constraint Handling Rules (CHR) is a highlevel rulebased programming language which is increasingly used for general purposes. We introduce the CHR machine, a model of computation based on the operational semantics of CHR. Its computational power and time complexity properties are compared to those of the wellunderstood Turing machine and Random Access Memory machine. This allows us to prove the interesting result that every algorithm can be implemented in CHR with the best known time and space complexity. We also investigate the practical relevance of this result and the constant factors involved. Finally we expand the scope of the discussion to other (declarative) programming languages.
Constraint logic programming  an informal introduction
 LOGIC PROGRAMMING IN ACTION, NUMBER 636 IN LNCS
, 1992
"... Constraint Logic Programming (CLP) is a new class of programming languages combining the declarativity of logic programming with the efficiency of constraint solving. New application areas, amongst them many different classes of combinatorial search problems such as scheduling, planning or resource ..."
Abstract

Cited by 37 (8 self)
 Add to MetaCart
(Show Context)
Constraint Logic Programming (CLP) is a new class of programming languages combining the declarativity of logic programming with the efficiency of constraint solving. New application areas, amongst them many different classes of combinatorial search problems such as scheduling, planning or resource allocation can now be solved, which were intractable for logic programming so far. The most important advantage that these languages offer is the short development time while exhibiting an efficiency comparable to imperative languages. This tutorial aims at presenting the principles and concepts underlying these languages and explaining them by examples. The objective of this paper is not to give a technical survey of the current state of art in research on CLP, but rather to give a tutorial introduction and to convey the basic philosophy that is behind the different ideas in CLP. It will discuss the currently most successful computation domains and provide an overview on the different consi...
Constraint Logic Programming for Scheduling and Planning
, 1995
"... This paper provides an introduction to Finitedomain Constraint Logic Programming (CLP) and its application to problems in scheduling and planning. We cover the fundamentals of CLP and indicate recent developments and trends in the field. Some current limitations are identified, and areas of researc ..."
Abstract

Cited by 22 (0 self)
 Add to MetaCart
This paper provides an introduction to Finitedomain Constraint Logic Programming (CLP) and its application to problems in scheduling and planning. We cover the fundamentals of CLP and indicate recent developments and trends in the field. Some current limitations are identified, and areas of research that may contribute to addressing these limitations are suggested.
The PADDY Partial Deduction System
, 1992
"... This report describes the PADDY partial deduction system. Its main features are that it can handle full Sepia, including advanced features; is automatic; always terminates; is provably correct on pure Prolog programs; uses a powerful adaptive transformation strategy; has fast transformation times; i ..."
Abstract

Cited by 16 (0 self)
 Add to MetaCart
This report describes the PADDY partial deduction system. Its main features are that it can handle full Sepia, including advanced features; is automatic; always terminates; is provably correct on pure Prolog programs; uses a powerful adaptive transformation strategy; has fast transformation times; is based on an unfold/fold system.
On Confluence of Constraint Handling Rules
 IN 2ND INTERNATIONAL CONFERENCE ON PRINCIPLES AND PRACTICE OF CONSTRAINT PROGRAMMING, CP'96, LNCS 1118
, 1996
"... We introduce the notion of confluence for Constraint Handling Rules (CHR), a powerful language for writing constraint solvers. With CHR one simplifies and solves constraints by applying rules. Confluence guarantees that a CHR program will always compute the same result for a given set of constrain ..."
Abstract

Cited by 14 (7 self)
 Add to MetaCart
We introduce the notion of confluence for Constraint Handling Rules (CHR), a powerful language for writing constraint solvers. With CHR one simplifies and solves constraints by applying rules. Confluence guarantees that a CHR program will always compute the same result for a given set of constraints independent of which rules are applied. We give a decidable, sufficient and necessary syntactic condition for confluence. Confluence turns out to be an essential syntactical property of CHR programs for two reasons. First, confluence implies correctness (as will be shown in this paper). In a correct CHR program, application of CHR rules preserves logical equivalence of the simplified constraints. Secondly, even when the program is already correct, confluence is highly desirable. Otherwise, given some constraints, one computation may detect their inconsistency while another one may just simplify them into a still complex constraint. As a sideeffect, the paper also gives soundness and com...
Generalised Constraint Propagation Over the CLP Scheme
 Journal of Logic Programming
, 1992
"... Constraint logic programming is often described as logic programming with unification replaced by constraint solving over a computation domain. There is another, very different, CLP paradigm based on constraint satisfaction, where programdefined goals can be treated as constraints and handled using ..."
Abstract

Cited by 11 (4 self)
 Add to MetaCart
Constraint logic programming is often described as logic programming with unification replaced by constraint solving over a computation domain. There is another, very different, CLP paradigm based on constraint satisfaction, where programdefined goals can be treated as constraints and handled using propagation. This paper proposes a generalisation of propagation, which enables it to be applied on arbitrary computation domains, revealing that the two paradigms of CLP are orthogonal, and can be freely combined. The main idea behind generalised propagation is to use whatever constraints are available over the computation domain to express restrictions on problem variables. Generalised propagation on a goal G requires that the system extracts a constraint approximating all the answers to G. The paper introduces a generic algorithm for generalised propagation called topological branch and bound which avoids enumerating all the answers to G. Generalised propagation over the Herbrand univers...
HighLevel Implementations of Constraint Handling Rules
, 1995
"... Constraint handling rules (CHRs) are a high level logic concurrent committedchoice language for writing constraint systems. Rapid prototyping of novel applications for constraint techniques is encouraged by the high level of abstraction and declarative nature of CHRs. In this paper we describe basic ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
Constraint handling rules (CHRs) are a high level logic concurrent committedchoice language for writing constraint systems. Rapid prototyping of novel applications for constraint techniques is encouraged by the high level of abstraction and declarative nature of CHRs. In this paper we describe basic principles of implementing CHRs in logic programming languages and show how they actually have been implemented in the CHRs library of ECLiPSe, ECRC's constraint logic programming platform. All three types of multiheaded CHRs can be transformed into singleheaded simplification rules. These rules correspond to guarded rules used in typical logic concurrent committedchoice languages. We then show how to implement these guarded rules in sequential (constraint) logic programming languages. The report contains three appendices involving a generic example and its translation.
M.C.: Expressiveness of multiple heads in CHR
 In: SOFSEM ’09: Proceedings of the 35th Conference on Current Trends in Theory and Practice of Computer Science
, 2009
"... Abstract. Constraint Handling Rules (CHR) is a general purpose, committedchoice declarative language which, differently from other similar languages, uses multiheaded (guarded) rules. In this paper we prove that multiple heads augment the expressive power of the language. In fact, we first show tha ..."
Abstract

Cited by 7 (4 self)
 Add to MetaCart
(Show Context)
Abstract. Constraint Handling Rules (CHR) is a general purpose, committedchoice declarative language which, differently from other similar languages, uses multiheaded (guarded) rules. In this paper we prove that multiple heads augment the expressive power of the language. In fact, we first show that restricting to single head rules affects the Turing completeness of CHR, provided that the underlying signature (for the constraint theory) does not contain function symbols. Next we show that, also when considering generic constraint theories, under some rather reasonable assumptions it is not possible to encode CHR (with multiheaded rules) into a singleheaded CHR language while preserving the semantics of programs. As a corollary we obtain that, under these assumptions, CHR can be encoded neither in (constraint) logic programming nor in pure Prolog. 1
Constraint Logic Programming
 In Proc. ERCIM/Compulog Net workshop on constraints. SpringerVerlag, LNAI 1865
, 1999
"... Constraint logic programming (CLP) is a multidisciplinary research area which can be located between Artificial Intelligence, Operation Research, and Programming Languages, and has to do with modeling, solving, and programming reallife problems which can be described as a set of statements (the con ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
Constraint logic programming (CLP) is a multidisciplinary research area which can be located between Artificial Intelligence, Operation Research, and Programming Languages, and has to do with modeling, solving, and programming reallife problems which can be described as a set of statements (the constraints) which describe some relationship between the problem's variables. This survey paper gives a brief introduction to C(L)P, presents a (necessarily partial) state of the art in CLP research and applications, points out some promising directions for future applications, and discusses how to cope with current research challenges.