We have developed a comprehensive model theory for nonmonotonic multiple value and code inheritance in object-oriented knowledge bases. Our new inheritance semantics, called optimistic object model semantics, supports implicit inference by inheritance as well as explicit deductive inference via rules. Inference by inheritance supports a multitude of features, such as overriding, nonmonotonic multiple value and code inheritance, meta programming, and dynamic class hierarchies --- the important features that are fundamental to advanced object-oriented knowledge management.
In the setting of three-valued models, we formally define the inheritance postulates that capture the common intuition behind overriding and conflict resolution in nonmonotonic multiple value and code inheritance. These postulates specify the minimum requirements for object models.
We specify an extended alternating fixpoint procedure for computing object models. We define a unique object model, called optimistic object model, for any given program that is written in our rule-based query language. We prove three different characterizations of the optimistic object model semantics: an optimistic object model is the least fixpoint of the extended alternating fixpoint computation, is the least stable object model with respect to information ordering, and is a minimal object model with respect to truth ordering.
Our new inheritance semantics yields intuitively satisfactory results in all known benchmark cases, does not impose syntactic restrictions on programs, and has been implemented in the Flora-2 system. To the best of our knowledge, the optimistic object model semantics is currently the only model-theoretic semantics for nonmonotonic multiple value and code inheritance that applies to general, unrestricted object-oriented knowledge bases.