Skip to main content

Concurrency and Concurrent Constraint Programming

  • Conference paper
  • First Online:

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

Abstract

The intent of this paper is to provide the basic ideas and the possible alternatives underlying the task of giving a semantics to a concurrent system/language, and to describe a particular approach which makes some specific choices in order to give a semantics to the class of CC languages. In particular, we will discuss how to handle the issues of concurrency and nondeterminism, and we will examine in detail the formalism of Petri nets, which, suitably extended, we will then use for CC languages. In our semantics for CC programs, the meaning of a program is in fact a net where the concurrency present in all computations, as well as the nondeterminism, can be naturally seen. We will also point out several extension of the basic semantics, that can be used for more complex classes of CC languages, like those with atomic tells, or with two kinds of nondeterminism.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [BdlBH+94a] F. Bueno, M. Jose Garcia de la Banda, M. Hermenegildo, U. Montanari, and F. Rossi. From eventual to atomic and locally atomic cc programs: A concurrent semantics. In Proc. Int. Conference on Algebraic and Logic Programming (ALP94), 1994.

    Google Scholar 

  2. [BdlBH+94b] F. Bueno, M. Jose Garcia de la Banda, M. Hermenegildo, F. Rossi, and U. Montanari. Towards true concurrency semantics based transformation between clp and cc. In Proc. second Int. Workshop on Principles and Practice of Constraint Programming (PPCP94), 1994.

    Google Scholar 

  3. J. Bergstra and W. Klop. Process algebra for sunchronous communication. Information and Control, 60, 1984.

    Google Scholar 

  4. F.S. De Boer and C. Palamidessi. A fully abstract model for concurrent constraint programming. In Proc. CAAP. Springer-Verlag, 1991.

    Google Scholar 

  5. P. Cousot and R. Cousot. Abstract interpretation and application to logic programming. The Journal of Logic Programming, 13 (2 and 3), 1992.

    Google Scholar 

  6. P. Darondeau and P. Degano. Causal trees. In Proc. ICALP. Springer Verlag, LNCS 372, 1989.

    Google Scholar 

  7. P. Degano, R. De Nicola, and U. Montanari. Concurrent histories: A basis for observing distributed systems. Journal of Computer and System Science, 34, 1987. or[DNM90] P. Degano, R. De Nicola, and U. Montanari. A partial ordering semantics for CCS. Theoretical Computer Science, pages 223–262, 1990.

    Google Scholar 

  8. M. Hennessy. Algebraic Theory of Processes. MIT Press, 1988.

    Google Scholar 

  9. C.A.R. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.

    Google Scholar 

  10. R. Milner. A Calculus of Communicating Systems. Springer Verlag, LNCS 92, 1980.

    Google Scholar 

  11. R. Milner. Communication and Concurrency. Prentice Hall, 1989.

    Google Scholar 

  12. U. Montanari and F. Rossi. Contextual nets. Acta Informatica. To appear.

    Google Scholar 

  13. U. Montanari and F. Rossi. Contextual occurrence nets and concurrent constraint programming. In Proc. Dagstuhl Seminar on Graph Transformations in Computer Science. Springer-Verlag, LNCS, 1993.

    Google Scholar 

  14. U. Montanari and F. Rossi. A concurrent semantics for concurrent constraint programming via contextual nets. In Proc. 1st Workshop on Principles and Practice of Constraint Programming (PPCP93). MIT Press, 1994.

    Google Scholar 

  15. U. Montanari, F. Rossi, and V. Saraswat. CC Programs with both In-and Non-Determinism: A Concurrent Semantics. In Proc. second International Workshop on Principles and Practice of Constraint Programming (PPCP94). Springer-Verlag, LNCS, 1994.

    Google Scholar 

  16. M. Nielsen, G. Plotkin, and G. Winskel. Petri Nets, Event Structures and Domains, part 1. Theoretical Computer Science, 1981. Vol.13.

    Google Scholar 

  17. C.A. Petri. Concurrency. In Net Theory and Applications. Springer-Verlag, LNCS 84, 1980.

    Google Scholar 

  18. V. Pratt. Modelling Concurrency with Partial Orders. International Journal of Parallel Programming, 1986. Vol.15.

    Google Scholar 

  19. W. Reisig. Petri Nets: An Introduction. EATCS Monographs on Theoretical Computer Science. Springer Verlag, 1985.

    Google Scholar 

  20. F. Rossi and U. Montanari. Concurrent semantics for concurrent constraint programming. In J. Penjam B. Mayoh, E. Tyugu, editor, Constraint Programming. NATO ASI Series, 1994.

    Google Scholar 

  21. F. Rossi. Constraints and Concurrency. PhD thesis, University of Pisa, TD-14/93, 1993.

    Google Scholar 

  22. V.A. Saraswat. Concurrent Constraint Programming. MIT Press, 1993.

    Google Scholar 

  23. D. S. Scott. Domains for denotational semantics. In Proc. ICALP. Springer-Verlag, 1982.

    Google Scholar 

  24. V. A. Saraswat and M. Rinard. Concurrent constraint programming. In Proc. POPL. ACM, 1990.

    Google Scholar 

  25. V. A. Saraswat, M. Rinard, and P. Panangaden. Semantic foundations of concurrent constraint programming. In Proc. POPL. ACM, 1991.

    Google Scholar 

  26. G. Winskel. Event structures. In Petri nets: applications and relationships to other models of concurrency. Springer-Verlag, LNCS 255, 1986.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Andreas Podelski

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Montanari, U., Rossi, F. (1995). Concurrency and Concurrent Constraint Programming. In: Podelski, A. (eds) Constraint Programming: Basics and Trends. TCS School 1994. Lecture Notes in Computer Science, vol 910. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-59155-9_10

Download citation

  • DOI: https://doi.org/10.1007/3-540-59155-9_10

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-59155-9

  • Online ISBN: 978-3-540-49200-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics