## Confluence in Concurrent Constraint Programming (1996)

Venue: | IN ALAGAR AND NIVAT, EDITORS, PROCEEDINGS OF AMAST '95, LNCS 936 |

Citations: | 26 - 12 self |

### BibTeX

@INPROCEEDINGS{Falaschi96confluencein,

author = {Moreno Falaschi and Maurizio Gabbrielli and Kim Marriott and Catuscia Palamidessi},

title = {Confluence in Concurrent Constraint Programming},

booktitle = {IN ALAGAR AND NIVAT, EDITORS, PROCEEDINGS OF AMAST '95, LNCS 936},

year = {1996},

pages = {531--545},

publisher = {Springer}

}

### Years of Citing Articles

### OpenURL

### Abstract

Concurrent constraint programming (ccp), like most of the concurrent paradigms, has a mechanism of global choice which makes computations dependent on the scheduling of processes. This is one of the main reasons why the formal semantics of ccp is more complicated than the one of its deterministic and local-choice sublanguages. In this paper we study various subsets of ccp obtained by adding some restriction on the notion of choice, or by requiring confluency, i.e. independency from the scheduling strategy. We show that it is possible to define simple denotational semantics for these subsets, for various notions of observables. Finally, as an application of our results we develop a framework for the compositional analysis of full ccp. The basic idea is to approximate an arbitrary ccp program by a program in the restricted language, and then analyze the latter, by applying the standard techniques of abstract interpretation to its denotational semantics.

### Citations

3430 | Communication and Concurrency - Milner - 1989 |

2004 |
Abstract interpretation: A unified lattice model for static analysis of programs by construction or approximation of fixpoints
- Cousot, Cousot
- 1977
(Show Context)
Citation Context ... simple denotational model is motivated by the possibility of using such model for the compositional analysis of ccp programs, following standard techniques from the theory of Abstract Interpretation =-=[6]-=-. Our results can also be exploited for full ccp: we can in fact approximate an arbitrary ccp program by a confluent or admissible program (in the sense that every result of the original program is al... |

1418 | A Calculus of Communicating Systems - Milner - 1980 |

813 | The Semantics of Constraint Logic Programs
- Jaffar, Maher, et al.
- 1998
(Show Context)
Citation Context ...n the notion of constraint system. Here we consider an abstract definition of such systems as lattices, following [15] 1 . Other notions of constraint systems, like the one based on First Order Logic =-=[9]-=- can be seen as instances of this definition. All results of this paper still hold, of course, when more concrete systems are considered. A cylindric constraint system is a structure C = hC; ; t; true... |

456 | Concurrent Constraint Programming
- Saraswat, Rinard
- 1990
(Show Context)
Citation Context ... restricted language, and then analyze the latter, by applying the standard techniques of abstract interpretation to its denotational semantics. 1 Introduction Concurrent constraint programming (ccp) =-=[13, 14, 15]-=- is a programming paradigm which elegantly combines logical concepts and concurrency mechanisms. The computational model of ccp is based on the notion of constraint system, which consists of a set of ... |

263 | Semantic foundation of concurrent constraint programming
- Saraswat, Rinard, et al.
- 1991
(Show Context)
Citation Context ... restricted language, and then analyze the latter, by applying the standard techniques of abstract interpretation to its denotational semantics. 1 Introduction Concurrent constraint programming (ccp) =-=[13, 14, 15]-=- is a programming paradigm which elegantly combines logical concepts and concurrency mechanisms. The computational model of ccp is based on the notion of constraint system, which consists of a set of ... |

192 |
Concurrent Constraint Programming Languages
- Saraswat
- 1989
(Show Context)
Citation Context ... restricted language, and then analyze the latter, by applying the standard techniques of abstract interpretation to its denotational semantics. 1 Introduction Concurrent constraint programming (ccp) =-=[13, 14, 15]-=- is a programming paradigm which elegantly combines logical concepts and concurrency mechanisms. The computational model of ccp is based on the notion of constraint system, which consists of a set of ... |

119 | Foundations of Logic Programming, 2nd Edition - LLOYD - 1987 |

76 |
Cylindric Algebras Part
- Henkin, Monk, et al.
- 1985
(Show Context)
Citation Context ...ents of C, respectively 2 . The elements of C are called constraints. 2. Var is a denumerable set of variables (or names), and for each x 2 Var the function 9 x : C ! C is a cylindrification operator =-=[7]-=-, i.e. it satisfies the following properties: (a) 9 x csc, (b) if csd then 9 x cs9 x d , (c) 9 x (c t 9 x d) = 9 x c t 9 x d , (d) 9 x 9 y c = 9 y 9 x c. 3. For each x ; y 2 Var , d xy 2 C is a diagon... |

59 | Proving concurrent constraint programs correct
- Boer, Gabbrielli, et al.
- 1997
(Show Context)
Citation Context ...ery in this paper), which introduced a logic of constraints and formally described it in terms of a lifting of the constraint system C to the power set. A similar lifting was previously introduced in =-=[2]-=-; the difference is that in [2] a notion of (classical) negation was also present. Definition 6.1 ([1]) Given a set of constraints C with typical element c, a property OE is an expression described by... |

50 | A Fully Abstract Model for Concurrent Constraint Programming
- Boer, Palamidessi
- 1991
(Show Context)
Citation Context ...ruct and because of different process schedulings. Like for most of concurrent languages, the presence of guarded nondeterminism causes the denotational semantics of ccp to be rather complicated (see =-=[3]-=- and [15]), and therefore programs are difficult to analyze and to reason about. Various subsets of ccp, which admit a simpler semantics, have been investigated. In particular, determinate ccp [15], w... |

36 |
A Calculus for Communicating Systems, vol- ume 92
- Milner
- 1980
(Show Context)
Citation Context ...property of independence from the selection rule is what we could call confluence in the context of an intrinsically nondeterministic language. Also in Concurrency Theory confluence has been explored =-=[10, 11]-=- as a notion which does not imply determinacy (in the sense that a process can be confluent and still have the choice of performing two different actions which lead to two unrelated continuations. Not... |

31 | Angelic non-determinism in concurrent constraint programming
- Jagadeesan, Shanbhogue, et al.
- 1992
(Show Context)
Citation Context ...yze and to reason about. Various subsets of ccp, which admit a simpler semantics, have been investigated. In particular, determinate ccp [15], where no form of choice is allowed, and local-choice ccp =-=[8]-=-, where choice is allowed, but it does not depend on the external environment (i.e., the choice of the branch does not depend on the present store: the guard is checked after the branch is selected). ... |

30 |
Efficient Analysis of Concurrent Constraint Logic Programs
- Codish, Falaschi, et al.
- 1993
(Show Context)
Citation Context ...t of the latter), and then analyze the latter. A similar transformation 2 was independently proposed in [16]. The idea of using confluence for more efficient program analysis was investigated also in =-=[4]-=-, in the context of concurrent logic programming (with atomic tell). In that paper, the focus was on the analysis based on operational semantics, where confluence is a convenient property because it e... |

27 | Compositional Analysis for Concurrent Constraint Programming
- Falaschi, Gabbrielli, et al.
- 1993
(Show Context)
Citation Context ...s that it is sufficient to analyze only the computations which come from a particular selection rule. Compositional analyses for ccp based on the denotational semantics have also been investigated in =-=[5]-=-. Also in that work programs are approximated so to simplify the semantic description. However our approach is orthogonal to the one followed there, in fact the approximation introduced in that paper ... |

17 | The expressive power of indeterminate dataflow primitives
- Panangaden, Shanbhogue
- 1992
(Show Context)
Citation Context ...onsider the following declaration D defining two producers p1 and p2, which respectively produce a stream of a's and b's of arbitrary length (where a, b are constants), and an agent m (angelic merge, =-=[12]-=-), which non-deterministically merges its two input streams x and y into an output stream z . p1(x ) :- (ask(true) ! 9 x 0 (tell(x = [ajx 0 ]) k p1(x 0 ))) + (ask(true) ! tell(x = [ ])) p2(y) :- (ask(... |

5 | An algebraic perspective of constraint logic programming
- Boer, Pierro, et al.
(Show Context)
Citation Context ... a constraint d iff there exists i 2 f1; :::; ng such that d entails c i . In order to understand better the meaning of such a disjunctive constraint, we summarize here the definitions and results of =-=[1]-=- (although we don't need all that machinery in this paper), which introduced a logic of constraints and formally described it in terms of a lifting of the constraint system C to the power set. A simil... |

2 |
Abstracting synchronisation in concurrent constraint programming
- Zaffanella, Levi, et al.
- 1994
(Show Context)
Citation Context ...nt or admissible program (in the sense that every result of the original program is also a result of the latter), and then analyze the latter. A similar transformation 2 was independently proposed in =-=[16]-=-. The idea of using confluence for more efficient program analysis was investigated also in [4], in the context of concurrent logic programming (with atomic tell). In that paper, the focus was on the ... |

1 |
Communication and Concurrency. Prentice-Hall Int
- Milner
- 1989
(Show Context)
Citation Context ...property of independence from the selection rule is what we could call confluence in the context of an intrinsically nondeterministic language. Also in Concurrency Theory confluence has been explored =-=[10, 11]-=- as a notion which does not imply determinacy (in the sense that a process can be confluent and still have the choice of performing two different actions which lead to two unrelated continuations. Not... |