Skip to main content

Truly concurrent constraint programming

  • Conference paper
  • First Online:
CONCUR '96: Concurrency Theory (CONCUR 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1119))

Included in the following conference series:

  • 143 Accesses

Abstract

Concurrent Constraint Programming (CCP) is a powerful computation model for concurrency obtained by internalizing the notion of computation via deduction over (first-order) systems of partial information (constraints). In [SRP91] a semantics for indeterminate CCP was given via sets of bounded trace operators; this was shown to be fully abstract with respect to observing all possible quiescent stores (=final states) of the computation. Bounded trace operators constitute a certain class of (finitary) “invertible” closure operators over a downward closed sublattice. They can be thought of as generated via the grammar: t::=c ¦ ct¦ c∧t where c ranges over primitive constraints, ∧ is conjunction and → intuitionistic implication.

We motivate why it is interesting to consider as observable a “causality” relation on the store: what is observed is not just the conjunction of constraints deposited in the store, but also the causal dependencies between these constraints — what constraints were required to be present in the computation before others could be generated. We show that the same construction used to give the “interleaving” semantics in [SRP91] can be used to give a true-concurrency semantics provided that denotations are taken to be sets of bounded closure operators, which can be generated via the grammar k::=c ¦ c → k ¦ k∧k

Thus we obtain a denotational semantics for CCP fully-abstract with respect to observing this “causality” relation on constraints. This semantics differs from the earlier semantics in preserving more fine-grained structure of the computation; in particular the Interleaving Law (aP) ∥ (bQ)=(a → (P ∥ (bQ))) p[ (b → (Q ∥ (aP))) (1) is not verified (□ is indeterminate choice). Relationships between such a denotational approach to true concurrency and different powerdomain constructions are explored.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Abramsky. Domain theory in logical form. Annals of Pure and Applied Logic, 51:1–77, 1991.

    Google Scholar 

  2. L. Aceto and M. Hennessy. Towards action-refinement in process algebras. In Proceedings, Fourth Annual Symposium on Logic in Computer Science, pages 138–145. IEEE Computer Society Press, 1989.

    Google Scholar 

  3. G. Boudol, I. Castellani, Matthew C. Hennessy, and A. Kiehn. A theory of processes with localities. In Proceedings of International Conference on Concurrency Theory, Volume 630 of Lecture Notes in Computer Science, pages 108–122, 1992.

    Google Scholar 

  4. F. S. de Boer, M. Gabrielli, Elena Marchiori, and Catuscia Palamidessi. Proving concurrent programs correct. In Proceedings of the 21st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pages 98–108, 1994.

    Google Scholar 

  5. F. S. de Boer and Catuscia Palamidessi. A fully abstract model for concurrent constraint programming. In Proceedings of TAPSOFT/CAAP, pages 296–319, LNCS 493, 1991.

    Google Scholar 

  6. F. S. de Boer, Catuscia Palamidessi, and Eike Best. Concurrent constraint programming with information removal. In Proceedings of the Concurrent Constraint Programming Workshop, pages 1–13, Venice, 1995.

    Google Scholar 

  7. J. deKleer. An assumption based TMS. Artifical Intelligence, 28:127–162, 1986.

    Google Scholar 

  8. R. de Nicola and M.C.B. Hennessy. Testing equivalences for processes. Theoretical Computer Science, 34:83–133, 1984.

    Google Scholar 

  9. Markus Fromherz and Vijay Saraswat. Model-based computing: Using concurrent constraint programming for modeling and model compilation. In Principles and Practices of Constraint Programming, volume 976 of LNCS, pages 629–635. Springer Verlag, 1995.

    Google Scholar 

  10. Roberto Gorrieri. Refinement, Atomicity, and Transactions for Process Description Languages. PhD thesis, University of Pisa, 1991.

    Google Scholar 

  11. N. Heintze. Set-Based Program analysis. PhD thesis, Carnegie Mellon University, 1992.

    Google Scholar 

  12. Ugo Montanari and Francesca Rossi. True concurrency semantics for concurrent constraint programminmg. In V. Saraswat and K. Ueda, editors, Proc. of the 1991 International Logic Programming Symposium, 1991.

    Google Scholar 

  13. Ugo Montanari and Francesca Rossi. A concurrent semantics for concurrent constraint programs via contextual nets. In Principles and Pranctices of Constraint Programming, pages 3–27, 1995.

    Google Scholar 

  14. G.D. Plotkin. A powerdomain construction. SIAM J. of Computing, 5(3):452–487, September 1976.

    Google Scholar 

  15. V.R. Pratt. Modeling concurrency with partial orders. Int. J. of Parallel Programming, 15(1):33–71, February 1986.

    Google Scholar 

  16. Vijay A. Saraswat. The Category of Constraint Systems is Cartesian-closed. In Proc. 7th IEEE Symp. on Logic in Computer Science, Santa Cruz, 1992.

    Google Scholar 

  17. Vijay A. Saraswat. Concurrent constraint programming. Doctoral Dissertation Award and Logic Programming Series. MIT Press, 1993.

    Google Scholar 

  18. M. B. Smyth. Powerdomains. Journal of Computer and System Sciences, 16:23–36, February 1978.

    Google Scholar 

  19. Vijay A. Saraswat and Martin Rinard. Concurrent constraint programming. In Proceedings of Seventeenth ACM Symposium on Principles of Programming Languages, San Fransisco, January 1990.

    Google Scholar 

  20. V. A. Saraswat, M. Rinard, and P. Panangaden. Semantic foundations of concurrent constraint programming. In Proceedings of Eighteenth ACM Symposium on Principles of Programming Languages, Orlando, January 1991.

    Google Scholar 

  21. Rob van Glabbeek and Frits Vaandrager. Petri net models for algebraic theories of concurrency. In Proceedings of PARLE, Volume 259 of the Lecture Notes in Computer Science, pages 224–242, 1987.

    Google Scholar 

  22. Walter Vogler. Modular Construction and Partial Order Semantics of Petri Nets, volume 625 of LNCS. Springer-Verlag, 1992. 252 pp.

    Google Scholar 

  23. Glynn Winskel. Event structures. In Petri Nets: Applications and Relationships to Other Models of Concurrency, Volume 255 of Lecture Notes in Computer Science, pages 325–392, 1987.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ugo Montanari Vladimiro Sassone

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gupta, V., Jagadeesan, R., Saraswat, V. (1996). Truly concurrent constraint programming. In: Montanari, U., Sassone, V. (eds) CONCUR '96: Concurrency Theory. CONCUR 1996. Lecture Notes in Computer Science, vol 1119. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61604-7_65

Download citation

  • DOI: https://doi.org/10.1007/3-540-61604-7_65

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61604-7

  • Online ISBN: 978-3-540-70625-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics