Abstract
Cadmium is a rule based programming language for compiling solver independent constraint models to various solver dependent back-ends. Cadmium is based on a hybrid between Constraint Handling Rules (CHR) and term rewriting modulo Associativity, Commutativity and a restricted form of Distributivity (ACD) called Conjunctive Context (CC). Experience with using Cadmium in the G12 project shows that CC is a powerful language feature, as local model mapping can depend on some non-local context, such as variable declarations or other constraints. However, CC significantly complicates the Cadmium normalisation algorithm, since the normal form of a term may depend on what context it appears in. In this paper we present an implementation of Cadmium based on classic bottom-up evaluation, but modified to handle CC matching. We evaluate the performance of the new implementation compared to earlier prototype normalisation algorithms. We show that the resulting system is fast enough to run "real-world" Cadmium applications.
Original language | English |
---|---|
Title of host publication | Logic Programming - 24th International Conference, ICLP 2008, Proceedings |
Pages | 531-545 |
Number of pages | 15 |
DOIs | |
Publication status | Published - 1 Dec 2008 |
Externally published | Yes |
Event | International Conference on Logic Programming 2008 - Udine, Italy Duration: 9 Dec 2008 → 13 Dec 2008 Conference number: 24th https://link.springer.com/book/10.1007/978-3-540-89982-2 (Proceedings) |
Publication series
Name | Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) |
---|---|
Volume | 5366 LNCS |
ISSN (Print) | 0302-9743 |
ISSN (Electronic) | 1611-3349 |
Conference
Conference | International Conference on Logic Programming 2008 |
---|---|
Abbreviated title | ICLP 2008 |
Country/Territory | Italy |
City | Udine |
Period | 9/12/08 → 13/12/08 |
Internet address |
|