Results 1  10
of
24
Full Abstraction for PCF
 INFORMATION AND COMPUTATION
, 1996
"... An intensional model for the programming language PCF is described, in which the types of PCF are interpreted by games, and the terms by certain "historyfree" strategies. This model is shown to capture definability in PCF. More precisely, every compact strategy in the model is definable i ..."
Abstract

Cited by 205 (15 self)
 Add to MetaCart
An intensional model for the programming language PCF is described, in which the types of PCF are interpreted by games, and the terms by certain "historyfree" strategies. This model is shown to capture definability in PCF. More precisely, every compact strategy in the model is definable in a certain simple extension of PCF. We then introduce an intrinsic preorder on strategies, and show that it satisfies some remarkable properties, such that the intrinsic preorder on function types coincides with the pointwise preorder. We then obtain an orderextensional fully abstract model of PCF by quotienting the intensional model by the intrinsic preorder. This is the first syntaxindependent description of the fully abstract model for PCF. (Hyland and Ong have obtained very similar results by a somewhat different route, independently and at the same time.) We then consider the effective version of our model, and prove a Universality Theorem: every element of the effective extensional model is definable in PCF. Equivalently, every recursive strategy is definable up to observational equivalence.
Full Abstraction for PCF (Extended Abstract)
 THEORETICAL ASPECTS OF COMPUTER SOFTWARE. INTERNATIONAL SYMPOSIUM TACS'94, NUMBER 789 IN LECTURE NOTES IN COMPUTER SCIENCE
, 1994
"... The Full Abstraction Problem for PCF [23, 20, 7, 11] is one of the longeststanding problems in the semantics of programming languages. There is quite widespread agreement that it is one of the most difficult; there is much less agreement as to what exactly the problem is, or more particularly as ..."
Abstract

Cited by 68 (11 self)
 Add to MetaCart
(Show Context)
The Full Abstraction Problem for PCF [23, 20, 7, 11] is one of the longeststanding problems in the semantics of programming languages. There is quite widespread agreement that it is one of the most difficult; there is much less agreement as to what exactly the problem is, or more particularly as to the precise criteria for a solution. The usual formulation is that one wants a "semantic characterization" of the fully abstract model (by which we mean the inequationally fully abstract orderextensional model, which Milner proved to be uniquely specified up to isomorphism by these properties [20]). The problem is to understand what should be meant by a "semantic characterization". Our view is that the essential content of the problem, what makes it important, is that it calls for a semantic characterization of sequential, functional computation at hig...
A Semantic analysis of control
, 1998
"... This thesis examines the use of denotational semantics to reason about control flow in sequential, basically functional languages. It extends recent work in game semantics, in which programs are interpreted as strategies for computation by interaction with an environment. Abramsky has suggested that ..."
Abstract

Cited by 32 (5 self)
 Add to MetaCart
(Show Context)
This thesis examines the use of denotational semantics to reason about control flow in sequential, basically functional languages. It extends recent work in game semantics, in which programs are interpreted as strategies for computation by interaction with an environment. Abramsky has suggested that an intensional hierarchy of computational features such as state, and their fully abstract models, can be captured as violations of the constraints on strategies in the basic functional model. Nonlocal control flow is shown to fit into this framework as the violation of strong and weak ‘bracketing ’ conditions, related to linear behaviour. The language µPCF (Parigot’s λµ with constants and recursion) is adopted as a simple basis for highertype, sequential computation with access to the flow of control. A simple operational semantics for both callbyname and callbyvalue evaluation is described. It is shown that dropping the bracketing condition on games models of PCF yields fully abstract models 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 32 (3 self)
 Add to MetaCart
(Show Context)
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.
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...
A Combinatory Algebra for Sequential Functionals of Finite Type
 University of Utrecht
, 1997
"... It is shown that the type structure of finitetype functionals associated to a combinatory algebra of partial functions from IN to IN (in the same way as the type structure of the countable functionals is associated to the partial combinatory algebra of total functions from IN to IN), is isomorphic ..."
Abstract

Cited by 22 (2 self)
 Add to MetaCart
(Show Context)
It is shown that the type structure of finitetype functionals associated to a combinatory algebra of partial functions from IN to IN (in the same way as the type structure of the countable functionals is associated to the partial combinatory algebra of total functions from IN to IN), is isomorphic to the type structure generated by object N (the flat domain on the natural numbers) in Ehrhard's category of "dIdomains with coherence", or his "hypercoherences". AMS Subject Classification: Primary 03D65, 68Q55 Secondary 03B40, 03B70, 03D45, 06B35 Introduction PCF , "Godel's T with unlimited recursion", was defined in Plotkin's paper [16]. It is a simply typed calculus with a type o for integers and constants for basic arithmetical operations, definition by cases and fixed point recursion. More importantly, there is a special reduction relation attached to it which ensures (by Plotkin's "Activity Lemma") that all PCF definable highertype functionals have a sequential, i.e. nonparal...
When is a Functional Program Not a Functional Program?
 Proceedings of Fourth ACM SIGPLAN International Conference on Functional Programming
, 1999
"... In an impure functional language, there are programs whose behaviour is completely functional (in that they behave extensionally on inputs), but the functions they compute cannot be written in the purely functional fragment of the language. That is, the class of programs with functional behaviour is ..."
Abstract

Cited by 19 (7 self)
 Add to MetaCart
(Show Context)
In an impure functional language, there are programs whose behaviour is completely functional (in that they behave extensionally on inputs), but the functions they compute cannot be written in the purely functional fragment of the language. That is, the class of programs with functional behaviour is more expressive than the usual class of pure functional programs. In this paper we introduce this extended class of "functional" programs by means of examples in Standard ML, and explore what they might have to offer to programmers and language implementors. After reviewing some theoretical background, we present some examples of functions of the above kind, and discuss how they may be implemented. We then consider two possible programming applications for these functions: the implementation of a search algorithm, and an algorithm for exact realnumber integration. We discuss the advantages and limitations of this style of programming relative to other approaches. We also consider the incr...
Timeless Games
 Computer Science Logic: 11th International Workshop Proceedings, volume 1414 of Lecture Notes in Computer Science. EACSL
, 1998
"... . Two models of classical linear logic are set up. First our recent version of AJM games model which will be our source model. Then the target model, polarized pointed relations, a variant of the plain relational model which is constructed in two steps: first the model of pointed relations, then the ..."
Abstract

Cited by 14 (1 self)
 Add to MetaCart
. Two models of classical linear logic are set up. First our recent version of AJM games model which will be our source model. Then the target model, polarized pointed relations, a variant of the plain relational model which is constructed in two steps: first the model of pointed relations, then the additional polarization structure which yields a proper duality. Then the natural timeforgetting map is shown to generate a lax functor from the source to the target. Finally a further refinement of the target model using bipolarities is sketched, giving a closer link with the games model for the interpretation of syntax. Thus a bridge is constructed that goes from a dynamic model to a static model of evaluation. 1 Introduction The basic mathematical reflex was to model types, programs, evaluation with sets, functions, composition. As years went by, denotational semantics pictured the syntactic triple with increasingly sophisticated tools: lattices, posets, concrete data structures, coher...
Notions of computability at higher types I
 In Logic Colloquium 2000
, 2005
"... We discuss the conceptual problem of identifying the natural notions of computability at higher types (over the natural numbers). We argue for an eclectic approach, in which one considers a wide range of possible approaches to defining higher type computability and then looks for regularities. As a ..."
Abstract

Cited by 12 (5 self)
 Add to MetaCart
(Show Context)
We discuss the conceptual problem of identifying the natural notions of computability at higher types (over the natural numbers). We argue for an eclectic approach, in which one considers a wide range of possible approaches to defining higher type computability and then looks for regularities. As a first step in this programme, we give an extended survey of the di#erent strands of research on higher type computability to date, bringing together material from recursion theory, constructive logic and computer science. The paper thus serves as a reasonably complete overview of the literature on higher type computability. Two sequel papers will be devoted to developing a more systematic account of the material reviewed here.