## Reasoning about Denotations of Recursive Objects (2006)

Citations: | 4 - 0 self |

### BibTeX

@TECHREPORT{Schwinghammer06reasoningabout,

author = {Jan Schwinghammer},

title = {Reasoning about Denotations of Recursive Objects},

institution = {},

year = {2006}

}

### OpenURL

### Abstract

I hereby declare that this thesis has not been previously submitted, either in the same or different form, to this or any other university for a degree. Signature: Preface The contents of Part II were obtained as the result of joint research with my supervisor, Dr. Bernhard Reus. A preliminary version of this chapter appeared as a University of

### Citations

250 |
The Formal Semantics of Programming Languages
- Winskel
- 1993
(Show Context)
Citation Context ...ional model and concrete executions, usually formalised in terms of operationally defined observations and observational equivalence, and the statement of adequacy with respect to these observations (=-=Winskel 1993-=-). Adequacy asserts that reasoning about the denotations can soundly be transferred back to the operational behaviour of programs (although it may not be complete). However, in this thesis we shall fo... |

179 |
The category-theoretic solution of recursive domain equations
- Smyth, Plotkin
- 1982
(Show Context)
Citation Context ... technical results from domain theory that are used in subsequent chapters: A number of constructions on complete partial orders, solution of recursive domain equations in bilimit-compact categories (=-=Smyth and Plotkin 1982-=-; Levy 2004), and relational structures and invariant relations (Pitts 1996). Then, after summarising various proposals from the literature for the semantic interpretation of (both functional and impe... |

123 | On the notion of inheritance
- Taivalsaari
(Show Context)
Citation Context ...uages 57 It is the type of classes whose instance objects have typeA. The class type Root is defined by i,j Root def = Class(Object(X)[]) Much emphasis in class-based languages is put on inheritance (=-=Taivalsaari 1996-=-). Informally, a class consists of a set of pre-methods, that is, methods that are abstracted on the self parameter. Viewing inheritance as pre-method reuse, one defines an inheritance relation on cla... |

114 | Using UML: Software Engineering with Objects and Components
- Pooley, P
- 1999
(Show Context)
Citation Context ...gic. Example 4.3.1. Table 4.3 on page 70 defines a few transition relations. Table 4.1 shows a specification for the bank accounts of Example 3.3.2 (page 42). Although we are using UML-like notation (=-=Stevens and Pooley 2000-=-), our diagram actually stands for individual objects, not classes – in fact there are no classes in the language. Observe how the transition relationTinterest depends not only on the self parametery ... |

98 | Simple imperative polymorphism
- Wright
- 1995
(Show Context)
Citation Context ...pular and useful in practice: It provides a good compromise between expressiveness and type inference that is tractable in many relevant cases, witnessed by the ML and Haskell languages (Milner 1978; =-=Wright 1995-=-). In (Schwinghammer 2005a) we have shown that the coherence proof can be extended to such a language. However, similar to the per model described in Section 8.8.1 the “untyped” model contains a lot o... |

42 | Categorical models for local names
- Stark
- 1996
(Show Context)
Citation Context ...store shapes” of both Algol-like languages with block-allocated memory (Oles 1982; Tennent 1985; O’Hearn and Tennent 1997) and languages with more general dynamic allocation (for instance, Levy 2002; =-=Stark 1996-=-). For our purpose it suffices to consider categories of locally continuous functors between Cpo-enriched categories: IfI andC are Cpo-enriched, then[I,C] denotes the category of locally continuous fu... |

26 | On a monadic semantics for freshness
- Shinwell, Pitts
(Show Context)
Citation Context ...from separation logic (O’Hearn, Reynolds, and Yang 2001) to track the visibility and leaking of pointers. Benton and Leperchey develop similar ideas on top of a model built in the category of fmcpos (=-=Shinwell and Pitts 2005-=-). fm-sets and -cpos provide an elegant way of expressing freshness, which is used to neatly model the irrelevance of actual location names. Higher-order store is less well-understood. An investigatio... |

23 |
The C++ Programming Language, Third ed
- STROUSTRUP
- 1997
(Show Context)
Citation Context ... that accesses the argument via a reference of type refA, and returns the result via a reference of type refB. Function Pointers In low-level languages such as C (Kernighan and Ritchie 1988) and C++ (=-=Stroustrup 2000-=-), the concept of function pointers amounts to a form of higher-order store. For instance, a C function pointer ptr2fn is defined by int (*ptr2fn)(int) = &f; wheref is a function that takes an argumen... |

21 | An example of local reasoning in BI pointer logic: the Schorr-Waite graph marking algorithm
- Yang
- 2000
(Show Context)
Citation Context ...located heap memory including pointers. Reddy and Yang use a parametric model to express the inaccessibility of non-local, private store, employing ideas from separation logic (O’Hearn, Reynolds, and =-=Yang 2001-=-) to track the visibility and leaking of pointers. Benton and Leperchey develop similar ideas on top of a model built in the category of fmcpos (Shinwell and Pitts 2005). fm-sets and -cpos provide an ... |

20 |
The Fresh Approach: Functional Programming with Names and Binders
- Shinwell
- 2004
(Show Context)
Citation Context ...tional semantics. We omit the details and will be similarly sloppy in our treatment of allocation throughout this thesis. A neater and more formal development should be possible using the FM cpos of (=-=Shinwell 2005-=-; Shinwell and Pitts 2005), but we have not investigated this further. Next we show that for allf :D ′ ⇀D,g:E⇀E ′ ,R∈R(D),R ′ ∈R(D ′ ),S∈R(E) and S ′ ∈R(E ′ ), f :R ′ ⊂R ∧ g :S⊂S ′ �⇒ FStore(f,g) :Φ⊳S... |

19 |
Towards a formal semantics
- Strachey
- 1966
(Show Context)
Citation Context ...x and operational semantics, is often difficult. An alternative approach to proving program properties was initiated by the work of Scott and Strachey on denotational models of programming languages (=-=Strachey 1966-=-; Scott 1993; Scott and Strachey 1971; Scott 1972). To quote Fiore et al. (1996), a denotational semantics intends “to bring out subtle issues in language design, to derive new reasoning principles, a... |

15 | Full abstraction for the second order subset of an Algol-like language
- Sieber, Aug
- 1994
(Show Context)
Citation Context ...Oles 1982; O’Hearn and Tennent 1997). By imposing a strong notion of uniformity, parametricity, one can explain the constrained action of nonlocal procedures on local state (O’Hearn and Tennent 1995; =-=Sieber 1994-=-). This provides as1.3. Denotational Semantics 7 formal link to parametric polymorphism and its application to abstract data types and independence of data representation (O’Hearn and Reynolds 2000; R... |

15 | Full Abstraction for First-Order Objects with Recursive Types and Subtyping
- Viswanathan
(Show Context)
Citation Context ... small calculi where objects are primitive (Abadi and Cardelli 1996). Later work showed that for many of these calculi good encodings into lambda calculi exist (Abadi, Cardelli, and Viswanathan 1996; =-=Viswanathan 1998-=-). However, Abadi and Cardelli (1996) argued that the complexity exhibited by these translations justifies the study of primitive objects, seeing that the abstractions provided by object-oriented lang... |

14 | Reasoning about functions with effects
- Talcott
- 1998
(Show Context)
Citation Context ...lated Work In recent years operationally based techniques have become much more sophisticated and provide alternative reasoning principles. Work of Talcott and others (Mason, Smith, and Talcott 1996; =-=Talcott 1998-=-) is concerned with models of (effectful) lambda calculi based on equivalence classes of terms with respect to observational equivalence. Operational analogues of domain-theoretic concepts, such as fi... |

12 | Hoare logic for Java - Oheimb |

9 | Generation of verification conditions for Abadi and Leino’s logic of objects
- Tang, Hofmann
- 2002
(Show Context)
Citation Context ... be frozen at creation time (see Section 3.2.3).s4.3 Abadi-Leino Logic 4.3. Abadi-Leino Logic 67 We recall the logic of (Abadi and Leino 2004) next. A slightly different presentation can be found in (=-=Tang and Hofmann 2002-=-) where the proof system is given in a syntax-directed way. 4.3.1 Transition Relations and Specifications Transition relationsT correspond to the pre- and post-conditions of Hoare logic and allow to e... |

7 |
Functor-category semantics of programming languages and logics
- Tennent, Sep
- 1985
(Show Context)
Citation Context ...ordered sets) (Abramsky and Jung 1994; Mitchell 1996), games semantics (Abramsky and McCusker 1998), realizability structures and partial equivalence relations (Longley 1995), and functor categories (=-=Tennent 1985-=-). In this thesis we use the term domain for partially ordered sets with least upper bounds for all countable chains, but not necessarily containing a least element (note that some authors call these ... |

6 | Names, equations, relations: Practical ways to reason about new
- Stark
- 1998
(Show Context)
Citation Context ... storage. Pitts and Stark investigate the combination of call-by-value functions and dynamically created names (Pitts and Stark 1993; Pitts 1996) and dynamically created integer references (Pitts and =-=Stark 1998-=-). Functor categories prove a useful tool in this instance, too. Building on these results, recent work of Reddy and Yang (2004), and Benton and Leperchey (2005) has provided a fairly successful seman... |

3 | Object-Oriented Programming and Standard ML
- Thorup, Tofte
- 1994
(Show Context)
Citation Context ...he issues of modelling types and subtyping in the presence of updates and dynamic allocation. Many others apply similar ideas in a purely syntactic setting (Bono, Patel, Shmatikov, and Mitchell 1999; =-=Thorup and Tofte 1994-=-; Abadi, Cardelli, and Viswanathan 1996; Boudol 2004). This suffices for proofs of type soundness, but more expressive specifications are not usually discussed, and indeed logics of languages with hig... |

1 | Ghica (2000). Abstract models of storage - Tennent, R |