Newsgroups: comp.lang.prolog
Path: cantaloupe.srv.cs.cmu.edu!rochester!udel!gatech!howland.reston.ans.net!news.sprintlink.net!news.ecrc.de!ecrc!acrab60!thom
From: thom@ecrc.de (Thom Fruehwirth)
Subject: Report Announcement
Message-ID: <DAxw32.9Ew@ecrc.de>
Sender: news@ecrc.de
Reply-To: thom@ecrc.de
Organization: European Computer-Industry Research Centre GmbH.
Date: Thu, 29 Jun 1995 14:54:38 GMT
Lines: 31


High-Level Implementations of Constraint Handling Rules
-------------------------------------------------------
ECRC Technical Report ECRC-95-20

Thom Fruehwirth, thom@ecrc.de, http://www.ecrc.de/staff/thom/
Pascal Brisset, pbrisset@eis.enac.dgac.fr

Constraint handling rules (CHRs) are a high level logic concurrent
committed-choice language for writing constraint systems.  Rapid
prototyping of novel applications for constraint techniques is
encouraged by the high level of abstraction and declarative nature of
CHRs. In this paper we describe basic principles of implementing CHRs
in logic programming languages and show how they actually have been
implemented in the CHRs library of ECLiPSe, ECRC's constraint logic
programming platform. All three types of multi-headed CHRs can be
transformed into single-headed simplification rules. These rules
correspond to guarded rules used in typical logic concurrent
committed-choice languages. We then show how to implement these
guarded rules in sequential (constraint) logic programming languages.
The report contains three appendices involving a generic example and
its translation.

Part of this work was supported by ESPRIT Project 5291 CHIC.

Available by ftp from ftp.ecrc.de,
pub/ECRC_tech_reports/reports/ECRC-95-20.ps.Z
and on the world wide web at http://www.ecrc.de/staff/thom/.



