Algebraic Specification
ä Specifying abstract types in terms of
relationships between type operations
ä Popular descriptive specification style used
to define a system as a heterogeneous
algebra (a collection of different sets on
which several operations are defined)
ä Specification is quite close to the notion of
abstract data types
ä module that exports a type along with the
operations that must be invoked to access and
manipulate objects of that type
ä hides the representation of the type and the
algorithms used in the operations