Nondeterminism and Infinite Computations in Constraint Programming

We investigate the semantics of concurrent constraint programming and of various sublanguages, with particular emphasis on nondeterminism and infinite behavior. The aim is to find out what is the minimal structure which a domain must have in order to capture these two aspects. We show that a notion of observables, obtained by the upward-closure of the results of computations, is relatively easy to model even in presence of synchronization. On the contrary, modeling the exact set of results is problematic, even for the simple sublanguage of constraint logic programming. We show that most of the standard topological techniques fail in capturing this more precise notion of observables. The analysis of these failed attempts leads us to consider a categorical approach.

[1]  Vijay A. Saraswat,et al.  Concurrent constraint programming , 1989, POPL '90.

[2]  Dana S. Scott,et al.  Some Domain Theory and Denotational Semantics in Coq , 2009, TPHOLs.

[3]  Joost N. Kok,et al.  A paradigm for asynchronous communication and its application to concurrent constraint programming , 1991 .

[4]  M. A. Nait Abdallah,et al.  On the Interpretation of Infinite Computations in Logic Programming , 1984, ICALP.

[5]  Joxan Jaffar,et al.  Constraint logic programming , 1987, POPL '87.

[6]  Radha Jagadeesan,et al.  Angelic Non-Determinism in Concurrent Constraint Programming , 1991 .

[7]  John Wylie Lloyd,et al.  Foundations of Logic Programming , 1987, Symbolic Computation.

[8]  Benjamin C. Peirce,et al.  Basic Category Theory for Computer Scientists , 1991 .

[9]  Frank S. de Boer,et al.  Semantic Models for Concurrent Logic Languages , 1991, Theor. Comput. Sci..

[10]  Sven-Olof Nyström,et al.  Indeterminate Concurrent Constraint Programming: A Fixpoint Semantics for Non-Terminating Computations , 1993, ILPS.

[11]  Frank S. de Boer,et al.  On the Semantics of Concurrent Constraint Programming , 1992, ALPUK.

[12]  Adrian Walker,et al.  Towards a Theory of Declarative Knowledge , 1988, Foundations of Deductive Databases and Logic Programming..

[13]  Maurizio Gabbrielli,et al.  Proving concurrent constraint programs correct , 1994, POPL '94.

[14]  Giorgio Levi,et al.  Declarative Modeling of the Operational Behavior of Logic Languages , 1989, Theor. Comput. Sci..

[15]  Keith L. Clark Predicate logic as a computational formalism , 1979 .

[16]  Michael J. Maher Logic Semantics for a Class of Committed-Choice Programs , 1987, ICLP.

[17]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[18]  Nicolas Beldiceanu,et al.  Constraint Logic Programming , 1997 .

[19]  J. W. de Bakker,et al.  Processes and the Denotational Semantics of Concurrency , 1982, Inf. Control..

[20]  William G. Golson Toward a Declarative Semantics for Infinite Objects in Logic Programming , 1988, J. Log. Program..

[21]  Maurizio Gabbrielli,et al.  Confluence and Concurrent Constraint Programming , 1994, GULP-PRODE.

[22]  Frank S. de Boer,et al.  A Fully Abstract Model for Concurrent Constraint Programming , 1991, TAPSOFT, Vol.1.

[23]  Michael J. Maher,et al.  Constraint Logic Programming: A Survey , 1994, J. Log. Program..

[24]  A. Tarski,et al.  Cylindric Algebras. Part II , 1988 .

[25]  Ehud Shapiro,et al.  The family of concurrent logic programming languages , 1989, CSUR.

[26]  Robert A. Kowalski,et al.  The Semantics of Predicate Logic as a Programming Language , 1976, JACM.

[27]  Jack Minker Foundations of deductive databases and logic programming , 1988 .