Inhalt des Dokuments
Algebraic Specification Techniques
History: From the Seventies to the Nineties
The concept of algebraic specification for data types was developed independently at several sites in the USA and Europe in the late 70s. The development of algebraic specifications in Berlin was initiated by H. Ehrig, H.J. Kreowski and H. Weber and further developed in the 80s mainly by H. Ehrig and B. Mahr. Milestones of this development have been the theory of parameterized specifications in close cooperation with the ADJ-group (Thatcher, Wagner, Wright) at IBM Yorktown Heights - leading to the algebraic specification language ACT ONE in 1983 - and the theory of algebraic module specifications presented at the IFIP World Congress 1986. These theories have been presented in two volumes of the EATCS-Monographs on Theoretical Computer Science:
- H. Ehrig, B. Mahr: Fundamentals of Algebraic Specification 1: Equations and Initial Semantics, Springer 1985.
- H. Ehrig, B. Mahr: Fundamentals of Algebraic Specification 2: Module Specifications and Constraints, Springer 1990.
This couple of volumes including the presentation of the algebraic specification languages ACT ONE and an abstract version of ACT TWO is the fundament of the "Berlin School of Algebraic Specification" in research and teaching. Since begin of the 80s there are regular courses on algebraic specification techniques in undergraduate and graduate course within the Computer science Curriculum at TU Berlin. In the late 80s ACT ONE was combined with CCS leading to the integrated data type process specification language LOTOS. A software oriented presentation of the ACT-approach in Berlin is presented in the first volume of the AMAST Sereis in Computing:
- I. Claßen, H. Ehrig, D. Wolz: Algebraic Specification Techniques and Tools for Software Development: The ACT Approach, World Scientific 1993.
This volume includes not only the results of the DFG-project ACT, but also the new versions of the ACT ONE language and tools within the ESPRIT project LOTOSPHERE, where the integrated language LOTOS has been developed. One main contribution of the Berlin school within the ESPRIT Working Group COMPASS in the 90s has been the generalization of the theory of parameterized specifications and the algebraic module concept: The basic case of equational specifications and total algebras has been extended to the categorical framework of institutions and specification frames. This has allowed to instantiate the theory with several more general frameworks including partial algebras, first order logic and behavioral specifications. The corresponding categorical theory has been developed by F. Cornelius, H. Ehrig, M. Große-Rhode, U. Wolter in cooperation with F. Orejas (Barcelona) et al. Recent Developments A main contribution and research area over the last fifteen years is the integration of algebraic specification with other kinds of process and graphical specification techniques like Petri nets and graph transformation leading to algebraic high level nets and attributed graph transformation. This integration was part of the cooperation of the Berlin group in COMPASS with the ESPRIT Working Group COMPUGRAPH and the DFG Researcher Group on Petri Net Technology.
Most important for the development of algebraic specification techniques in Europe - even before COMPASS - has been the series of ADT-workshops with main focus on abstract data types in the 80s, algebraic specification of software systems in the 90s, and algebraic development techniques for all kinds of systems now. Another important recent development is the "Common Algebraic Specification Language" CASL , which has been developed by the COFI-initiative in Europe following up the COMPASS working group. CASL is an attempt to unify the large variety of algebraic specification languages all over the world, including CLEAR, OBJ, ACT ONE, ASL, LARCH, PLUSS, ACT TWO, Extended ML, OPAL, SPECTRAL, SPECTRUM and Café OBJ.
The focus of the Berlin School on algebraic specification and development techniques today is on the one hand the integration of algebraic specification with visual modeling techniques and the use of algebraic and categorical techniques in several other areas of computer science and system development. This includes especially teaching in the undergraduate and graduate level based on the books mentioned above and more recently also on the undergraduate text book
- H. Ehrig, B. Mahr, F. Cornelius, M. Große-Rhode, P. Zeitz: Mathematisch Strukturelle Grundlagen der Informatik, Springer Verlag 1999, 2001 (2. Auflage mit Koautoren K. Robering und G. Schröter).
This textbook includes detailed introductions in algebraic structures and specifications as well as different areas of logic and category theory.