There are two distinct aspects in object-orientation: structural (the statics) and procedural (the dynamics). The static aspect was somewhat easier to capture in logic and after taking a few wrong turns we developed F-logic. Taming the dynamics was harder, because there was no widely accepted solution to the problem of state changes even for traditional deductive languages. Our recent work on Transaction Logic appears to provide an adequate framework for specifying the dynamics in classical deductive languages.
In this talk, I will first review some core aspects of F-logic and Transaction Logic, and then show how the two can be combined in a natural way to yield a unified foundation for future work on deductive object-oriented languages, both in theory and practice.