Results 1  10
of
58
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 56 (23 self)
 Add to MetaCart
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.
Optimal UnionFind in Constraint Handling Rules
 THEORY AND PRACTICE OF LOGIC PROGRAMMING
, 2006
"... Constraint Handling Rules (CHR) is a committedchoice rulebased language that was originally intended for writing constraint solvers. In this paper we show that it is also possible to write the classic unionfind algorithm and variants in CHR. The programs neither compromise in declarativeness nor ..."
Abstract

Cited by 39 (27 self)
 Add to MetaCart
Constraint Handling Rules (CHR) is a committedchoice rulebased language that was originally intended for writing constraint solvers. In this paper we show that it is also possible to write the classic unionfind algorithm and variants in CHR. The programs neither compromise in declarativeness nor e#ciency. We study the time complexity of our programs: they match the almostlinear complexity of the best known imperative implementations. This fact is illustrated with experimental results.
Parallelizing unionfind in Constraint Handling Rules using confluence analysis
 LOGIC PROGRAMMING: 21ST INTERNATIONAL CONFERENCE, ICLP 2005, VOLUME 3668 OF LECTURE NOTES IN COMPUTER SCIENCE
, 2005
"... Constraint Handling Rules is a logical concurrent committedchoice rulebased language. Recently it was shown that the classical unionfind algorithm can be implemented in CHR with optimal time complexity. Here we investigate if a parallel implementation of this algorithm is also possible in CHR. The ..."
Abstract

Cited by 33 (15 self)
 Add to MetaCart
Constraint Handling Rules is a logical concurrent committedchoice rulebased language. Recently it was shown that the classical unionfind algorithm can be implemented in CHR with optimal time complexity. Here we investigate if a parallel implementation of this algorithm is also possible in CHR. The problem is hard for several reasons: Up to now, no parallel computation model for CHR was defined. Tarjan’s optimal unionfind is known to be hard to parallelize. The parallel code should be as close as possible to the sequential one. It turns out tlass="abstract_toggle">Abstract

Cited by 33 (15 self)
 Add to MetaCart
Constraint Handling Rules is a logical concurrent committedchoice rulebased language. Recently it was shown that the classical unionfind algorithm can be implemented in CHR with optimal time complexity. Here we investigate if a parallel implementation of this algorithm is also possible in CHR. The problem is hard for several reasons: Up to now, no parallel computation model for CHR was defined. Tarjan’s optimal unionfind is known to be hard to parallelize. The parallel code should be as close as possible to the sequential one. It turns out t0