×

Cadmium

swMATH ID: 6507
Software Authors: Duck, Gregory J.; De Koninck, Leslie; Stuckey, Peter J.
Description: Cadmium: an implementation of ACD term rewriting. 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.
Homepage: http://dl.acm.org/citation.cfm?id=1505244
Keywords: ACD term rewriting
Related Software: MiniZinc; Gecode; G12; MINION; Sugar; CVC4; Chaff; CSPLib; MiniSat; Krimp; Essence; ESRA; MiningZinc; fzn2smt; SPMF; Zinc; UCI-ml; COMET; SCIP; Maude
Referenced in: 4 Publications

Referenced in 1 Serial

2 Artificial Intelligence

Referenced in 1 Field

4 Computer science (68-XX)

Referencing Publications by Year