Results 1 - 10
of
17
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 "history-free" strategies. This model is shown to capture definability in PCF. More precisely, every compact strategy in the model is definable in a certai ..."
Abstract
-
Cited by 173 (14 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 "history-free" 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 order-extensional fully abstract model of PCF by quotienting the intensional model by the intrinsic preorder. This is the first syntax-independent 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 longest-standing 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 65 (11 self)
- Add to MetaCart
The Full Abstraction Problem for PCF [23, 20, 7, 11] is one of the longest-standing 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 order-extensional 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 31 (5 self)
- Add to MetaCart
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. Non-local 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 higher-type, sequential computation with access to the flow of control. A simple operational semantics for both call-by-name and call-by-value 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 23 (2 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 well-suited 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 21 (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 order-extensional (continuous) models of PCF, Milner's model and Mulmuley's construction (excluding proofs) Additional topics (time permitting): results on pure simply-typed lambda calculus, Friedman 's Completeness Theorem, minimal model, logical relations and definability, undecidability of lambda definability (excluding proof), dI-domains 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 finite-type 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 21 (2 self)
- Add to MetaCart
It is shown that the type structure of finite-type 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 "dI-domains 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 higher-type functionals have a sequential, i.e. non-paral...
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 17 (7 self)
- Add to MetaCart
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 real-number integration. We discuss the advantages and limitations of this style of programming relative to other approaches. We also consider the incr...
Sequential algorithms and strongly stable functions
- in the Linear Summer School, Azores
, 2003
"... ..."
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 10 (5 self)
- Add to MetaCart
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.

