Class-local object invariants

  • Authors:
  • K. Rustan M. Leino;Angela Wallenburg

  • Affiliations:
  • Microsoft Research, Redmond, WA;Chalmers University of Technology, Göteborg, Sweden

  • Venue:
  • ISEC '08 Proceedings of the 1st India software engineering conference
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

The correctness of object-oriented programs relies on object invariants. A system for verifying such programs requires a systematic method for coping with object invariants that can be violated temporarily. This paper describes a sound methodology for flexibly changing data locally in object structures, supporting programming patterns that occur frequently in practice. In more detail, to handle subclasses, previous approaches have been geared toward programs that update the fields of an object only in overridable virtual methods of the object. The enhanced methodology in this paper handles field updates in a much more flexible way. The flexibility can be applied to a field in the common case where the field is not mentioned in subclass invariants