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

Cited by 457 (20 self)
 Add to MetaCart
Least fixpoints as meanings of recursive definitions.
Abstract interpretation frameworks
 Journal of Logic and Computation
, 1992
"... We introduce abstract interpretation frameworks which are variations on the archetypal framework using Galois connections between concrete and abstract semantics, widenings and narrowings and are obtained by relaxation of the original hypotheses. We consider various ways of establishing the correctn ..."
Abstract

Cited by 238 (23 self)
 Add to MetaCart
We introduce abstract interpretation frameworks which are variations on the archetypal framework using Galois connections between concrete and abstract semantics, widenings and narrowings and are obtained by relaxation of the original hypotheses. We consider various ways of establishing the correctness of an abstract interpretation depending on how the relation between the concrete and abstract semantics is defined. We insist upon those correspondences allowing for the inducing of the approximate abstract semantics from the concrete one. Furthermore we study various notions interpretation.
PCF extended with real numbers
, 1996
"... We extend the programming language PCF with a type for (total and partial) real numbers. By a partial real number we mean an element of a cpo of intervals, whose subspace of maximal elements (singlepoint intervals) is homeomorphic to the Euclidean real line. We show that partial real numbers can be ..."
Abstract

Cited by 47 (15 self)
 Add to MetaCart
We extend the programming language PCF with a type for (total and partial) real numbers. By a partial real number we mean an element of a cpo of intervals, whose subspace of maximal elements (singlepoint intervals) is homeomorphic to the Euclidean real line. We show that partial real numbers can be considered as “continuous words”. Concatenation of continuous words corresponds to refinement of partial information. The usual basic operations cons, head and tail used to explicitly or recursively define functions on words generalize to partial real numbers. We use this fact to give an operational semantics to the above referred extension of PCF. We prove that the operational semantics is sound and complete with respect to the denotational semantics. A program of real number type evaluates to a headnormal form iff its value is different from ⊥; if its value is different from ⊥ then it successively evaluates to headnormal forms giving better and better partial results converging to its value.
Binding Time Analysis: A New PERspective
 In Proceedings of the ACM Symposium on Partial Evaluation and SemanticsBased Program Manipulation (PEPM'91
, 1991
"... Given a description of the parameters in a program that will be known at partial evaluation time, a binding time analysis must determine which parts of the program are dependent solely on these known parts (and therefore also known at partial evaluation time). In this paper a binding time analysis f ..."
Abstract

Cited by 34 (6 self)
 Add to MetaCart
Given a description of the parameters in a program that will be known at partial evaluation time, a binding time analysis must determine which parts of the program are dependent solely on these known parts (and therefore also known at partial evaluation time). In this paper a binding time analysis for the simply typed lambda calculus is presented. The analysis takes the form of an abstract interpretation and uses a novel formalisation of the problem of binding time analysis, based on the use of partial equivalence relations. A simple proof of correctness is achieved by the use of logical relations. 1 Introduction Given a description of the parameters in a program that will be known at partial evaluation time, a binding time analysis must determine which parts of the program are dependent solely on these known parts (and therefore also known at partial evaluation time). A binding time analysis performed prior to the partial evaluation process can have several practical benefits (see [...
Properly injective spaces and function spaces
 TO APPEAR IN TOPOLOGY AND ITS APPLICATIONS
, 1997
"... Given an injective space D (a continuous lattice endowed with the Scott topology) and a subspace embedding j: X → Y, Dana Scott asked whether the higherorder function [X → D] → [Y → D] which takes a continuous map f: X → D to its greatest continuous extension ¯ f: Y → D along j is Scott continuous ..."
Abstract

Cited by 27 (12 self)
 Add to MetaCart
Given an injective space D (a continuous lattice endowed with the Scott topology) and a subspace embedding j: X → Y, Dana Scott asked whether the higherorder function [X → D] → [Y → D] which takes a continuous map f: X → D to its greatest continuous extension ¯ f: Y → D along j is Scott continuous. In this case the extension map is a subspace embedding. We show that the extension map is Scott continuous iff D is the trivial onepoint space or j is a proper map in the sense of Hofmann and Lawson. In order to avoid the ambiguous expression “proper subspace embedding”, we refer to proper maps as finitary maps. We show that the finitary sober subspaces of the injective spaces are exactly the stably locally compact spaces. Moreover, the injective spaces over finitary embeddings are the algebras of the upper power space monad on the category of sober spaces. These coincide with the retracts of upper power spaces of sober spaces. In the full subcategory of locally compact sober spaces, these are known to be the continuous meetsemilattices. In the full subcategory of stably locally compact spaces these are again the continuous lattices. The above characterization of the injective spaces over finitary embeddings is an instance of a general result on injective objects in posetenriched categories with the structure of a KZmonad established in this paper, which we also apply to various full subcategories closed under the upper power space construction and to the upper and lower power locale monads. The above results also hold for the injective spaces over dense subspace embeddings (continuous Scott domains). Moreover, we show that every sober space has a smallest finitary dense sober subspace (its support). The support always contains the subspace of maximal points, and in the stably locally compact case (which includes densely injective spaces) it is the subspace of maximal points iff that subspace is compact.
Prelogical Relations
, 1999
"... this paper but which have some intriguing connections to some of our results and techniques, are [32] and [20]. We believe that the concept of prelogical relation would have a beneficial impact on the presentation and understanding of their results ..."
Abstract

Cited by 26 (5 self)
 Add to MetaCart
this paper but which have some intriguing connections to some of our results and techniques, are [32] and [20]. We believe that the concept of prelogical relation would have a beneficial impact on the presentation and understanding of their results
Abstract Interpretation of Functional Languages: From Theory to Practice
, 1991
"... Abstract interpretation is the name applied to a number of techniques for reasoning about programs by evaluating them over nonstandard domains whose elements denote properties over the standard domains. This thesis is concerned with higherorder functional languages and abstract interpretations with ..."
Abstract

Cited by 25 (0 self)
 Add to MetaCart
Abstract interpretation is the name applied to a number of techniques for reasoning about programs by evaluating them over nonstandard domains whose elements denote properties over the standard domains. This thesis is concerned with higherorder functional languages and abstract interpretations with a formal semantic basis. It is known how abstract interpretation for the simply typed lambda calculus can be formalised by using binary logical relations. This has the advantage of making correctness and other semantic concerns straightforward to reason about. Its main disadvantage is that it enforces the identification of properties as sets. This thesis shows how the known formalism can be generalised by the use of ternary logical relations, and in particular how this allows abstract values to deno...
A Relational Approach to Strictness Analysis for HigherOrder Polymorphic Functions
 In Proc. ACM Symposium on Principles of Programming Languages
, 1991
"... This paper defines the categorical notions of relators and transformations and shows that these concepts enable us to give a semantics for polymorphic, higher order functional programs. We demonstrate the pertinence of this semantics to the analysis of polymorphic programs by proving that strictness ..."
Abstract

Cited by 17 (1 self)
 Add to MetaCart
This paper defines the categorical notions of relators and transformations and shows that these concepts enable us to give a semantics for polymorphic, higher order functional programs. We demonstrate the pertinence of this semantics to the analysis of polymorphic programs by proving that strictness analysis is a polymorphic invariant. 1 Introduction Recently, there has been some effort to construe the semantics of polymorphic functional programming languages using the categorical notion of a natural transformation. The idea can be sketched as follows: we have a "universe of computational discourse" given by some category (in practice, a suitable category of domains). Types are objects of . Type constructions (e.g. product, function space) are functors (of appropriate arity) over . Monomorphic functional programs are morphisms of ; polymorphic programs are natural transformations. E.g. append : 8t: t ? \Theta t ? ! t ? append : (\Delta) ? \Theta (\Delta) ? : ! (\Delta) ? w...
Lax Logical Relations
 In 27th Intl. Colloq. on Automata, Languages and Programming, volume 1853 of LNCS
, 2000
"... Lax logical relations are a categorical generalisation of logical relations; though they preserve product types, they need not preserve exponential types. But, like logical relations, they are preserved by the meanings of all lambdacalculus terms. We show that lax logical relations coincide with th ..."
Abstract

Cited by 15 (2 self)
 Add to MetaCart
Lax logical relations are a categorical generalisation of logical relations; though they preserve product types, they need not preserve exponential types. But, like logical relations, they are preserved by the meanings of all lambdacalculus terms. We show that lax logical relations coincide with the correspondences of Schoett, the algebraic relations of Mitchell and the prelogical relations of Honsell and Sannella on Henkin models, but also generalise naturally to models in cartesian closed categories and to richer languages.
Strictness and Totality Analysis
 In Static Analysis, LNCS 864
, 1994
"... We definea novel inference system for strictness and totality analysis for the simplytyped lazy lambdacalculus with constants and fixpoints. Strictness information identifies those terms that definitely denote bottom (i.e. do not evaluate to WHNF) whereas totality information identifies those terms ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
We definea novel inference system for strictness and totality analysis for the simplytyped lazy lambdacalculus with constants and fixpoints. Strictness information identifies those terms that definitely denote bottom (i.e. do not evaluate to WHNF) whereas totality information identifies those terms that definitely do not denote bottom (i.e. do evaluate to WHNF). The analysis is presented as an annotated type system allowing conjunctions only at "toplevel". We give examples of its use and prove the correctness with respect to a naturalstyle operational semantics. 1 Introduction Strictness analysis has proved useful in the implementation of lazy functional languages as Miranda, Lazy ML and Haskell: when a function is strict it is safe to evaluate its argument before performing the function call. Totality analysis is equally useful but has not be adopted so widely: if the argument to a function is known to terminate then it is safe to evaluate it before performing the function call [1...