The theory of subtyping which judges object type compatibility from both the syntactic point of view and semantic point of view is discussed. The theory provides a tool for analyzing the type safety and behavioral correctness of programming languages. The main semantic behavioral rules of interest derived from the addition of constraints and the generalization of constraints strengthen an axiom. A compiler must be able to resolve the most specific type of an expression to select a unique overload.
['Anthony J. H. Simons']
The Theory of Classification Part 6: The Subtyping Inquisition