ABSTRACT
Timed Concurrent Constraint Programming (tcc) is a declarative model for concurrency offering a logic for specifying reactive systems, i.e. systems that continuously interact with the environment. The universal tcc formalism (utcc) is an extension of tcc with the ability to express mobility. Here mobility is understood as communication of private names as typically done for mobile systems and security protocols. In this paper we consider the denotational semantics for tcc, and we extend it to a "collecting" semantics for utcc based on closure operators over sequences of constraints. Relying on this semantics, we formalize the first general framework for data flow analyses of tcc and utcc programs by abstract interpretation techniques. The concrete and abstract semantics we propose are compositional, thus allowing us to reduce the complexity of data flow analyses. We show that our method is sound and parametric w.r.t. the abstract domain. Thus, different analyses can be performed by instantiating the framework. We illustrate how it is possible to reuse abstract domains previously defined for logic programming, e.g., to perform a groundness analysis for tcc programs. We show the applicability of this analysis in the context of reactive systems. Furthermore, we make also use of the abstract semantics to exhibit a secrecy flaw in a security protocol. We have developed a prototypical implementation of our methodology and we have implemented the abstract domain for security to perform automatically the secrecy analysis.
- T. Armstrong, K. Marriott, P. Schachte, and H. Søndergaard. Two classes of Boolean functions for dependency analysis. Science of Computer Programming, 31(1), 1998. Google Scholar
Digital Library
- G. Berry and G. Gonthier. The ESTEREL synchronous programming language: Design, semantics, implementation. Science of Computer Programming, 19(2):87--152, 1992. Google Scholar
Digital Library
- B. Blanchet. Security protocols: from linear to classical logic by abstract interpretation. Inf. Process. Lett., 95(5):473--479, 2005.Google Scholar
Digital Library
- M. Codish and B. Demoen. Deriving polymorphic type dependencies for logic programs using multiple incarnations of prop. In Proc. of SAS'94, pages 281--296. Springer-Verlag, LNCS 864, 1994.Google Scholar
- M. Codish, H. Søndergaard, and P. Stuckey. Sharing and groundness dependencies in logic programs. ACM Trans. Program. Lang. Syst., 21(5), 1999. Google Scholar
Digital Library
- P. Cousot and R. Cousot. Abstract Interpretation and Applications to Logic Programs. Journal of Logic Programming, 13(2&3):103--179, 1992. Google Scholar
Digital Library
- F. de Boer, M. Gabbrielli, and M.C. Meo. A timed concurrent constraint language. Information and Computation, 161(1):45--83, 2000. ALP, 21(2-3), 2008. Google Scholar
Digital Library
- F.S. de Boer, A.D. Pierro, and C. Palamidessi. Nondeterminism and infinite computations in constraint programming. Theor. Comput. Sci., 151(1):37--78, 1995. Google Scholar
Digital Library
- D. Denning and G. Sacco. Timestamps in key distribution protocols. Commun. ACM, 24(8), 1981. Google Scholar
Digital Library
- D. Dolev and A.C. Yao. On the security of public key protocols. IEEE Transactions on Information Theory, 29(12), 1983.Google Scholar
- M. Falaschi, M. Gabbrielli, K. Marriott, and C. Palamidessi. Compositional analysis for concurrent constraint programming. In Proc. of LICS'93, 1993.Google Scholar
Cross Ref
- M. Falaschi, M. Gabbrielli, K. Marriott, and C. Palamidessi. Confluence in concurrent constraint programming. Theoretical Computer Science, 183(2):281--315, 1997. Google Scholar
Digital Library
- M. Falaschi, C. Olarte, and C. Palamidessi. A framework for abstract interpretation of timed concurrent constraint programs (extended version), 2009. http://www.lix.polytechnique.fr/~colarte/.Google Scholar
- M. Falaschi, C. Olarte, C. Palamidessi, and F. Valencia. Declarative diagnosis of temporal concurrent constraint programs. In Proc. of ICLP'07. Springer LNCS 4670, 2007. Google Scholar
Digital Library
- J. Feret. Abstract interpretation of mobile systems. J. Log. Algebr. Program., 63(1):59--130, 2005.Google Scholar
Cross Ref
- P.-L. Garoche, M. Pantel, and X. Thiroux. Abstract interpretationbased static safety for actors. Journal of Software, 2(3):87--98, 2007.Google Scholar
Cross Ref
- T. Hildebrandt and H.A. Lopez. Types for secure pattern matching with local knowledge in universal concurrent constraint programming. In Proc. of ICLP'09. Springer LNCS, 2009. Google Scholar
Digital Library
- R. Jagadeesan, W. Marrero, C. Pitcher, and V.A. Saraswat. Timed constraint programming: a declarative approach to usage control. In Proc. of PPDP'05. ACM, 2005. Google Scholar
Digital Library
- H. Lopez, C. Olarte, and J.A. Perez. Towards a unified framework for declarative structured communications. In Proc. of PLACES'09, 2009.Google Scholar
- G. Lowe. Breaking and fixing the Needham-Schroeder public-key protocol using FDR. In Proc. of TACAS'96. LNCS, 1996. Google Scholar
Digital Library
- N.P. Mendler, P. Panangaden, P.J. Scott, and R.A.G. Seely. A logical view of concurrent constraint programming. Nord. J. Comput., 2(2):181--220, 1995. Google Scholar
Digital Library
- R. Milner. Communicating and Mobile Systems: the pi-calculus. Cambridge University Press, 1999. Google Scholar
Digital Library
- M. Nielsen, C. Palamidessi, and F. Valencia. Temporal concurrent constraint programming: Denotation, logic and applications. Nordic Journal of Computing, 9(1):145--188, 2002. Google Scholar
Digital Library
- C. Olarte and C. Rueda. A declarative language for dynamic multimedia interaction systems. In Proc of. MCM'09. Springer, 2009.Google Scholar
- C. Olarte, C. Rueda, and F. Valencia. Concurrent constraint programming: Calculi, languages and emerging applications. Newsletter of the ALP, 21(2-3), 2008.Google Scholar
- C. Olarte and F. Valencia. The expressivity of universal timed CCP: Undecidability of monadic FLTL and closure operators for security. In Proc. of PPDP 08. ACM, 2008. Google Scholar
Digital Library
- C. Olarte and F. Valencia. Universal concurrent constraint programming: Symbolic semantics and applications to security. In Proc. of SAC'08. ACM, 2008. Google Scholar
Digital Library
- V. Saraswat, R. Jagadeesan, and V. Gupta. Foundations of timed concurrent constraint programming. In Proc. of LICS'94. IEEE Computer Society, 1994.Google Scholar
Cross Ref
- V. Saraswat, M. Rinard, and P. Panangaden. Semantic foundation of Concurrent Constraint Programming. In POPL'91. ACM, 1991. Google Scholar
Digital Library
- D.X. Song, S. Berezin, and A. Perrig. Athena: A novel approach to efficient automatic security protocol analysis. Journal of Computer Security, 9(1/2):47--74, 2001. Google Scholar
Digital Library
- S. Tini. On the expressiveness of timed concurrent constraint programming. Electr. Notes Theor. Comput. Sci., 27, 1999.Google Scholar
- E. Zaffanella, R. Giacobazzi, and G. Levi. Abstracting synchronization in concurrent constraint programming. Journal of Functional and Logic Programming, 1997(6), 1997.Google Scholar
Index Terms
- A framework for abstract interpretation of timed concurrent constraint programs
Recommendations
Decidability of infinite-state timed CCP processes and first-order LTL
Expressiveness in concurrencyThe ntcc process calculus is a timed concurrent constraint programming (ccp) model equipped with a first-order linear-temporal logic (LTL) for expressing process specifications. A typical behavioral observation in ccp is the strongest postcondition (sp)...
Abstract interpretation of resolution-based semantics
We extend the abstract interpretation point of view on context-free grammars by Cousot and Cousot to resolution-based logic programs and proof systems. Starting from a transition-based small-step operational semantics of Prolog programs (akin to the ...
Specification and Verification of Concurrent Programs Through Refinements
We present a framework for the specification and verification of reactive concurrent programs using general-purpose mechanical theorem proving. We define specifications for concurrent programs by formalizing a notion of refinements analogous to ...





Comments