Results 1 - 10
of
35
Domain Theory
- Handbook of Logic in Computer Science
, 1994
"... Least fixpoints as meanings of recursive definitions. ..."
Abstract
-
Cited by 402 (19 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 205 (21 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 (single-point intervals) is homeomorphic to the Euclidean real line. We show that partial real numbers can be ..."
Abstract
-
Cited by 45 (14 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 (single-point 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 head-normal form iff its value is different from ⊥; if its value is different from ⊥ then it successively evaluates to head-normal 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 Semantics-Based 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 32 (4 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 [...
Pre-logical 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
Properly Injective Spaces and Function Spaces
, 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 higher-order 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 continu ..."
Abstract
-
Cited by 26 (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 higher-order 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 one-point 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, t...
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 non-standard domains whose elements denote properties over the standard domains. This thesis is concerned with higherorder functional languages and abstract interpretations with ..."
Abstract
-
Cited by 24 (0 self)
- Add to MetaCart
Abstract interpretation is the name applied to a number of techniques for reasoning about programs by evaluating them over non-standard 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 Higher-Order 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 16 (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 lambda-calculus 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 lambda-calculus terms. We show that lax logical relations coincide with the correspondences of Schoett, the algebraic relations of Mitchell and the pre-logical 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 lambda-calculus 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 12 (1 self)
- Add to MetaCart
We definea novel inference system for strictness and totality analysis for the simplytyped lazy lambda-calculus 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 "top-level". We give examples of its use and prove the correctness with respect to a natural-style 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...

