Though overriding as a single and default mode of inheritance is adequate for most knowledge bases, a large class of applications naturally requires several inheritance modes and types. We propose linguistic extensions of logical object-oriented languages to support multiple inheritance modes and types and give up the usual default overriding semantics in object-oriented systems. In this paper, we present a declarative semantics for a generalized parametric language for inheritance in object-oriented knowledgebases. We speci cally identify and discuss two inheritance modes, overriding and in ating, and three inheritance types, value, code and null. The parameterization we consider for our language is at the clause level. This approach generalizes to most languages similar to ours. We present a formal account of our language by giving a novel proof theory. We also hint at a model theory and a xpoint theory and claim their equivalence. A full logical characterization of modes and types ...
Hasan M. Jamil