## Strictness logic and polymorphic invariance (1992)

### Cached

### Download Links

- [www.research.microsoft.com]
- [research.microsoft.com]
- [research.microsoft.com]
- DBLP

### Other Repositories/Bibliography

Venue: | In Proc. Logical Found. Comp. Sci |

Citations: | 16 - 2 self |

### BibTeX

@INPROCEEDINGS{Benton92strictnesslogic,

author = {P. N. Benton},

title = {Strictness logic and polymorphic invariance},

booktitle = {In Proc. Logical Found. Comp. Sci},

year = {1992},

pages = {33--44}

}

### Years of Citing Articles

### OpenURL

### Abstract

We describe a logic for reasoning about higher-order strictness properties of typed lambda terms. The logic arises from axiomatising the inclusion order on certain closed subsets of domains. The axiomatisation of the lattice of strictness properties is shown to be sound and complete, and we then give a program logic for assigning properties to terms. This places work on strictness analysis via type inference on a firm theoretical foundation. We then use proof theoretic techniques to show how the derivable strictness properties of different instances of polymorphically typed terms are related. 1

### Citations

233 | Domain theory in logical form
- Abramsky
- 1991
(Show Context)
Citation Context ... on semantically in their type system. There seemed to be a fundamental shift from denotational analysis techniques to logical ones, so the obvious place to look for insight was work on domain logics =-=[2]-=-. These arise from Stone-type dualities between (topological) spaces and logics [8] - one can either view points as primary and then consider a property to be a set of points, or take properties as pr... |

145 |
Type systems for programming languages
- MITCHELL
- 1990
(Show Context)
Citation Context ...does not appear in the conclusion, prevents a naive induction from working. Instead, we use a (unary) logical relation on terms in the style of Tait's proof of strong normalisation (see, for example, =-=[10]-=-). The details are slightly fiddly, but the argument is sketched below. For a term t r we define 79(t ~) to mean that for all F, S, r we have sr~-s(t"):C~,s~,(r ~ r~t~:r We then define a type-indexed ... |

104 |
A semantics-based framework for the abstract interpretation of Prolog
- Jones, Sondergaard
- 1987
(Show Context)
Citation Context ..., Hankin and Abramsky's work on extending Mycroft's original analysis to higher order-functions [5]. Several people have noticed that type inference can be characterised as an abstract interpretation =-=[12]-=-. In [9], Kuo and Mishra turned this around by describing a way to perform strictness analysis by non-standard type inference. That paper is mainly concerned with getting a practical inference algorit... |

93 |
Abstract Interpretation a d Optimising Transformation f rAp- plicative programs
- Mycroft
- 1981
(Show Context)
Citation Context ... transform call by need into call by value, to spawn tasks in a parallel machine or to validate certain source-level program transformations. Strictness analysis was first studied in Mycroft's thesis =-=[11]-=-, which applied the framework of abstract interpretation to various analyses of functional programs. Since then, strictness analysis by abstract interpretation has been an active field of research. Fr... |

58 |
Strictness analysis: A new perspective based on type inference
- Kuo, Mishra
- 1989
(Show Context)
Citation Context ...and Abramsky's work on extending Mycroft's original analysis to higher order-functions [5]. Several people have noticed that type inference can be characterised as an abstract interpretation [12]. In =-=[9]-=-, Kuo and Mishra turned this around by describing a way to perform strictness analysis by non-standard type inference. That paper is mainly concerned with getting a practical inference algorithm, and ... |

45 | Strictness analysis in logical form
- Jensen
- 1991
(Show Context)
Citation Context ...ertheless essentially a fragment of the open set logic in [2], although the interpretations of propositions are very different. It should be noted that the same system was arrived at independently in =-=[7]-=-. That work is complementary to this, however, in that Jensen considers the relation between conventional abstract interpretation and the logic whereas this paper relates the logic directly to the sta... |

37 |
The Theory of Strictness Analysis for Higher Order Functions
- Burn, Hankin, et al.
- 1986
(Show Context)
Citation Context ...ive field of research. From the point of view of the present paper, the most important reference is Burn, Hankin and Abramsky's work on extending Mycroft's original analysis to higher order-functions =-=[5]-=-. Several people have noticed that type inference can be characterised as an abstract interpretation [12]. In [9], Kuo and Mishra turned this around by describing a way to perform strictness analysis ... |

20 |
Spaces, Cambridge studies in advanced mathematics 3
- Johnstone, Stone
- 1983
(Show Context)
Citation Context ...denotational analysis techniques to logical ones, so the obvious place to look for insight was work on domain logics [2]. These arise from Stone-type dualities between (topological) spaces and logics =-=[8]-=- - one can either view points as primary and then consider a property to be a set of points, or take properties as primary and then consider a point to be determined by the properties it satisfies. Ab... |

17 | A relational approach to strictness analysis of higher order polymorphic functions
- Abramsky, Jensen
- 1991
(Show Context)
Citation Context ...ed there are restricted to first-order functions. More recently, a better understanding of the semantics of polymorphism allowed Abramsky and Jensen to give a much neater semantic proof of invariance =-=[3]-=-. Here we show that our logical formulation of strictness analysis allows an enlightening and purely syntactic proof of invariance.40 It should be noted that there are really two notions of polymorph... |

9 |
Abstract interpretation of first-order polymorphic functions
- Hughes
- 1988
(Show Context)
Citation Context ...nment. To reconcile these two viewpoints, Abramsky had to go via an operational semantics (which is inherently syntactic) for the abstract functions. Hughes has approached the problem semantically in =-=[6]-=-, but the techniques used there are restricted to first-order functions. More recently, a better understanding of the semantics of polymorphism allowed Abramsky and Jensen to give a much neater semant... |

1 |
Strictness analysis and polymorpMc invariance (extended abstract
- Abramsky
- 1985
(Show Context)
Citation Context ...for any implementation, as it allows us to analyse polymorphic functions without analysing all their monotyped instances separately. Polymorphic invariance of strictness analysis was first studied in =-=[1]-=-. A complication in that work was that the characterisation of strictness was denotational (semantic) whereas polymorphism came from the syntactic rules for type assignment. To reconcile these two vie... |

1 |
Static Analyses and Optimising Transformations for Lazy Functional Programs
- Benton
- 1992
(Show Context)
Citation Context ...andard semantics. Jensen does not consider polymorphic invariance. For reasons of space, all the proofs in this paper have been either omitted or sketched briefly. More detailed proofs will appear in =-=[4]-=-. 2 The Language AT This section briefly describes the language with which we shall be working. Types, ranged over by a, r, are formed from a single base type A, which we interpret as the natural numb... |