Team Contraintes

Members
Overall Objectives
Scientific Foundations
Application Domains
Software
New Results
Other Grants and Activities
Dissemination
Bibliography

Section: New Results

Linear Logic Concurrent Constraint Programming and Constraint Handling Rules

Participants : François Fages, Thierry Martinez, Sylvain Soliman.

We are developing SiLCC an imperative and concurrent constraint programming language based on a single paradigm: the one of Vijay Saraswat's concurrent constraint programming extended with constraint systems based on Jean-Yves Girard's Linear Logic. From a constraint programming point of view, the unique combination of constraint programming with imperative features opens many new possibilities, among which:

The Constraint Handling Rules (CHR) language of Thom Frühwirth shares many similarities with SiLCC. CHR (and its modular version CHRat [21] ) and SiLCC are based on the same model of concurrent computation, where agents communicate through a shared constraint store, with a synchronization mechanism based on constraint entailment. In particular, the Constraint Simplification Rules (CSR) subset of CHR and the flat subset of LCC, where agent nesting is restricted, are very close syntactically and semantically.

In [18] , we analyze these similarities by providing translations between CSR and flat-LCC, on the one hand, and a transformation from the full LCC language to flat-LCC, on the other hand. This transformation is similar to $ \lambda$ -lifting in functional languages. In conjunction with the equivalence between CHR and CSR with respect to naive operational semantics, these results lead to semantics-preserving translations from full LCC to CHR and conversely. Immediate consequences of this work include new proofs for CHR linear logic and phase semantics, relying on corresponding results for LCC, plus an encoding of the $ \lambda$ -calculus in CHR.


previous
next

Logo Inria