Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
2010
…
6 pages
1 file
In this doctoral work we aim at developing a new approach to labelled semantics and equivalences for the Concurrent Constraint Programming (CCP) which will enable a broader capture of processes behavioural equivalence. Moreover, we work towards exploiting the strong connection between first order logic and CCP. Something which will allow us to represent logical formulae in terms of CCP processes and verify its logical equivalence by means of our notion of bisimilarity. Finally, following the lines of the Concurrecy Workbench we plan to implement a CCP Workbench based on our theoretical structure.
Foundations of Software Science and Computational Structures, 2011
Concurrent constraint programming (ccp) is a well-established model for concurrency. Bisimilarity is one of the central reasoning techniques in concurrency. The standard definition of bisimilarity, however, is not completely satisfactory for ccp since it yields an equivalence that is too fine grained. By building upon recent foundational investigations, we introduce a labelled transition semantics and a novel notion of bisimilarity that is fully abstract w.r.t. the typical observational equivalence in ccp.
Concurrent constraint programming (CCP) is a well-established model for concurrency that singles out the fundamental aspects of asynchronous systems whose agents (or processes) evolve by posting and querying (partial) information in a global medium. Bisimilarity is a standard behavioral equivalence in concurrency theory. However, only recently a well-behaved notion of bisimilarity for CCP, and a CCP partition refinement algorithm for deciding the strong version of this equivalence have been proposed. Weak bisimilarity is a central behavioral equivalence in process calculi and it is obtained from the strong case by taking into account only the actions that are observable in the system. Typically, the standard ✩ This work has been partially supported by the projects ANR-09-BLAN-0345 CPP, ANR 12IS02001 PACE and ANR-09-BLAN-0169-01 PANDA; and by the French Defense procurement agency (DGA) with a PhD grant.
1997
Compositional semantics allow to reason about programs in an incremental way, providing the basis for the development of modular data-flow analysis. The major drawback of these semantics is their complexity. This observation applies in particular for concurren~ constralm programming ( ccp ). ln this work "-e consider an operational semantics of ccp by using sequences of pairs of finite constramts to represent ccp computatiOns which is equivalent to a denotational semantics, providing the basis for the development o.f an abstract interpretation framework for the analy~i~ of ccp .
Proceedings of the 18th …, 1991
Concurrent constraint programming Sar89,SR90] is a simple and powerful model of concurrent computation based on the notions of store-asconstraint and process as information transducer. The store-as-valuation conception of von Neumann computing is replaced by the notion that the store is a constraint (a nite representation of a possibly in nite set of valuations) which provides partial information about the possible values that variables can take. Instead of \reading" and \writing" the values of variables, processes may now ask (check if a constraint is entailed by the store) and tell (augment the store with a new constraint). This is a very general paradigm which subsumes (among others) nondeterminate data-ow and the (concurrent)(constraint) logic programming languages. This paper develops the basic ideas involved in giving a coherent semantic account of these languages. Our rst contribution is to give a simple and general formulation of the notion that a constraint system is a system of partial information (a la the information systems of Scott). Parameter passing and hiding is handled by borrowing ideas from the cylindric algebras of Henkin, Monk and Tarski to introduce diagonal elements and \cylindri cation" operations (which mimic the projection of information induced by existential quanti ers).
[1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science
We propose a framework for the analysis of concurrent constraint programming (ccp). Our approach is based on simple denotational semantics which approximate the usual semantics in the sense that they give a superset of the input-output relation of a ccp program. Analyses based on these semantics can be easily and efficiently implemented using standard techniques from the analysis of logic programs. 1 Introduction Concurrent constraint programming (ccp) [12, 13, 14] is a new programming paradigm which elegantly combines logical concepts and concurrency mechanisms. The computational model of ccp is based on the notion of constraint system, which consists of a set of constraints and an entailment (implication) relation. Processes interact through a common store. Communication is achieved by telling (adding) a given constraint to the store, and by *This work has been partially supported by ESPRIT BRA
1995
Abstract. Concurrent Constraint Programming (CCP) has been the subject of growing interest as the focus of a new paradigm for concurrent computation. Like logic programming it claims close relations to logic. In fact CCP languages are logics in a certain sense that we make precise in this paper.
Lecture Notes in Computer Science, 2014
Concurrent constraint programming (ccp) is a well-established model of concurrency for reasoning about systems of multiple agents that interact with each other by posting and querying partial information on a shared space. (Weak) bisimilarity is one of the most representative notions of behavioral equivalence for models of concurrency. A notion of weak bisimilarity, called weak saturated bisimilarity (≈ sb), was recently proposed for ccp. This equivalence improves on previous bisimilarity notions for ccp that were too discriminating and it is a congruence for the choice-free fragment of ccp. In this paper, however, we show thaṫ ≈ sb is not a congruence for ccp with nondeterministic choice. We then introduce a new notion of bisimilarity, called weak full bisimilarity (≈ f), and show that it is a congruence for the full language of ccp. We also show the adequacy of ≈ f by establishing that it coincides with the congruence induced by closing≈ sb under all contexts. The advantage of the new definition is that, unlike the congruence induced by≈ sb , it does not require quantifying over infinitely many contexts.
BRICS Report Series, 2002
The tcc paradigm is a formalism for timed concurrent constraint programming. Several tcc languages differing in their way of expressing infinite behaviour have been proposed in the literature. In this paper we study the expressive power of some of these languages. In particular, we show that:<dl compact="compact"><dt>(1)</dt><dd>recursive procedures with parameters can be encoded into parameterless recursive procedures with dynamic scoping, and vice-versa.</dd><dt>(2)</dt><dd>replication can be encoded into parameterless recursive procedures with static scoping, and vice-versa.</dd><dt>(3)</dt><dd>the languages from (1) are strictly more expressive than the languages from (2).</dd></dl>Furthermore, we show that behavioural equivalence is undecidable for the languages from (1), but decidable for the languages from (2). The undecidability result holds even if the process variables take values...
Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming - PPDP '10, 2010
The Constraint Simplification Rules (CSR) subset of CHR and the flat subset of LCC, where agent nesting is restricted, are very close syntactically and semantically. The first contribution of this paper is to provide translations between CSR and flat-LCC. The second contribution is a transformation from the full LCC language to flat-LCC which preserves semantics. This transformation is similar to λ-lifting in functional languages. In conjunction with the equivalence between CHR and CSR with respect to original operational semantics, these results lead to semantics-preserving translations from full LCC to CHR and conversely. Immediate consequences of this work include new proofs for CHR linear logic and phase semantics, relying on corresponding results for LCC, plus an encoding of the λ-calculus in CHR. * A preliminary version of this work was presented at the CHR'09 workshop (informal proceedings). comparably to CHR constraints. Linear logic leads to a natural semantics for classical CC languages as well [8]. More recently, a precise declarative semantics for CHR has been described in linear logic [10]. Related work The translation from full LCC to CHR relies on ask-lifting. This is a transformation comparable to the λ-lifting [14] for functional languages: the common idea is the materialization of the environment in data structures, i.e. values in functional languages or tokens in LCC. The adaptations of functional concepts in LCC languages have been initiated with the embedding of closures and modules [13]. Flattening nested programming structures was suggested in [15] for connecting the Celf system [16] to CHR but no formal transformation seems to have been published. Encoding for RAM machines into CHR [29] showed that CHR was expressive enough to embed imperative style programming. The encoding of λ-calculus and closures shows that CHR can as well host programs written in a functional style. The CHR linear-logic semantics [10] is close to the previous work on the LCC semantics [8]: the present paper formally describes the intuitions behind this transposition.
Electronic Notes in Theoretical Computer Science, 2014
In standard Propositional Dynamic Logic (PDL) literature [5,16,4] the semantics is given by Labeled Transition Systems, where for each program π we a associate a binary relation Rπ. Process Algebras [1,8,10,2] also give semantics to process (terms) by means of Labeled Transition Systems. In both formalisms, PDL and Process Algebra, the key notion to compare processes is bisimulation. In PDL, we also have the notion of logic equivalence, that can be used to prove that two programs π 1 and π 2 are logically equivalent π 1 ϕ ↔ π 2 ϕ. Unfortunately, logic equivalence and bisimulation do not match in PDL. Bisimilar programs are logic equivalent but the converse does not hold. This paper proposes a semantics and an axiomatization for PDL that makes logically equivalent programs also bisimilar. We prove soundness, completeness and the finite model property.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.
The Journal of Logic Programming, 1997
Theoretical Computer Science, 1997
Theoretical Computer Science, 1993
ACM Computing Surveys, 1996
Artificial Intelligence, 1999
Information and Computation, 2001
Proceedings of the 27th Annual ACM Symposium on Applied Computing - SAC '12, 2012
Proceedings of 1996 IEEE Second International Conference on Algorithms and Architectures for Parallel Processing, ICA/sup 3/PP '96, 1996
The Journal of Logic Programming, 1998
Lecture Notes in Computer Science, 1996
Journal of Logic Programming, 1998
Lecture Notes in Computer Science, 1994
Lecture Notes in Computer Science, 1996
Electronic Proceedings in Theoretical Computer Science, 2012
Computer Networks and ISDN Systems, 1993
Theoretical Computer Science, 1997
Lecture Notes in Computer Science, 2004