Abstract
Transition specifications extend algebraic specifications by a notion of states and state transitions, introducing a second dynamic layer on abstract data types. This makes possible a reduction of complex specifications by the introduction of an explicit system state, a formal comparison of algebraic specifications and imperative algorithms, and the specification of input/output and other communication features. States are modelled as partial algebras that extend a given algebra by an environment, that is, a partial function that assigns contents to references. State transitions are specified by conditional parallel assignments, analoguous to the conditional existence equations of partial equational specifications. A framework of transition specifications is developed, including initial model semantics, parameterization and general composition mechanisms, and a notion of model correctness. Examples from programming languages show the applicability of the approach.
Similar content being viewed by others
References
Ancona, D., Astesiano, E. and Zucca, E.: Towards a classification of inheritance relations, in Proc. International Workshop on Information Systems — Correctness and Reusability, ISCORE'93, Informatik Berichte, No. 01/93, Universität Hannover, 1993, pp. 90–113.
Astesiano, E. and Zucca, E.: A semantic model for dynamic systems, in Springer Workshops in Computing, 1992/93, pp. 63–80.
Astesiano, E. and Zucca, E.: D-oids: A model for dynamic data types, Math. Struct, in Comp. Sci. 5(2) (1995), 257–282.
Burstall, R. M. and Goguen, J. A.: The semantics of CLEAR, a specification language, in D Bjøner (ed.), Abstract Software Specification, Proc. 1979 Copenhagen Winter School, LNCS 86, Springer, 1980, pp. 292–332.
Chandy, K. M. and Misra, J.: Parallel Program Design — A Foundation, Addison-Wesley, 1988.
Claßen, I.: Compositionality of application oriented structuring mechanisms for algebraic specification languages with initial semantics, PhD thesis, Technische Universität Berlin, 1993.
Claßen, I., Große-Rhode, M. and Wolter, U.: Categorical concepts for parameterized partial specifications, Math. Struct. in Comp. Science 5(2) (1995), 153–188.
Claßen, I., Ehrig, H. and Wolz, D.: Algberaic Specification Techniques and Tools for Software Development — The ACT Approach, AMAST Series in Computing, Vol. 1, World Scientific, 1993.
Dauchy, P.: Développement et exploitation d'une specification algébrique du logiciel embarqué d'un métro, PhD thesis, Université de Paris-Sud, 1992.
Dauchy, P., Gaudel, M. C. and Marre, B.: Using algebraic specifications in software testing: a case study on the software of an automatic subway, Journal of Systems and Software 21(3) (1993), 229–244.
Dauchy, P. and Gaudel, M. C.: Algebraic Specifications with Implicit States, Tech. Report, Univ. Paris Sud, 1994.
Dauchy, P. and Marre, B.: Test data selection from algebraic specifications: application to an automatic subway module, in 3rd European Software Engineering Conference, ESEC'91, LNCS 550, 1991.
Ehrig, H., Löwe, M. and Orejas, F.: Dynamic abstract data types based on algebraic graph transformations, in ADT-Workshop'94, LNCS 906, Springer-Verlag, 1995, pp. 236–254.
Ehrig, H. and Mahr, B.: Fundamentals of Algebraic Specification 1: Equations and Initial Semantics, Vol. 6 of EATCS Monographs on Theoretical Computer Science, Springer, Berlin, 1985.
Ehrig, H. and Orejas, F.: Dynamic abstract data types: An informal proposal, Bull. EATCS 53 (1994).
Ehrig, H. and Padberg, J.: Linking dynamic abstract datatypes with algebraic high-level nets, Bull. EACTS 54 (1994).
Große-Rhode, M.: Specification of Transition Categories — An Approach to Dynamic Abstract Data Types, PhD thesis, TU Berlin, 1995.
Gurevich, Y.: Algorithms in the world of bounded resources, in R. Herken (ed.), The Universal Turing Machine — a Half-Century Story, Oxford University Press, 1988, pp. 407–416.
Gurevich, Y.: Logic and the challenge of computer science, in E. Börger (ed.), Trends in Theoretical Computer Science, Computer Science Press, 1988, pp. 1–57.
Gurevich, Y.: Evolving algebras, a tutorial introduction, Bull. EATCS 43 (1991), 264–284.
Lloyd, J.: Current theoretical issues in logic programming (abstract), Bull. EATCS 39(211), (1989).
Meyer, B.: Object-Oriented Software Construction, Prentice Hall International, 1988.
Reichel, H.: Initial Computability, Algebraic Specifications, and Partial Algebras, Oxford University Press, Oxford, 1987.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Große-Rhode, M. Transition Specifications for Dynamic Abstract Data Types. Applied Categorical Structures 5, 265–308 (1997). https://doi.org/10.1023/A:1008641804822
Issue Date:
DOI: https://doi.org/10.1023/A:1008641804822