Satisfiability Modulo Constraint Handling Rules (Extended Abstract) / 2997
Gregory James Duck

Satisfiability Modulo Constraint Handling Rules (SMCHR) is the integration of the Constraint Handling Rules (CHRs) solver programming language into a Satisfiability Modulo Theories (SMT) solver framework.  Constraint solvers are implemented in CHR as a set of high-level rules that specify the simplification (rewriting) and constraint propagation behavior.  The traditional CHR execution algorithm manipulates a global store representing a flat conjunction of constraints.  This paper introduces SMCHR: a tight integration of CHR with a modern Boolean Satisfiability (SAT) solver.  Unlike CHR, SMCHR can handle (quantifier-free) formulae with an arbitrary propositional structure.  SMCHR is essentially a Satisfiability Modulo Theories (SMT) solver where the theory T is implemented in CHR.