On the Expressive Power of Multiple Heads in CHR
Cinzia Di Giusto, Maurizio Gabbrielli, Maria Chiara Meo

TL;DR
This paper formally analyzes the expressive power of multi-headed rules in Constraint Handling Rules (CHR), proving that multiple heads increase the language's expressive capabilities, especially in relation to Turing completeness and encoding limitations.
Contribution
It provides the first formal proof that multiple heads in CHR enhance its expressive power and characterizes conditions under which single-headed CHR is Turing complete.
Findings
Multi-headed CHR is Turing complete with powerful enough constraint theories.
Single-headed CHR is not Turing complete without function symbols.
Multiple heads increase the expressive power and encoding capabilities of CHR.
Abstract
Constraint Handling Rules (CHR) is a committed-choice declarative language which has been originally designed for writing constraint solvers and which is nowadays a general purpose language. CHR programs consist of multi-headed guarded rules which allow to rewrite constraints into simpler ones until a solved form is reached. Many empirical evidences suggest that multiple heads augment the expressive power of the language, however no formal result in this direction has been proved, so far. In the first part of this paper we analyze the Turing completeness of CHR with respect to the underneath constraint theory. We prove that if the constraint theory is powerful enough then restricting to single head rules does not affect the Turing completeness of the language. On the other hand, differently from the case of the multi-headed language, the single head CHR language is not Turing powerful…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · semigroups and automata theory · Logic, Reasoning, and Knowledge
