Results 11  20
of
84
Kripke Logical Relations and PCF
 Information and Computation
, 1995
"... Sieber has described a model of PCF consisting of continuous functions that are invariant under certain (finitary) logical relations, and shown that it is fully abstract for closed terms of up to thirdorder types. We show that one may achieve full abstraction at all types using a form of "Krip ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
Sieber has described a model of PCF consisting of continuous functions that are invariant under certain (finitary) logical relations, and shown that it is fully abstract for closed terms of up to thirdorder types. We show that one may achieve full abstraction at all types using a form of "Kripke logical relations" introduced by Jung and Tiuryn to characterize definability. To appear in Information and Computation. (Accepted, October 1994) Supported by NSF grant CCR92110829. 1 Introduction The nature of sequential functional computation has fascinated computer scientists ever since Scott remarked on a curious incompleteness phenomenon when he introduced LCF (Logic for Computable Functions) and its continuous function model in 1969 (Scott, 1993). Scott noted that although the functionals definable by terms in PCFthe term language of LCFadmitted a sequential evaluation strategy, there were functions in the model that seemed to require a parallel evaluation strategy. "Sequen...
Sequentiality and the πCalculus
, 2001
"... We present a simple type discipline for the πcalculus which precisely captures the notion of sequential functional computation as a specific class of name passing interactive behaviour. The typed calculus allows direct interpretation of both callbyname and callbyvalue sequential functions. T ..."
Abstract

Cited by 29 (15 self)
 Add to MetaCart
We present a simple type discipline for the πcalculus which precisely captures the notion of sequential functional computation as a specific class of name passing interactive behaviour. The typed calculus allows direct interpretation of both callbyname and callbyvalue sequential functions. The precision of the representation is demonstrated by way of a fully abstract encoding of PCF.
Games and full abstraction for nondeterministic languages
, 1999
"... Abstract Nondeterminism is a pervasive phenomenon in computation. Often it arises as an emergent property of a complex system, typically as the result of contention for access to shared resources. In such circumstances, we cannot always know, in advance, exactly what will happen. In other circumstan ..."
Abstract

Cited by 29 (3 self)
 Add to MetaCart
Abstract Nondeterminism is a pervasive phenomenon in computation. Often it arises as an emergent property of a complex system, typically as the result of contention for access to shared resources. In such circumstances, we cannot always know, in advance, exactly what will happen. In other circumstances, nondeterminism is explicitly introduced as a means of abstracting away from implementation details such as precise command scheduling and control flow. However, the kind of behaviours exhibited by nondeterministic computations can be extremely subtle in comparison to those of their deterministic counterparts and reasoning about such programs is notoriously tricky as a result. It is therefore important to develop semantic tools to improve our understanding of, and aid our reasoning about, such nondeterministic programs. In this thesis, we extend the framework of game semantics to encompass nondeterministic computation. Game semantics is a relatively recent development in denotational semantics; its main novelty is that it views a computation not as a static entity, but rather as a dynamic process of interaction. This perspective makes the theory wellsuited to modelling many aspects of computational processes: the original use of game semantics in modelling the simple functional language PCF has subsequently been extended to handle more complex control structures such as references and continuations.
Computational Comonads and Intensional Semantics
, 1991
"... We explore some foundational issues in the development of a theory of intensional semantics. A programming language may be given a variety of semantics, differing in the level of abstraction; one generally chooses the semantics at an abstraction level appropriate for reasoning about a particular kin ..."
Abstract

Cited by 28 (1 self)
 Add to MetaCart
We explore some foundational issues in the development of a theory of intensional semantics. A programming language may be given a variety of semantics, differing in the level of abstraction; one generally chooses the semantics at an abstraction level appropriate for reasoning about a particular kind of program property. Extensional semantics are typically appropriate for proving properties such as partial correctness, but an intensional semantics at a lower abstraction level is required in order to reason about computation strategy and thereby support reasoning about intensional aspects of behavior such as order of evaluation and efficiency. It is obviously desirable to be able to establish sensible relationships between two semantics for the same language, and we seek a general categorytheoretic framework that permits this. Beginning with an "extensional" category, whose morphisms we can think of as functions of some kind, we model a notion of computation as a comonad with certain e...
Correspondence between Operational and Denotational Semantics
 Handbook of Logic in Computer Science
, 1995
"... This course introduces the operational and denotational semantics of PCF and examines the relationship between the two. Topics: Syntax and operational semantics of PCF, Activity Lemma, undefinability of parallel or; Context Lemma (first principles proof) and proof by logical relations Denotational ..."
Abstract

Cited by 23 (0 self)
 Add to MetaCart
This course introduces the operational and denotational semantics of PCF and examines the relationship between the two. Topics: Syntax and operational semantics of PCF, Activity Lemma, undefinability of parallel or; Context Lemma (first principles proof) and proof by logical relations Denotational semantics of PCF induced by an interpretation; (standard) Scott model, adequacy, weak adequacy and its proof (by a computability predicate) Domain Theory up to SFP and Scott domains; non full abstraction of the standard model, definability of compact elements and full abstraction for PCFP (PCF + parallel or), properties of orderextensional (continuous) models of PCF, Milner's model and Mulmuley's construction (excluding proofs) Additional topics (time permitting): results on pure simplytyped lambda calculus, Friedman 's Completeness Theorem, minimal model, logical relations and definability, undecidability of lambda definability (excluding proof), dIdomains and stable functions Homepa...
Projecting Sequential Algorithms on Strongly Stable Functions
 Annals of Pure and Applied Logic
, 1993
"... We relate two sequential models of PCF: the sequential algorithm model due to Berry and Curien and the strongly stable model due to Bucciarelli and the author. More precisely, we show that all the morphisms araising in the strongly stable model of PCF are sequential in the sense that they are the ..."
Abstract

Cited by 22 (2 self)
 Add to MetaCart
We relate two sequential models of PCF: the sequential algorithm model due to Berry and Curien and the strongly stable model due to Bucciarelli and the author. More precisely, we show that all the morphisms araising in the strongly stable model of PCF are sequential in the sense that they are the "extensional projections" of some sequential algorithms. We define a model of PCF where morphisms are "extensional" sequential algorithms and prove that any equation between PCF terms which holds in this model also holds in the strongly stable model.
Isolating Side Effects in Sequential Languages
 In Proceedings of the 22nd ACM SIGPLANSIGACT Symposium on Principles of Programming Languages (POPL’95
, 1995
"... It is well known that adding side effects to functional languages changes the operational equivalences of the language. We develop a new language construct, encap, that forces imperative pieces of code to behave purely functionally, i.e., without any visible side effects. The coercion operator enca ..."
Abstract

Cited by 19 (2 self)
 Add to MetaCart
It is well known that adding side effects to functional languages changes the operational equivalences of the language. We develop a new language construct, encap, that forces imperative pieces of code to behave purely functionally, i.e., without any visible side effects. The coercion operator encap provides a means of extending the simple reasoning principles for equivalences of code in a functional language to a language with side effects. In earlier work [36], similar coercion operators were developed, but their correctness required the underlying functional language to include parallel operations. The coercion operators developed here are simpler and are proven correct for purely sequential languages. The sequential setting requires the construction of fully abstract models for sequential callbyvalue languages and the formulation of a weak form of "monad" suitable for expressing the semantics of callbyvalue languages with side effects. 1 Introduction Two pieces of code are...
Not enough points is enough
 IN: COMPUTER SCIENCE LOGIC. VOLUME 4646 OF LECTURE NOTES IN COMPUTER SCIENCE
, 2007
"... Models of the untyped λcalculus may be defined either as applicative structures satisfying a bunch of first order axioms, known as “λmodels”, or as (structures arising from) any reflexive object in a cartesian closed category (ccc, for brevity). These notions are tightly linked in the sense that: ..."
Abstract

Cited by 18 (10 self)
 Add to MetaCart
Models of the untyped λcalculus may be defined either as applicative structures satisfying a bunch of first order axioms, known as “λmodels”, or as (structures arising from) any reflexive object in a cartesian closed category (ccc, for brevity). These notions are tightly linked in the sense that: given a λmodel A, one may define a ccc in which A (the carrier set) is a reflexive object; conversely, if U is a reflexive object in a ccc C, having enough points, then C ( , U) may be turned into a λmodel. It is well known that, if C does not have enough points, then the applicative structure C ( , U) is not a λmodel in general. This paper: (i) shows that this mismatch can be avoided by choosing appropriately the carrier set of the λmodel associated with U; (ii) provides an example of an extensional reflexive object D in a ccc without enough points: the Kleislicategory of the comonad “finite multisets ” on Rel; (iii) presents some algebraic properties of the λmodel associated with D by (i) which make it suitable for dealing with nondeterministic extensions of the untyped λcalculus.