Concurrency, Time, and Constraints

  • Frank D. Valencia
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2916)


Concurrent constraint programming (ccp) is a model of concurrency for systems in which agents (also called processes) interact with one another by telling and asking information in a shared medium. Timed (or temporal) ccp extends ccp by allowing agents to be constrained by time requirements. The novelty of timed ccp is that it combines in one framework an operational and algebraic view based upon process calculi with a declarative view based upon temporal logic. This allows the model to benefit from two well-established theories used in the study of concurrency.

This essay offers an overview of timed ccp covering its basic background and central developments. The essay also includes an introduction to a temporal ccp formalism called the ntcc calculus.


Temporal Logic Inference Rule Operational Semantic Proof System Constraint System 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abadi, M.: The power of temporal proofs. Theoretical Computer Science 65, 35–84 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Bergstra, J.A., Klop, J.W.: Algebra of communicating processes with abstraction. Theoretical Computer Science 37(1), 77–121 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Berry, G., Gonthier, G.: The Esterel synchronous programming language: design, semantics, implementation. Science of Computer Programming 19(2), 87–152 (1992)zbMATHCrossRefGoogle Scholar
  4. 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. 5.
    de Boer, F., Gabbrielli, M., Meo, M.C.: Atimed concurrent constraint language. Information and Computation 161, 45–83 (2000)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    de Boer, F., Di Pierro, A., Palamidessi, C.: Nondeterminism and infinite computations in constraint programming. Theoretical Computer Science 151(1), 37–78 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 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. 8.
    Diaz, J.F., Rueda, C., Valencia, F.: A calculus for concurrent processes with constraints. CLEI Electronic Journal 1(2) (1998)Google Scholar
  9. 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)CrossRefGoogle Scholar
  10. 10.
    Fernádez, D., Quintero. L.: VIN: An ntcc visual language for LEGO Robots. BSc Thesis, Universidad Javeriana-Cali, Colombia (2003),
  11. 11.
    Fredslund, J.: The assumption architecture. Progress Report, Department of Computer Science, University of Aarhus (1999)Google Scholar
  12. 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)CrossRefGoogle Scholar
  13. 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. 14.
    Gupta, V., Jagadeesan, R., Saraswat, V.A.: Computing with continuous change. Science of Computer Programming 30(1-2), 3–49 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Halbwachs, N.: Synchronous programming of systems. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, pp. 1–16. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  16. 16.
    Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data-flowprogramming language LUSTRE. Proc. of the IEEE 79(9), 1305–1320 (1991)CrossRefGoogle Scholar
  17. 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. 18.
    Hoare, C.A.R.: Communications Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)Google Scholar
  19. 19.
    Hurtado, R., Muñoz, M.: LMAN: An ntcc Abstract Machine for LEGO Robots. BSc Thesis, Universidad Javeriana-Cali, Colombia (2003),
  20. 20.
    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)CrossRefGoogle Scholar
  21. 21.
    Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems, Specification. Springer, Heidelberg (1991)zbMATHGoogle Scholar
  22. 22.
    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)CrossRefGoogle Scholar
  23. 23.
    Milner, R.: Communication and Concurrency. International Series in Computer Science. Prentice-Hall, Englewood Cliffs (1989); SU Fisher Research 511/24zbMATHGoogle Scholar
  24. 24.
    Milner, R.: A finite delay operator in synchronous ccs. Technical Report CSR-116-82, University of Edinburgh (1992)Google Scholar
  25. 25.
    Milner, R.: Communicating and Mobile Systems: the π-calculus. Cambridge University Press, Cambridge (1999)Google Scholar
  26. 26.
    Montanari, U.: Networks of constraints: Fundamental properties and applications to picture processing. Information Science 7 (1974)Google Scholar
  27. 27.
    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)CrossRefGoogle Scholar
  28. 28.
    Nielsen, M., Palamidessi, C., Valencia, F.: Temporal concurrent constraint programming: Denotation, logic and applications. Nordic Journal of Computing 9(2), 145–188 (2002)zbMATHMathSciNetGoogle Scholar
  29. 29.
    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)CrossRefGoogle Scholar
  30. 30.
    Palamidessi, C., Valencia, F.: A temporal concurrent constraint programming calculus. In: Walsh, T. (ed.) CP 2001. LNCS, vol. 2239, p. 302. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  31. 31.
    Petri, C.A.: Fundamentals of a theory of asynchronous information flow. In: Proc. IFIP Congress 1962 (1962)Google Scholar
  32. 32.
    Plotkin, G.: A structural approach to operational semantics. Technical Report FN-19, DAIMI, University of Aarhus (1981)Google Scholar
  33. 33.
    Pnueli, A.: The temporal logic of programs. In: Proc. of FOCS 1977. IEEE, pp. 46–57. IEEE Computer Society Press, Los Alamitos (1977)Google Scholar
  34. 34.
    Reed, G.M., Roscoe, A.W.: A timed model for communication sequential processes. Theoretical Computer Science 8, 249–261 (1988)CrossRefMathSciNetGoogle Scholar
  35. 35.
    Rossi, F., Montanari, U.: Concurrent semantics for concurrent constraint programming. In: Constraint Programming: Proc. 1993 NATO ASI, pp. 181–220 (1994)Google Scholar
  36. 36.
    Réty, J.H.: Distributed concurrent constraint programming. Fundamenta Informaticae 34(3) (1998)Google Scholar
  37. 37.
    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
  38. 38.
    Saraswat, V.: Concurrent Constraint Programming. The MIT Press, Cambridge (1993)Google Scholar
  39. 39.
    Saraswat, V., Jagadeesan, R., Gupta, V.: Foundations of timed concurrent constraint programming. In: Proc. of LICS 1994, pp. 71–80 (1994)Google Scholar
  40. 40.
    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
  41. 41.
    Saraswat, V., Jagadeesan, R., Gupta, V.: Default timed concurrent constraint programming. In: Proc. of POPL 1995, pp. 272–285 (1995)Google Scholar
  42. 42.
    Saraswat, V., Jagadeesan, R., Gupta, V.: Timed default concurrent constraint programming. Journal of Symbolic Computation 22(5-6), 475–520 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  43. 43.
    Saraswat, V., Jagadeesan, R., Gupta, V.: jcc: Integrating timed default concurrent constraint programming into java (2003),
  44. 44.
    Saraswat, V., Rinard, M., Panangaden, P.: The semantic foundations of concurrent constraint programming. In: POPL 1991, pp. 333–352 (1991)Google Scholar
  45. 45.
    Shapiro, E.: The Family of Concurrent Logic Programming Languages. Computing Surveys 21(3), 413–510 (1990)CrossRefGoogle Scholar
  46. 46.
    Smolka, G.: A Foundation for Concurrent Constraint Programming. In: Jouannaud, J.-P. (ed.) CCL 1994. LNCS, vol. 845, Springer, Heidelberg (1994) (invited talk)CrossRefGoogle Scholar
  47. 47.
    Smolka, G.: The Oz programming model. In: van Leeuwen, J. (ed.) Computer Science Today. LNCS, vol. 1000, pp. 324–343. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  48. 48.
    Tini, S.: On the expressiveness of timed concurrent constraint programming. Electronics Notes in Theoretical Computer Science (1999)Google Scholar
  49. 49.
    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)CrossRefGoogle Scholar
  50. 50.
    Valencia, F.: Temporal Concurrent Constraint Programming. PhD thesis, BRICS, University of Aarhus (2003)Google Scholar
  51. 51.
    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)CrossRefGoogle Scholar
  52. 52.
    Yi, W.: A Calculus for Real Time Systems. PhD thesis, Chalmers Institute of Technology, Sweden (1991)Google Scholar
  53. 53.
    Zuberek, W.M.: Timed petri nets and preliminary performance evaluation. In: Proc. of the 7th Annual Symposium on Computer Architecture, pp. 88–96. ACM/IEEE (1980)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Frank D. Valencia
    • 1
  1. 1.Dept. of Information TechnologyUppsala UniversityUppsalaSweden

Personalised recommendations