Sciweavers

ECOOP
2004
Springer

Object Invariants in Dynamic Contexts

13 years 10 months ago
Object Invariants in Dynamic Contexts
Abstract. Object invariants describe the consistency of object-oriented data structures and are central to reasoning about the correctness of object-oriented software. Yet, reasoning about object invariants in the presence of object references, methods, and subclassing is difficult. This paper describes a methodology for specifying and verifying object-oriented programs, using object invariants to specify the consistency of data and using ownership to organize objects into contexts. The novelty is that contexts can be dynamic: there is no bound on the number of objects in a context and objects can be transferred between contexts. The invariant of an object is allowed to depend on the fields of the object, on the fields of all objects in transitively-owned contexts, and on fields of objects reachable via given sequences of fields. With these invariants, one can describe a large variety of properties, including properties of cyclic data structures. Object invariants can be declared ...
K. Rustan M. Leino, Peter Müller
Added 01 Jul 2010
Updated 01 Jul 2010
Type Conference
Year 2004
Where ECOOP
Authors K. Rustan M. Leino, Peter Müller
Comments (0)