Constraint Handling Rules (CHR) is a high-level rule-based programming language which is increasingly used for general-purpose programming. 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 well-understood 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. © 2009 ACM.
CITATION STYLE
Sneyers, J., Schrijvers, T., & Demoen, B. (2009). The computational power and complexity of constraint handling rules. ACM Transactions on Programming Languages and Systems, 31(2). https://doi.org/10.1145/1462166.1462169
Mendeley helps you to discover research relevant for your work.