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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Abadi, M.: The power of temporal proofs. Theoretical Computer Science 65, 35–84 (1989)
Berry, G., Gonthier, G.: The ESTEREL synchronous programming language: design, semantics, implementation. Science of Computer Programming 19(2), 87–152 (1992)
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)
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)
de Boer, F., Gabbrielli, M., Meo, M.C.: A timed concurrent constraint language. Information and Computation 161, 45–83 (2000)
de Boer, F., Di Pierro, A., Palamidessi, C.: Nondeterminism and infinite computations in constraint programming. Theoretical Computer Science 151(1), 37–78 (1995)
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)
Diaz, J.F., Rueda, C., Valencia, F.: A calculus for concurrent processes with constraints. CLEI Electronic Journal 1(2) (1998)
Dierks, H.: A process algebra for real-time programs. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 66–81. Springer, Heidelberg (2000)
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
Fredslund, J.: The assumption architecture. Progress Report, Department of Computer Science, University of Aarhus (1999)
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)
Gupta, V., Jagadeesan, R., Panangaden, P.: Stochastic processes as concurrent constraint programs. In: Symposium on Principles of Programming Languages, pp. 189–202 (1999)
Gupta, V., Jagadeesan, R., Saraswat, V.A.: Computing with continuous change. Science of Computer Programming 30(1-2), 3–49 (1998)
Halbwachs, N.: Synchronous programming of systems. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, pp. 1–16. Springer, Heidelberg (1998)
Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data-flow programming language LUSTRE. Proc. of the IEEE 79(9), 1305–1320 (1991)
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)
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)
Hoare, C.A.R.: Communications Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)
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
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)
Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems, Specification. Springer, Heidelberg (1991)
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)
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)
Milner, R.: Communication and Concurrency. International Series in Computer Science. Prentice Hall, Englewood Cliffs (1989); SU Fisher Research 511/24
Milner, R.: A finite delay operator in synchronous ccs. Technical Report CSR-116-82, University of Edinburgh (1992)
Milner, R.: Communicating and Mobile Systems: the π-calculus. Cambridge University Press, Cambridge (1999)
Montanari, U.: Networks of constraints: Fundamental properties and applications to picture processing. Information Science 7 (1974)
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)
Nielsen, M., Palamidessi, C., Valencia, F.: Temporal concurrent constraint programming: Denotation, logic and applications. Nordic Journal of Computing 9(2), 145–188 (2002)
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)
Palamidessi, C., Valencia, F.: A temporal concurrent constraint programming calculus. In: Walsh, T. (ed.) CP 2001. LNCS, vol. 2239, p. 302. Springer, Heidelberg (2001)
Petri, C.A.: Fundamentals of a theory of asynchronous information flow. In: Proc. IFIP Congress 1962 (1962)
Post, E.L.: A variant of a recursively unsolvable problem. Bulletin of the American Mathematical Society 52, 264–268 (1946)
Reed, G.M., Roscoe, A.W.: A timed model for communication sequential processes. Theoretical Computer Science 8, 249–261 (1988)
Rossi, F., Montanari, U.: Concurrent semantics for concurrent constraint programming. In: Constraint Programming: Proc. 1993 NATO ASI, pp. 181–220 (1994)
Réty, J.H.: Distributed concurrent constraint programming. Fundamenta Informaticae 34(3) (1998)
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)
Saraswat, V.: Concurrent Constraint Programming. The MIT Press, Cambridge (1993)
Saraswat, V., Jagadeesan, R., Gupta, V.: Foundations of timed concurrent constraint programming. In: Proc. of LICS 1994, pp. 71–80 (1994)
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)
Saraswat, V., Jagadeesan, R., Gupta, V.: Default timed concurrent constraint programming. In: Proc. of POPL 1995, pp. 272–285 (1995)
Saraswat, V., Jagadeesan, R., Gupta, V.: Timed default concurrent constraint programming. Journal of Symbolic Computation 22(5–6), 475–520 (1996)
Saraswat, V., Jagadeesan, R., Gupta, V.: jcc: Integrating timed default concurrent constraint programming into java (2003), http://www.cse.psu.edu/~saraswat/jcc.html
Saraswat, V., Rinard, M., Panangaden, P.: The semantic foundations of concurrent constraint programming. In: POPL 1991, pp. 333–352 (1991)
Shapiro, E.: The Family of Concurrent Logic Programming Languages. Computing Surveys 21(3), 413–510 (1990)
Smolka, G.: A Foundation for Concurrent Constraint Programming. In: Jouannaud, J.-P. (ed.) CCL 1994. LNCS, vol. 845. Springer, Heidelberg (1994) (invited talk)
Smolka, G.: The Oz programming model. In: van Leeuwen, J. (ed.) Computer Science Today. LNCS, vol. 1000, pp. 324–343. Springer, Heidelberg (1995)
Tini, S.: On the expressiveness of timed concurrent constraint programming. Electronics Notes in Theoretical Computer Science (1999)
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)
Valencia, F.: Temporal Concurrent Constraint Programming. PhD thesis, BRICS, University of Aarhus (2003)
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)
Yi, W.: A Calculus for Real Time Systems. PhD thesis, Chalmers Institute of Technology, Sweden (1991)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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