| P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995. (p 120) |
.... 0,x x) Game Semantics of Imperative Languages using Regular Expressions . Milne Strachey marked store models. These can fail to validate garbage collection [2] Functor category models handle locality well. representation independence. Snapback remains problematic [6, 5]. object spaces handle snapback too. Full abstraction up to order 2 via the Yoneda embedding [8, 4] reasoning [7] semantics: full Semantics of Imperative Languages using Regular Expressions . Milne Strachey marked store models. These can fail to validate ....
....Languages using Regular Expressions . Milne Strachey marked store models. These can fail to validate garbage collection [2] models handle locality well. Parametricity constraints can be added to handle representation independence. Snapback remains problematic [6, 5]. object spaces handle snapback too. Full abstraction up to order 2 via the Yoneda embedding [8, 4] reasoning [7] semantics: full Semantics of Imperative Languages using Regular Expressions . Milne Strachey marked store models. These can fail to validate ....
[Article contains additional citation context not shown here]
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995.
....relations are inadequate in the face of the complex language features of interest. The combination of local state with higher order procedures makes it di#cult to prove representation independence even for Algol, where procedures can be passed as arguments but not assigned to state variables [29]; objects exhibit similar features. If procedures can be stored in state variables or in heap objects, the resulting domain equations become quite challenging to solve. For applications in security and automated static checking, it is important to devise robust, comprehensible models that support ....
....of this semantic condition. A modular static analysis, which does not require code anno In the case of refinement, identity is replaced by inequality [28] In this paper we do not emphasize refinement. As a property to be proved or, ideally, as an intrinsic feature of the semantic model [34, 29]. tations, can be derived from the semantic definition [2] Overview of the paper. Section 2 introduces the language with an example showing the necessity of confinement. Then typing and semantic definitions are given; we defer the access control facility to Section 6. Section 3 formulates the ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42(3), 1995.
....n in M;S V; S l 62 dom(S) dom(S ) Fig. 2. Rules de ning the evaluation relation . alence of the inability of IA to snap back the state to some previous point in the thread of computation. p : com ) com new x : 0 in p(x : 1) if x = 1 else skip p( ii) Parametricity [26]: Note that the local variables x and y in the following have types loc[Z] and loc[B ] respectively. p : com ) exp[B ] com new x : 1 in p (x : x) x 0) new y : tt in p (y : not y) y) iii) The two terms in the following return true provided G consults its argu10 ment at least ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. JACM, 42(3):658-709, 1995.
....is an effort to provide such a foundation. Categories and Logic Programming Categorical tools in programming syntax and semantics have enjoyed widespread use for over a decade [56] Categorical models have been used to give clean, implementation independent approaches to side effects and state [47, 62, 68, 52], non determinism [53] type disciplines [15, 33] and other logics for computation [7, 63] The mathematical treatment of some features, such as parametricity and polymorphism, have required categorical tools [57, 21] Logic programming, however, has developed within a different semantic ....
P.W. O'Hearn and R. D. Tennent. Parametricity and local variables. Technical report, Syracuse University, 1993.
....have been two main strands of work addressing the issue of locality of store in programming languages from a semantic point of view. The first, based on the use of functor categories, was pioneered by Reynolds and Oles [22] and has since been considerably refined, notably by O Hearn and Tennent [21]. The idea is essentially to take a traditional global state model and parameterize it with respect to store shapes, to account for the allocation and later deallocation of local variables. Stark has also used functor categories to model ML style references [31] and similar ideas have led to ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995.
....have been two main strands of work addressing the issue of locality of store in programming languages from a semantic point of view. The first, based on the use of functor categories, was pioneered by Reynolds and Oles [27] and has since been considerably refined, notably by O Hearn and Tennent [24]. The idea is essentially to take a traditional global state model and parameterize it with respect to store shapes, to account for the allocation and later deallocation of local variables. Stark has also used functor categories to model ML style references [35] and similar ideas have led to ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995.
....over to Finite FPC. We have some hope that the relational account can be adapted to extensions of FPC with other kinds of effects other than simple functional branching, such as continuation based control operations. We also believe that there is a relationship between single threading of state [21, 23] and sequentiality; it would be interesting to see if our model can be adapted to model a single threaded global state. One strength of the current model is its clean separation of values and computations. We conjecture that only the definition of computational relations must change to reflect ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42:658--709, 1995.
....to h and ignores possible variation in behavior resulting from side effects. A more careful proof appears in Section 3. 3 Although parametricity with effects has been problematic in lambda calculus like languages, it has been successfully used with computational effects in Algol like languages [7]. particular term) This extension is done only by adding new rules, so any judgements derivable in the original type system are derivable in the extended system. In the extended system we may instantiate polymorphic functions at singleton types, and any result value that consequently belongs to ....
Peter W. O'Hearn and Robert D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995.
....as a revisiting of the possible world semantics of substructural logic, modified by two further factors. One of these factors is a spatial view of possible worlds semantics, which developed in the context of the semantics of storage, where sharing rather than duplication is the major concern [12, 13, 14, 15]. The demands of the specific models there require a logic different from extant linear or relevant logics. A similar view, from a type theoretic, or logical frameworks, perspective, can be seen in [16, 17] The other, more foundational, motivation comes from a proposal of resource as a primitive ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42(3):658--709, May 1995. Also in [39], vol 2, pages 109--164.
....to formally express a notion of method extension which corresponds to the intuition that, usually, operations which change the state affect only a limited part of it. This intuition is not reflected in usual denotational models of imperative languages, causing some inadequateness (see, e.g. [41, 35, 39, 40] for a discussion and proposals of solution) In our approach, the problem is solved assuming to define methods only on the involved part of the state and then extending them to richer states in a uniform way, fixed for any given language we are dealing with. The overall categorical framework ....
O'Hearn, P. and R. Tennent: 1995, `Parametricity and Local Variables'. Journ. ACM 42(3).
....C , Modula 3, Oberon, and Java. Such languages are often considered to be Algol like , but that term has come to have a narrower meaning [45] Algol is the most studied higher order imperative language and it poses dicult semantic problems [14, 41] that remain the subject of active research [45, 39, 47, 43, 48] 1 See [31] for a recent exposition of these topics. For connections between predicate and statetransformer semantics, a recent reference is [11] 2 Known by many names including rigid, speci cation, ghost, and logical variables. 1 even though it lacks stored procedures and subtyping which ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42(3):658-709, 1995.
....a#ect the field f of the newly allocated object x. We can prove this, but only by adopting a strong specification for y, for example requiring that y.m not modify the field f of any object. Recently, there has been progress in the semantics of procedural languages with local variables (e.g. see [OT95, PS93]) Some of the insights gained in that area should be applicable to reasoning about objects. 6 Past and future work As we mentioned in the introduction, there has been much research on specification and verification for object oriented languages. The words object and logic are frequently used ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995.
....re5 late f to g just if (5) and that is the de nition of logical relation. 2 Logical relations have been studied extensively in the context of polymorphic functional languages [Mit90, PA93] Relational parametricity is a key element in semantics of Algol suitable for data re nement [Ten94, OT95] To deal with a wider variety of program paradigms and constructs, there are general results that give sucient conditions for preservation of simulation; the conditions are expressed in the language of ordered categories [KP94] or 2 categories [Nau92] Here we do not use results or de nitions ....
....: init y : y inc(x) var p : proc( Q call p( The interpretations and coupling above apply to this example as well. Proving program equivalence. To illustrate the use of data re nement in proving laws of program re nement, we turn to the literature on Algol like languages [MS88, OT95] which has a number of interesting laws that have been used to test semantics for local variables and procedures. Some of these test equivalences are applicable to Io despite its syntactic restrictions. Some of the laws can be shown directly, e.g. the following is proved in [Nau00] var x : ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658-709, 1995.
....for the data type of functions the coupling should relate f to g just if (5) and that is the de nition of logical relation. Logical relations have been studied extensively in the context of functional languages [Mit90] and for relational parametricity which is a key element in semantics of Algol [Ten94,OT95]. To deal with a wider variety of program paradigms and constructs, there are general results that give sucient conditions for preservation of simulation; the conditions are expressed in the language of ordered categories [KP94] or 2 categories [Nau92] Here we do not use results or de nitions ....
....let Q : proc( pro (var x : D : init y : y inc(x) var p : proc( Q call p( The interpretations and coupling above apply to this example as well. Program equivalence. To illustrate the use of data re nement in proving laws, we turn to the literature on Algol like languages [MS88,OT95] which has a number of interesting laws that have been used to test semantics for local variables and procedures. Some of these test equivalences are applicable to Io despite its syntactic restrictions. Some of the laws can be shown directly, e.g. the following is proved in [Nau00] var x : ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658-709, 1995.
....we do not merely mean compositional reasoning: It is perfectly possible to be compositional and global (in the state) at the same time, as was the case in early denotational models of imperative languages. Second, some aspects of this work bear a strong similarity to semantic models of local state [19, 15, 16, 13, 12]. In particular, the conjunction is related to interpretations of syntactic control of interference [18, 10, 12] and the Frame Rule described in Section 3 was inspired by the idea of the expansion of a command from [19, 15] Nevertheless, local reasoning about state is not the same thing as ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42(3):658-709, May 1995. Also in [14], vol 2, pages 109-164.
....the relevantists resource semantics, disturbed by the impact of Girard and modified by two further factors. One of these factors is a spatial view of possible worlds semantics, which can, for example, be seen in the semantics of storage, where sharing rather than duplication is the major concern [11, 12, 13, 14]. The demands of the specific models there require a logic different from extant linear or relevant logics. A similar view, from a type theoretic, or logical frameworks, perspective, can be seen in [15, 16] In this paper, the spatial view of semantics arises in the more abstract setting of ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42(3):658--709, May 1995. Also in [31], vol 2, pages 109--164.
..... relating denotational semantic denitions [Re74, MS76] characterising parametric polymorphism [Re83] modelling abstract interpretation [Ab90] verifying data representations [Mi91] dening fully abstract semantics [OR95] and . modelling local state in higher order languages [OT95, St96] The two key properties of logical relations are 1. the so called Basic Lemma: a logical relation is preserved by the meaning of every lambda term; and 2. inductive denition: the type indexed family of relations is determined by the base type components. # This author was supported by ....
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. J. ACM, 42(3):658--709, May 1995.
No context found.
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995. (p 120)
No context found.
P. W. O'Hearn and R. D. Tennent. Parametricity and local variables. Journal of the ACM, 42(3):658--709, May 1995.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC