Dynamic spaces in concurrent constraint programming

Concurrent constraint programming (CCP) is a declarative model for concurrency where agents interact with each other by posting (telling) and asking constraints (formulas in logic) in a shared store of partial information. With the advent of emergent applications as security protocols, social networ...

Descripción completa

Detalles Bibliográficos
Autores: Nigam, Vivek, Pimentel, Elaine Gouvea, Vega, Carlos Alberto Olarte
Tipo de recurso: artículo
Estado:Versión publicada
Fecha de publicación:2014
País:Brasil
Institución:Universidade Federal do Rio Grande do Norte (UFRN)
Repositorio:Repositório Institucional da UFRN
Idioma:inglés
OAI Identifier:oai:repositorio.ufrn.br:123456789/29778
Acceso en línea:https://repositorio.ufrn.br/jspui/handle/123456789/29778
Access Level:acceso abierto
Palabra clave:Concurrent Constraint Programming
Linear Logic
Subexponentials
Mobility
Distributed Spaces
Descripción
Sumario:Concurrent constraint programming (CCP) is a declarative model for concurrency where agents interact with each other by posting (telling) and asking constraints (formulas in logic) in a shared store of partial information. With the advent of emergent applications as security protocols, social networks and cloud computing, the CCP model has been extended in different directions to faithfully model such systems as follows: (1) It has been shown that a name-passing discipline, where agents can communicate local names, can be described through the interplay of local (∃) processes along with universally (∀) quantified asks. This strategy has been used, for instance, to model the generation and communication of fresh values (nonces) in mobile reactive systems as security protocols; and (2) the underlying constraint system in CCP has been enhanced with local stores for the specification of distributed spaces. Then, agents are allowed to share some information with others but keep some facts for themselves. Recently, we have shown that local stores can be neatly represented in CCP by considering a constraint system where constraints are built from a fragment of linear logic with subexponentials (SELL). In this paper, we explore the use of existential (⋓) and universal (⋒) quantification over subexponentials in SELL in order to endow CCP with the ability to communicate location (space) names. The resulting CCP language that we obtain is a model of distributed computation where it is possible to dynamically establish new shared spaces for communication. We thus extend the sort of mobility achieved in (1) –for variables – to dynamically change the shared spaces among agents – (2) above. Finally, we argue that the new CCP language can be used in the specification of service oriented computing systems