Confluence and Semantics of Constraint Simplification Rules

  • Authors:
  • Slim Abdennadher;Thom Frühwirth;Holger Meuss

  • Affiliations:
  • Computer Science Department, Ludwig-Maximilians-University, Oettingenstrasse 67, D-80538 Munich, Germany;Computer Science Department, Ludwig-Maximilians-University, Oettingenstrasse 67, D-80538 Munich, Germany;Center for Information and Language Processing, Ludwig-Maximilians-University, Oettingenstrasse 67, D-80538 Munich, Germany

  • Venue:
  • Constraints
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

ConstraintSimplification Rules (CSR) is a subset of the Constraint HandlingRules (CHR) language. CHR is a powerful special-purpose declarativeprogramming language for writing constraint solvers. The CSRsubset of CHR forms essentially a committed-choice language consistingof guarded rules with multiple heads that replace constraintsby simpler ones until they are solved. This paper gives declarativeand operational semantics as well as soundness and completenessresults for CSR programs. We also introducea notion of confluence for CSR programs. Confluence is an essentialsyntactical property of any constraint solver. It ensures thatthe solver will always compute the same result for a given setof constraints independent of which rules are applied. It alsomeans that it does not matter for the result in which order theconstraints arrive at the constraint solver. We give a decidable, sufficient and necessary syntactic conditionfor confluence of terminating CSR programs. Moreover, as shownin this paper, confluence of a program implies consistency ofits logical meaning (under a mild restriction).