## A Confluent Relational Calculus for Higher-Order Programming with Constraints (1994)

Venue: | Proc. 1st Int. Conference on Constraints in Computational Logics (CCL'94 |

Citations: | 6 - 4 self |

### BibTeX

@INPROCEEDINGS{Niehren94aconfluent,

author = {Joachim Niehren and Gert Smolka},

title = {A Confluent Relational Calculus for Higher-Order Programming with Constraints},

booktitle = {Proc. 1st Int. Conference on Constraints in Computational Logics (CCL'94},

year = {1994},

pages = {89--104},

publisher = {Springer-Verlag}

}

### OpenURL

### Abstract

. We present the ae-calculus, a relational calculus parametrized with a logical constraint system. The ae-calculus provides for higherorder relational programming with first-order constraints, and subsumes higher-order functional programming as a special case. It captures important aspects of the concurrent constraint programming language Oz. We prove the uniform confluence of the ae-calculus. Uniform confluence implies that all maximal derivations issuing from a given expression have equal length. But even confluence of a nonfunctional calculus modelling computation with partial information is interesting on its own right. 1 Introduction We present the ae-calculus, a relational calculus parametrized by a logical constraint system. The ae-calculus provides for higher-order relational programming with first-order constraints. The ae-calculus captures interesting aspects of the concurrent constraint programming language Oz [3]. It is a minimalistic subcalculus of the Oz-Calculus [12] wh...

### Citations

369 |
Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems
- Huet
- 1980
(Show Context)
Citation Context ...position. We point out that proofs of uniform confluence are based on local considerations excluding termination. This is possible, since uniform confluence implies Huet's notion of strong confluence =-=[4]-=-. A central contribution of this paper is the proof of the uniform confluence of the ae-calculus. This proof is hard. It is based on a method developed for the ffi -calculus [8]. Additionally, it need... |

182 | A Natural Semantics for Lazy Evaluation
- Launchbury
- 1993
(Show Context)
Citation Context ...s a extension of the ffi -calculus being a minimalistic foundation for relational, concurrent, and object-oriented programming. In particular, it provides for lazy functional programming with sharing =-=[5]-=- integrating concurrent state [1, 6]. The fl-calculus provides for logical variables but not for first-order unification, which would amount to the integration of a tree constraint system. This choice... |

118 | Observable properties of higher order functions that dynamically create local names, or: Whatâ€™s new
- Pitts, Stark
- 1993
(Show Context)
Citation Context ...b are distinct. The ae-calculus ensures that all abstractions are equipped with a unique name. On creation of a new abstraction a new name is created, relying on a mechanism independently proposed in =-=[14, 10, 9]-=-. Without the above invariant, confluence of the ae-calculus would fail. For instance, consider the following expression E being a composition of two abstractions with the same name a: a: x =?sa: y =?... |

63 | A foundation for higher-order concurrent constraint programming
- Smolka
- 1994
(Show Context)
Citation Context ...al programming with first-order constraints. The ae-calculus captures interesting aspects of the concurrent constraint programming language Oz [3]. It is a minimalistic subcalculus of the Oz-Calculus =-=[12]-=- which, in contrast, integrates a variety of paradigms into a single formalism. The Oz-Calculus models functional, object-oriented, constraint-based and logic programming [11]. We prove the uniform co... |

58 | Object-oriented concurrent constraint programming in Oz
- Henz, Smolka, et al.
- 1995
(Show Context)
Citation Context ...b are distinct. The ae-calculus ensures that all abstractions are equipped with a unique name. On creation of a new abstraction a new name is created, relying on a mechanism independently proposed in =-=[14, 10, 9]-=-. Without the above invariant, confluence of the ae-calculus would fail. For instance, consider the following expression E being a composition of two abstractions with the same name a: a: x =?sa: y =?... |

31 | A functional theory of local names - Odersky - 1994 |

22 | A Foundation for Concurrent Constraint Programming - Smolka - 1994 |

7 |
The Oz Handbook
- Henz, Mehl, et al.
- 1994
(Show Context)
Citation Context ...ystem. The ae-calculus provides for higher-order relational programming with first-order constraints. The ae-calculus captures interesting aspects of the concurrent constraint programming language Oz =-=[3]-=-. It is a minimalistic subcalculus of the Oz-Calculus [12] which, in contrast, integrates a variety of paradigms into a single formalism. The Oz-Calculus models functional, object-oriented, constraint... |

3 |
CONcurrency and Functions: Evaluation and Reduction
- L'evy, Thomsen, et al.
- 1992
(Show Context)
Citation Context ...s being a minimalistic foundation for relational, concurrent, and object-oriented programming. In particular, it provides for lazy functional programming with sharing [5] integrating concurrent state =-=[1, 6]-=-. The fl-calculus provides for logical variables but not for first-order unification, which would amount to the integration of a tree constraint system. This choice makes the fl-calculus technically s... |

2 |
Rewrite Systems, volume B, chapter 6
- Dershowitz, Jouannaud
- 1990
(Show Context)
Citation Context ...n expression of a uniformly confluent calculus then all derivations on E have the same length. The proof is based on an inductive argument similar to proving that strong confluence implies confluence =-=[4, 2]-=-. Corollary 7. If E is an expression of a uniformly confluent calculus then normalization on E and strong normalization on E are equivalent. 6 Decomposition of Equivalence Relations We present a metho... |

2 |
Functional computation in a calculus of relational abstraction and application
- Niehren, Smolka
- 1994
(Show Context)
Citation Context ... International Conference on Constraints in Computational Logics, Munich, Germany, September 1994, LNCS 845. Recently, two other minimalistic relational calculi have been proposed: the ffi - calculus =-=[8]-=- and the fl-calculus [13] The ffi -calculus models purely functional computation in a relational setting. It is uniformly confluent and embeds the eager -calculus. The fl-calculus is a extension of th... |

1 |
Nikhil Rishiyur, and Arvind. M-Structures: Extending a Parallel, Non-strict, Functional Language with State
- Barth, S
- 1991
(Show Context)
Citation Context ...s being a minimalistic foundation for relational, concurrent, and object-oriented programming. In particular, it provides for lazy functional programming with sharing [5] integrating concurrent state =-=[1, 6]-=-. The fl-calculus provides for logical variables but not for first-order unification, which would amount to the integration of a tree constraint system. This choice makes the fl-calculus technically s... |