Towards a Constraint Solver for Proving Confluence with Invariant and Equivalence of Realistic CHR Programs

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review


Confluence of a nondeterministic program ensures a functional input-output relation, freeing the programmer from considering the actual scheduling strategy, and allowing optimized and perhaps parallel implementations. The more general property of confluence modulo equivalence ensures that equivalent inputs are related to equivalent outputs, that need not be identical. Confluence under invariants is also considered. Constraint Handling Rules (CHR) is an important example of a rewrite based logic programming language, and we aim at a mechanizable method for proving confluence modulo equivalence of terminating CHR programs. While earlier approaches to confluence for CHR programs concern an idealized logic subset, we refer to a semantics compatible with standard Prolog-based implementations. We specify a meta-level constraint language in which invariants and equivalences can be expressed and manipulated as is needed for confluence proofs, thus extending our previous theoretical results towards a practical implementation.
Original languageEnglish
Title of host publicationFunctional and Constraint Logic Programming : 26.International Workshop, WFLP 2018, Frankfurt/Main, Germany, September 6, 2018, Revised Selected Papers
EditorsJosep Silva
Place of PublicationCham
Publication date2019
ISBN (Print)978-3-030-16201-6
Publication statusPublished - 2019
EventThe 26th International Workshop on Functional and Logic Programming - Göthe-University Frankfurt am Main, Frankfurt, Germany
Duration: 6 Sep 20186 Sep 2018
Conference number: 26


ConferenceThe 26th International Workshop on Functional and Logic Programming
LocationGöthe-University Frankfurt am Main
Internet address
SeriesLecture Notes in Computer Science
SeriesTheoretical Computer Science and General Issues

Cite this