Formal Specification of Abstract Data Types

RISC-Linz logo

Wolfgang Schreiner
326.511, WS 2000/2001
Thu 16:30-18:00, Start: 9.11.2000

The goal of this course is to teach students of computer science and mathematics methods for the formal specification of abstract data types and their application in practical examples. No prerequisites apart from basic set theory are required.

We concentrate on the approach of algebraic program specification where concepts from universal algebra (many-sorted algebras) are used to formalize the semantics of specifications. For rapid prototyping, we use the software system CafeOBJ (available in public domain for any Unix or Linux computer) in which specifications can be directly executed. We put the presented techniques into context by contrasting them with the alternative approach of state-oriented specifications in the language Z.

Students are expected to elaborate exercises and to present them in class. Because of the late starting date, some additional classes will be scheduled.



Jacques Loeckx and Hans-Dieter Ehrich and Markus Wolf
Specification of Abstract Data Types, Wiley & Teubner, Chichester, UK, 1996.
Ivo van Horebeek and Johan Lewi
Algebraic Specifications in Software Engineering, Springer, Berlin, Germany, 1989.
Narain Gehani and Andrew McGettrick (eds)
Software Specification Techniques, Addison Wesley, Wokingham, UK, 1986.
Ataru T. Nakagawa and Toshimi Sawada and Kokichi Futatsugi
CafeOBJ User's Manual -- ver.1.4, CafeOBJ Homepage (Romania).
Joseph A. Goguen et al.
Introducing OBJ, Technical Report, Programming Research Group, Oxford University, UK, October 1993.
Ben Potter and Jane Sinclair and David Till
An Introduction to Formal Specification and Z, Second Edition, Prentice Hall International Series in Computer Science, London, UK, 1996.


Maintainer: Wolfgang Schreiner
Last Modification: January 17, 2001

[Up] [RISC-Linz] [University] [Search]