Concurrent constraint programming

Abstract
This paper presents a new and very rich class of (con- current) programming languages, based on the notion of comput.ing with parhal information, and the con- commitant notions of consistency and entailment.' In this framework, computation emerges from the inter- action of concurrently executing agents that communi- cate by placing, checking and instantiating constraints on shared variables. Such a view of computation is in- teresting in the context of programming languages be- cause of the ability to represent and manipulate partial information about the domain of discourse, in the con- text of concurrency because of the use of constraints for communication and control, and in the context of AI because of the availability of simple yet powerful mechanisms for controlling inference, and the promise that very rich representational/programming languages, sharing the same set of abstract properties, may be pos- sible. vides a general-and elegant-alternative approach to "value-passing" in CCS. At the same time it adequately captures the framework of committed choice concurrent logic programming languages. We present the rules of behavior for cc agents, motivate a notion of "visible ac- tion" for them, and develop the notion of c-trees and re- active congruence analogous to Milner's synchronization trees and observational congruence. We also present an equational characterization of reactive congruence for Finitary cc( J. ,+).