MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  A Logic of Object-Oriented Programs (1997) [125 citations — 0 self]

Download:
pdf
by Martín Abadi, K. Rustan, M. Leino
http://www.cse.ucsc.edu/~abadi/Papers/zm-verif.pdf
Add To MetaCart

Abstract:

Abstract. We develop a logic for reasoning about object-oriented programs. The logic is for a language with an imperative semantics and aliasing, and accounts for self-reference in objects. It is much like a type system for objects with subtyping, but our specifications go further than types in detailing pre- and postconditions. We intend the logic as an analogue of Hoare logic for object-oriented programs. Our main technical result is a soundness theorem that relates the logic to a standard operational semantics. 1

Citations

952 An Axiomatic Basis for Computer Programming – Hoare - 1969
795 A theory of objects – Abadi, Cardelli - 1996
402 Assigning meanings to programs – FLOYD - 1967
348 A behavioral notion of subtyping – Liskov, Wing - 1994
270 Extended static checking for Java – Flanagan, Leino, et al. - 2002
257 An Axiomatic Proof Technique for Parallel Programs I – Owicki, Gries - 1976
104 Toward reliable modular programs – Leino - 1995
103 Parametricity and local variables – O'Hearn, Tennent - 1995
97 Observable properties of higher order functions that dynamically create local names, or: What's new – Pitts, Stark - 1993
86 Towards fully abstract semantics for local variables: Preliminary report – Meyer, Sieber - 1988
78 Data abstraction and information hiding – Leino, Nelson - 2002
71 Modular Specification and Verification of Object-Oriented Programs – Müller - 2002
58 A simplified account of polymorphic references – Harper - 1994
48 Modular Specification and Verification of Object-Oriented Programs – Leavens - 1991
47 Let-floating: moving bindings to give faster programs – Jones, Partain, et al. - 1996
41 An introduction to first-order logic – Barwise - 1977
39 Ten Years of Hoare's Logic: A Survey---Part I – Apt - 1981
32 Verifying Object-Oriented Programs that Use Subtypes – Leavens - 1989
29 Reasoning and refinement in object-oriented specification languages – Lano, Haughton - 1992
27 Object-Oriented Specification Case Studies – Lano, Haughton - 1994
26 Programming language constructs for which it is impossible to obtain good Hoare axiom systems – Clarke
25 Recursive object types in a logic of object-oriented programming – Leino - 1998
13 Implementing a program logic of objects in a higher-order logic theorem prover – Hofmann, Tang - 2000
13 An object-based design method for concurrent programs – Jones - 1992
9 A proof system for the parallel object-oriented language POOL – Boer - 1990
5 Polymorphic typing of an algorithmic language. Technical report, Institut National de Recherche en Informatique et en Automatique – Leroy - 1992
4 Coalgebras and monads in the semantics of Java – Jacobs, Poll - 2003
1 Special issue: formal techniques for Java programs. Concurrency and Computation: Practice and Experience – Eisenbach, Leavens - 2001