Programming 1 Diagrammatic confluence for Constraint Handling Rules ∗
نویسنده
چکیده
Confluence is a fundamental property of Constraint Handling Rules (CHR) since, as in other rewriting formalisms, it guarantees that the computations are not dependent on rule application order, and also because it implies the logical consistency of the program declarative view. In this paper we are concerned with proving the confluence of nonterminating CHR programs. For this purpose, we derive from van Oostrom’s decreasing diagrams method a novel criterion on CHR critical pairs that generalizes all preexisting criteria.We subsequently improve on a result on the modularity of CHR confluence, which permits modular combinations of possibly non-terminating confluent programs, without loss of confluence.
منابع مشابه
Diagrammatic confluence for Constraint Handling Rules
Confluence is a fundamental property of Constraint Handling Rules (CHR) since, as in other rewriting formalisms, it guarantees that the computations are not dependent on rule application order, and also because it implies the logical consistency of the program declarative view. In this paper we are concerned with proving the confluence of nonterminating CHR programs. For this purpose, we derive...
متن کاملConfluence Modulo Equivalence in Constraint Handling Rules
Previous results on confluence for Constraint Handling Rules, CHR, are generalized to take into account user-defined state equivalence relations. This allows a much larger class of programs to enjoy the advantages of confluence, which include various optimization techniques and simplified correctness proofs. A new operational semantics for CHR is introduced that reduces notational overhead sign...
متن کاملSpecialization of Concurrent Guarded Multi-set Transformation Rules
Program transformation and in particular partial evaluation are appealing techniques for declarative programs to improve not only their performance. This paper presents the first step towards developing program transformation techniques for a concurrent constraint programming language where guarded rules rewrite and augment multi-sets of atomic formulae, called Constraint Handling Rules (CHR). ...
متن کاملA Confluence Checker for Constraint Handling Rules with Persistent Constraints
In the abstract operational semantics of Constraint Handling Rules (CHR), propagation rules, i.e. rules that only add information, can be applied again and again. This trivial non-termination is typically avoided by a propagation history. A more declarative approach are persistent constraints. Constraints that are introduced by propagation rules are made persistent and cannot be removed. Now a ...
متن کاملAnalysing Graph Transformation Systems using Extended Methods from Constraint Handling Rules
Constraint Handling Rules (CHR) [1] has become a general-purpose rule-based programming language throughout the last decade. The relations to many other formalisms have been investigated [2] and often results could be transferred from CHR to other formalisms, or vice versa. Graph Transformation Systems (GTS) [3], which have been developed in the 60ies and have become increasingly popular, have ...
متن کامل