Skip to main content

Notes on Timed Concurrent Constraint Programming

  • Chapter
  • 2128 Accesses

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

Abstract

A constraint is a piece of (partial) information on the values of the variables of a system. Concurrent constraint programming (ccp) is a model of concurrency in which agents (also called processes) interact by telling and asking information (constraints) to and from a shared store (a constraint). Timed (or temporal) ccp (tccp) extends ccp by agents evolving over time. A distinguishing feature of tccp, is that it combines in one framework an operational and algebraic view from process algebra with a declarative view based upon temporal logic. Tccp has been widely used to specify, analyze and program reactive systems.

This note provides a comprehensive introduction to the background for and central notions from the theory of tccp. Furthermore, it surveys recent results on a particular tccp calculus, ntcc, and it provides a classification of the expressive power of various tccp languages.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, M.: The power of temporal proofs. Theoretical Computer Science 65, 35–84 (1989)

    Article  MATH  MathSciNet  Google Scholar 

  2. Berry, G., Gonthier, G.: The ESTEREL synchronous programming language: design, semantics, implementation. Science of Computer Programming 19(2), 87–152 (1992)

    Article  MATH  Google Scholar 

  3. Buchi, J.R.: On a decision method in restricted second order arithmetic. In: Proc. Int. Cong. on Logic, Methodology, and Philosophy of Science, pp. 1–11. Stanford University Press, Stanford (1962)

    Google Scholar 

  4. de Boer, F., Gabbrielli, M., Chiara, M.: A temporal logic for reasoning about timed concurrent constraint programs. In: TIME 2001. IEEE Press, Los Alamitos (2001)

    Google Scholar 

  5. de Boer, F., Gabbrielli, M., Meo, M.C.: A timed concurrent constraint language. Information and Computation 161, 45–83 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  6. de Boer, F., Di Pierro, A., Palamidessi, C.: Nondeterminism and infinite computations in constraint programming. Theoretical Computer Science 151(1), 37–78 (1995)

    Article  MATH  MathSciNet  Google Scholar 

  7. de Boer, F.S., Gabbrielli, M., Marchiori, E., Palamidessi, C.: Proving concurrent constraint programs correct. ACM Transactions on Programming Languages and Systems 19(5) (1997)

    Google Scholar 

  8. Diaz, J.F., Rueda, C., Valencia, F.: A calculus for concurrent processes with constraints. CLEI Electronic Journal 1(2) (1998)

    Google Scholar 

  9. Dierks, H.: A process algebra for real-time programs. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 66–81. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  10. Fernádez, D., Quintero, L.: VIN: An ntcc visual language for LEGO Robots. BSc Thesis, Universidad Javeriana-Cali, Colombia (2003), http://www.brics.dk/~fvalenci/ntcc-tools

  11. Fredslund, J.: The assumption architecture. Progress Report, Department of Computer Science, University of Aarhus (1999)

    Google Scholar 

  12. Gilbert, D., Palamidessi, C.: Concurrent constraint programming with process mobility. In: Palamidessi, C., Moniz Pereira, L., Lloyd, J.W., Dahl, V., Furbach, U., Kerber, M., Lau, K.-K., Sagiv, Y., Stuckey, P.J. (eds.) CL 2000. LNCS (LNAI), vol. 1861, pp. 463–477. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  13. Gupta, V., Jagadeesan, R., Panangaden, P.: Stochastic processes as concurrent constraint programs. In: Symposium on Principles of Programming Languages, pp. 189–202 (1999)

    Google Scholar 

  14. Gupta, V., Jagadeesan, R., Saraswat, V.A.: Computing with continuous change. Science of Computer Programming 30(1-2), 3–49 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  15. Halbwachs, N.: Synchronous programming of systems. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, pp. 1–16. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  16. Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data-flow programming language LUSTRE. Proc. of the IEEE 79(9), 1305–1320 (1991)

    Article  Google Scholar 

  17. Haridi, S., Janson, S.: Kernel andorra prolog and its computational model. In: Proc. of the International Conference on Logic Programming, pp. 301–309. MIT Press, Cambridge (1990)

    Google Scholar 

  18. Van Hentenryck, P., Saraswat, V., Deville, Y.: Constraint processing in cc(fd). In: Podelski, A. (ed.) Constraint Programming: Basics and Trends. LNCS, vol. 910. Springer, Heidelberg (1995)

    Google Scholar 

  19. Hoare, C.A.R.: Communications Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)

    Google Scholar 

  20. Hurtado, R., Muñoz, M.: LMAN: An ntcc Abstract Machine for LEGO Robots. BScThesis, Universidad Javeriana-Cali, Colombia (2003), http://www.brics.dk/~fvalenci/ntcc-tools

  21. Lund, H.H., Pagliarini, L.: Robot soccer with LEGO mindstorms. In: Asada, M., Kitano, H. (eds.) RoboCup 1998. LNCS (LNAI), vol. 1604, pp. 141–151. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  22. Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems, Specification. Springer, Heidelberg (1991)

    MATH  Google Scholar 

  23. Maraninchi, F.: Operational and compositional semantics of synchronous automaton compositions. In: Cleaveland, W.R. (ed.) CONCUR 1992. LNCS, vol. 630, pp. 550–564. Springer, Heidelberg (1992)

    Chapter  Google Scholar 

  24. Mendler, N.P., Panangaden, P., Scott, P.J., Seely, R.A.G.: A logical view of concurrent constraint programming. Nordic Journal of Computing 2(2), 181–220 (1995)

    MATH  MathSciNet  Google Scholar 

  25. Milner, R.: Communication and Concurrency. International Series in Computer Science. Prentice Hall, Englewood Cliffs (1989); SU Fisher Research 511/24

    MATH  Google Scholar 

  26. Milner, R.: A finite delay operator in synchronous ccs. Technical Report CSR-116-82, University of Edinburgh (1992)

    Google Scholar 

  27. Milner, R.: Communicating and Mobile Systems: the π-calculus. Cambridge University Press, Cambridge (1999)

    Google Scholar 

  28. Montanari, U.: Networks of constraints: Fundamental properties and applications to picture processing. Information Science 7 (1974)

    Google Scholar 

  29. Nielsen, M., Palamidessi, C., Valencia, F.: On the expressive power of concurrent constraint programming languages. In: Proc. of PPDP 2002, pp. 156–167. ACM Press, New York (2002)

    Chapter  Google Scholar 

  30. Nielsen, M., Palamidessi, C., Valencia, F.: Temporal concurrent constraint programming: Denotation, logic and applications. Nordic Journal of Computing 9(2), 145–188 (2002)

    MATH  MathSciNet  Google Scholar 

  31. Nielsen, M., Valencia, F.: Temporal Concurrent Constraint Programming: Applications and Behavior. In: Brauer, W., Ehrig, H., Karhumäki, J., Salomaa, A. (eds.) Formal and Natural Computing. LNCS, vol. 2300, pp. 298–324. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  32. Palamidessi, C., Valencia, F.: A temporal concurrent constraint programming calculus. In: Walsh, T. (ed.) CP 2001. LNCS, vol. 2239, p. 302. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  33. Petri, C.A.: Fundamentals of a theory of asynchronous information flow. In: Proc. IFIP Congress 1962 (1962)

    Google Scholar 

  34. Post, E.L.: A variant of a recursively unsolvable problem. Bulletin of the American Mathematical Society 52, 264–268 (1946)

    Article  MATH  MathSciNet  Google Scholar 

  35. Reed, G.M., Roscoe, A.W.: A timed model for communication sequential processes. Theoretical Computer Science 8, 249–261 (1988)

    Article  MathSciNet  Google Scholar 

  36. Rossi, F., Montanari, U.: Concurrent semantics for concurrent constraint programming. In: Constraint Programming: Proc. 1993 NATO ASI, pp. 181–220 (1994)

    Google Scholar 

  37. Réty, J.H.: Distributed concurrent constraint programming. Fundamenta Informaticae 34(3) (1998)

    Google Scholar 

  38. Rueda, C., Valencia, F.: Proving musical properties using a temporal concurrent constraint calculus. In: Proc. of the 28th International Computer Music Conference (ICMC 2002) (2002)

    Google Scholar 

  39. Saraswat, V.: Concurrent Constraint Programming. The MIT Press, Cambridge (1993)

    Google Scholar 

  40. Saraswat, V., Jagadeesan, R., Gupta, V.: Foundations of timed concurrent constraint programming. In: Proc. of LICS 1994, pp. 71–80 (1994)

    Google Scholar 

  41. Saraswat, V., Jagadeesan, R., Gupta, V.: Programming in timed concurrent constraint languages. In: Constraint Programming. NATO Advanced Science Institute Series, pp. 361–410. Springer, Heidelberg (1994)

    Google Scholar 

  42. Saraswat, V., Jagadeesan, R., Gupta, V.: Default timed concurrent constraint programming. In: Proc. of POPL 1995, pp. 272–285 (1995)

    Google Scholar 

  43. Saraswat, V., Jagadeesan, R., Gupta, V.: Timed default concurrent constraint programming. Journal of Symbolic Computation 22(5–6), 475–520 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  44. Saraswat, V., Jagadeesan, R., Gupta, V.: jcc: Integrating timed default concurrent constraint programming into java (2003), http://www.cse.psu.edu/~saraswat/jcc.html

  45. Saraswat, V., Rinard, M., Panangaden, P.: The semantic foundations of concurrent constraint programming. In: POPL 1991, pp. 333–352 (1991)

    Google Scholar 

  46. Shapiro, E.: The Family of Concurrent Logic Programming Languages. Computing Surveys 21(3), 413–510 (1990)

    Article  Google Scholar 

  47. Smolka, G.: A Foundation for Concurrent Constraint Programming. In: Jouannaud, J.-P. (ed.) CCL 1994. LNCS, vol. 845. Springer, Heidelberg (1994) (invited talk)

    Chapter  Google Scholar 

  48. Smolka, G.: The Oz programming model. In: van Leeuwen, J. (ed.) Computer Science Today. LNCS, vol. 1000, pp. 324–343. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  49. Tini, S.: On the expressiveness of timed concurrent constraint programming. Electronics Notes in Theoretical Computer Science (1999)

    Google Scholar 

  50. Tini, S.: An axiomatic semantics for the synchronous language gentzen. In: Honsell, F., Miculan, M. (eds.) FOSSACS 2001. LNCS, vol. 2030, p. 394. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  51. Valencia, F.: Temporal Concurrent Constraint Programming. PhD thesis, BRICS, University of Aarhus (2003)

    Google Scholar 

  52. Valencia, F.: Timed concurrent constraint programming: Decidability results and their application to LTL. In: Palamidessi, C. (ed.) ICLP 2003. LNCS, vol. 2916, pp. 422–437. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  53. Yi, W.: A Calculus for Real Time Systems. PhD thesis, Chalmers Institute of Technology, Sweden (1991)

    Google Scholar 

  54. Zuberek, W.M.: Timed petri nets and preliminary performance evaluation. In: Proc. of the 7th Annual Symposium on Computer Architecture, pp. 88–96. ACM and IEEE (1980)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Nielsen, M., Valencia, F.D. (2004). Notes on Timed Concurrent Constraint Programming. In: Desel, J., Reisig, W., Rozenberg, G. (eds) Lectures on Concurrency and Petri Nets. ACPN 2003. Lecture Notes in Computer Science, vol 3098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27755-2_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-27755-2_20

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22261-3

  • Online ISBN: 978-3-540-27755-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics