CW 481

Jon Sneyers, Peter Van Weert, Tom Schrijvers, Bart Demoen
Aggregates in CHR

Abstract

We propose an extension of the Constraint Handling Rules language with aggregates like sum, count, findall, and min in the heads of rules. We define the semantics of aggregate expressions formally and informally. Our prototype implementation as a source-to-source preprocessor allows both on-demand and incremental computation of nested aggregate expressions over guarded conjunctions of constraints. Case studies demonstrate that by using aggregates, the program size can be significantly reduced, with only a small constant run-time overhead.

report.pdf (285K) / mailto: J. Sneyers