This paper outlines a sound and complete Hoare logic for a sequential object-oriented language with inheritance and subtyping like Java. It describes a weakest precondition calculus for assignments and object-creation, as well as Hoare rules for reasoning about (mutually recursive) method invocations with dynamic binding. Our approach enasoning at an abstraction level that coincides with the general ion level of object-oriented languages.
Cees Pierik, Frank S. de Boer