[]
readme
course(s)
preface
I
1
2
II
3
4
III
5
6
7
IV
8
9
10
V
11
12
afterthought(s)
appendix
reference(s)
example(s)
resource(s)
_

object-oriented programming

- How would you characterize the conformance requirements for subtyping? Explain what properties are involved.
- Give an example of signature-compatible types not satisfying the history property.
- Explain the duality between imposing constraints statically and dynamically.
- How would you formally characterize program states and state transformations?
- Explain how you may verify the behavior of a program by means of correctness formulae.
- Characterize how the behavior of objects may be modeled by means of a transition system and specify a transition system for a simple object-oriented language.
- 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? - Discuss the problems involved in satisfying global invariance properties.
- What formal methods do you know that deal with specifying the behavior of collections of objects?

[]
readme
course(s)
preface
I
1
2
II
3
4
III
5
6
7
IV
8
9
10
V
11
12
afterthought(s)
appendix
reference(s)
example(s)
resource(s)
_

(C) Æliens 04/09/2009

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.