Decentralized execution of constraint handling rules for ensembles

  • Authors:
  • Edmund S. L. Lam;Iliano Cervesato

  • Affiliations:
  • Carnegie Mellon University;Carnegie Mellon University

  • Venue:
  • Proceedings of the 15th Symposium on Principles and Practice of Declarative Programming
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

CHR is a declarative, concurrent and committed choice rule-based constraint programming language. In this paper, we adapt CHR to provide a decentralized execution model for parallel and distributed programs. Specifically, we consider an execution model consisting of an ensemble of computing entities, each with its own constraint store and each capable of communicating with its neighbors. We extend CHR into CHRe, in which rules are executed at a location and are allowed to access the constraint store of its immediate neighbors. We give an operational semantics for CHRe, denoted ω0e, that defines incremental and asynchronous decentralized rewriting for the class of CHRe rules characterized by purely local matching (0-neighbor restricted rules). We show the soundness of the ω0e semantics with respect to the abstract CHR semantics. We then give a safe encoding of the more general 1-neighbor restricted rules as 0-neighbor restricted rules, and discuss how this encoding can be generalized to all CHRe programs.