Results 1  10
of
52
Domain Theory
 Handbook of Logic in Computer Science
, 1994
"... Least fixpoints as meanings of recursive definitions. ..."
Abstract

Cited by 547 (24 self)
 Add to MetaCart
Least fixpoints as meanings of recursive definitions.
The πCalculus in Direct Style
, 1997
"... We introduce a calculus which is a direct extension of both the and the π calculi. We give a simple type system for it, that encompasses both Curry's type inference for the calculus, and Milner's sorting for the πcalculus as particular cases of typing. We observe that the various contin ..."
Abstract

Cited by 72 (2 self)
 Add to MetaCart
We introduce a calculus which is a direct extension of both the and the π calculi. We give a simple type system for it, that encompasses both Curry's type inference for the calculus, and Milner's sorting for the πcalculus as particular cases of typing. We observe that the various continuation passing style transformations for terms, written in our calculus, actually correspond to encodings already given by Milner and others for evaluation strategies of terms into the πcalculus. Furthermore, the associated sortings correspond to wellknown double negation translations on types. Finally we provide an adequate cps transform from our calculus to the πcalculus. This shows that the latter may be regarded as an "assembly language", while our calculus seems to provide a better programming notation for higherorder concurrency.
Asynchrony and the PiCalculus
, 1992
"... We introduce an asynchronous version of Milner's ßcalculus, based on the idea that the messages are elementary processes that can be sent without any sequencing constraint. We show that this simple message passing discipline, together with the restriction construct making a name private for an ..."
Abstract

Cited by 43 (0 self)
 Add to MetaCart
We introduce an asynchronous version of Milner's ßcalculus, based on the idea that the messages are elementary processes that can be sent without any sequencing constraint. We show that this simple message passing discipline, together with the restriction construct making a name private for an agent, is enough to encode the synchronous communication of the ßcalculus. 1. Introduction. The purpose of this note is to introduce an asynchronous variant of the ßcalculus of Milner, Parrow and Walker [8]. The ßcalculus is an extension of CCS, based on previous work by Engberg and Nielsen [5], that deals with name passing: in this calculus, agents pass channel names to other agents through named channels. The expressiveness of this link passing discipline has been demonstrated in [8] by a series of examples. Later on, Milner showed in [9] that even a restricted fragment of the original ßcalculus is enough to encode the calculus. More precisely, he showed that one can mimic in a "mini" ß...
Relational Reasoning about Functions and Nondeterminism
, 1998
"... Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent BRICS Dissertation Series publications. Copies may be obtained by contacting: BRICS ..."
Abstract

Cited by 37 (4 self)
 Add to MetaCart
(Show Context)
Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent BRICS Dissertation Series publications. Copies may be obtained by contacting: BRICS
The LambdaCalculus with Multiplicities
, 1993
"... We introduce a refinement of the λcalculus, where the argument of a function is a bag of resources, that is a multiset of terms, whose multiplicities indicate how many copies of them are available. We show that this "λcalculus with multiplicities" has a natural functionality theory, simi ..."
Abstract

Cited by 20 (2 self)
 Add to MetaCart
We introduce a refinement of the λcalculus, where the argument of a function is a bag of resources, that is a multiset of terms, whose multiplicities indicate how many copies of them are available. We show that this "λcalculus with multiplicities" has a natural functionality theory, similar to Coppo and Dezani's intersection type discipline. In our functionality theory the conjunction is managed in a "multiplicative" manner, according to Girard's terminology. We show that this provides an adequate interpretation of the calculus, by establishing that a term is convergent if and only if it has a nontrivial functional character.
A nondeterministic callbyneed lambda calculus
 INTERNATIONAL CONFERENCE ON FUNCTIONAL PROGRAMMING
, 1998
"... In this paper we present a nondeterministic callbyneed (untyped) lambda calculus nd with a constant choice and a letsyntax that models sharing. Our main result is that nd has the nice operational properties of the standard lambda calculus: confluence on sets of expressions, and normal order redu ..."
Abstract

Cited by 17 (7 self)
 Add to MetaCart
In this paper we present a nondeterministic callbyneed (untyped) lambda calculus nd with a constant choice and a letsyntax that models sharing. Our main result is that nd has the nice operational properties of the standard lambda calculus: confluence on sets of expressions, and normal order reduction is sufficient to reach head normal form. Using a strong contextual equivalence we show correctness of several program transformations. In particular of lambdalifting using deterministic maximal free expressions. These results show that nd is a new and also natural combination of nondeterminism and lambdacalculus, which has a lot of opportunities for parallel evaluation. An intended application of nd is as a foundation for compiling lazy functional programming languages with I/O based on direct calls. The set of correct program transformations can be rigorously distinguished from noncorrect ones. All program transformations are permitted with the slight exception that for transformations like common subexpression elimination and lambdalifting with maximal free expressions the involved subexpressions have to be deterministic ones.
A fully abstract semantics for concurrent graph reduction (Extended Abstract)
, 1993
"... . This paper presents a formal model of the concurrent graph reduction implementation of nonstrict functional programming. This model diers from other models in that: It represents concurrent rather than sequential graph reduction. It represents lowlevel considerations such as garbage collecti ..."
Abstract

Cited by 14 (1 self)
 Add to MetaCart
. This paper presents a formal model of the concurrent graph reduction implementation of nonstrict functional programming. This model diers from other models in that: It represents concurrent rather than sequential graph reduction. It represents lowlevel considerations such as garbage collection. It uses techniques from concurrency theory to simplify the presentation. There are three presentations of this model: An operational semantics based on graph reduction. A denotational semantics in the domain D ' (D !D)? . A program logic and proof system based on coppo types. We can then use abramsky and ong's techniques from the lazy  calculus to show that the denotational semantics is fully abstract for the operational semantics. This proof requires some results about the operational semantics: Since the operational semantics includes garbage collection, reduction is not conuent. We nd a conuent reduction strategy which has the same convergence properties as gr...
Fixed Points and Extensionality in Typed Functional Programming Languages
, 1992
"... ..."
(Show Context)
On the representation of mccarthy’s amb in the picalculus
 Theor. Comput. Sci
, 2005
"... We study the encoding of λ[], the call by name λcalculus enriched with McCarthy’s amb operator, into the picalculus. Semantically, amb is a challenging operator, for the fairness constraints that it expresses. We prove that, under a certain interpretation of divergence in the λcalculus (weak div ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
(Show Context)
We study the encoding of λ[], the call by name λcalculus enriched with McCarthy’s amb operator, into the picalculus. Semantically, amb is a challenging operator, for the fairness constraints that it expresses. We prove that, under a certain interpretation of divergence in the λcalculus (weak divergence), a faithful encoding is impossible. However, with a different interpretation of divergence (strong divergence), the encoding is possible, and for this case we derive results and coinductive proof methods to reason about λ[] that are similar to those for the encoding of pure λcalculi. We then use these methods to derive the most important laws concerning amb. We take bisimilarity as behavioural equivalence on the picalculus, which sheds some light on the relationship between fairness and bisimilarity. As a spinoff result, we show that there is no smallstep operational semantics for λ[] that preserves the branching structure of terms and yields the correct predicates of convergence and (weak) divergence. 1