How would you characterize the relation between an abstract data type and its realizations? Give an example of an abstract specification of a stack. Define a realization and show that the realization is correct with respect to its abstract specification. Explain the notion of correspondence for behavioral subtypes. Show that a stack is a behavioral subtype of a bag by defining an appropriate correspondence relation. What proof obligations must be met?