Abstract
The RAISE specification language was developed for industrial use on the basis of experience in applying VDM and other approaches to software development. This experience suggested the need to have, in one common framework, some specification concepts besides those of VDM, together with methods and tools to make them easier to use.
The language meets this need by unifying the model oriented and property oriented specification techniques for both applicative and imperative systems. It also provides a unified approach to the development of applicative and imperative systems, based on a proof theoretic view of refinement. All this affects how the semantic foundations and proof theory for the language are formalised.
In this paper, some language design decisions are motivated and the associated effects on the formal basis of the language are discussed. Particular attention is paid to how semantic difficulties are resolved. The design decisions are placed in a wider context by looking at other ways of unifying specification techniques, some of which have been adopted in other projects. Some conclusions are drawn about the completed formal work and the outstanding tasks.
This work was partly supported by STC Technology Limited (the predecessor of BNR Europe Limited) and the Commission of the European Communities (CEC) under the ESPRIT programme for software technology, project number 315, “Rigorous Approach to Industrial Software Engineering (RAISE)”.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Astesiano, E., and Cerioli, M., Multiparadigm Specification Languages: a First Attempt at Foundations, in this volume.
Baeten, J.C.M., and Weijland, W.P., Process Algebra, Cambridge Tracts in Theoretical Computer Science, 18, Cambridge University Press (1990).
Bauer, F.L., Moller, B., Parsch, H., and Pepper, P., Programming by formal reasoning: computer-aided intuition-guided programming, IEEE Transactions on Software Engineering, 15 (2), 165–180 (1989).
Bergstra, J.A., Heering, J., and Klint, P., Module Algebra, Journal of the ACM, 37 (2), 335–372 (1990).
Bolignano, D., and Debabi, M., Higher Order Communicating Processes with Value-Passing, Assignment and Return of Results, Algorithms and Computation, Lecture Notes in Computer Science, 650, 319–331, Springer-Verlag (1992).
De Nicola, R., and Hennessy, M., CCS without is, TAPSOFT ‘87. Volume 1, Lecture Notes in Computer Science, 249, 138–152, Springer-Verlag (1987).
Ehrig, H., and Mahr, B., Fundamentals of Algebraic Specification 1, Equations and Initial Semantics, EATCS Monographs on Theoretical Computer Science, 6, Springer-Verlag (1985).
Feijs, L.M.G., and Jonkers, H.B.M., Formal Specification and Design, Cambridge Tracts in Theoretical Computer Science, 35, Cambridge University Press (1992).
Goguen, J.A., and Winkler, T., Introducing OBJ3, Report SRI-CSL-88–9, SRI International (1988).
Gordon, M.J.C., HOL: A Proof Generating System for Higher-Order Logic, VLSI Specification, Verification and Synthesis, 73–128, Kluwer (1988).
Guttag, J.V., Horning, J.J., and Wing, J.M., Larch in Five Easy Pieces, Technical Report, 5, DEC SRC (1985).
Havelund, K., Semantics of RSL, RAISE/DDC/KH/43/V1, Computer Resources International (1989).
Hennessy, M., Acceptance Trees, Journal of the ACM, 32 (4), 896–928 (1985).
Hennessy, M., A Proof System for Communicating Processes with Value-Passing, Formal Aspects of Computing, 3 (4), 346–366 (1991).
Hoare, C.A.R., Communicating Sequential Processes, Prentice-Hall International (1985).
International Telecommunications Union, Specification and Description Language SDL, Recommendation Z.100 (1992).
Jones. C.B., Systematic Software Development Using VDM, Prentice-Hall International (1990).
Kahrs, S., Sannella, D., and Tarlecki, A., The Semantics of Extended ML: A Gentle Introduction, in this volume.
Larsen, P.G., Towards Proof Rules for Looseness in Explicit Definitions from VDM-SL, in this volume.
Milne, R•E., Concurrency models and axioms, RAISE/STC/REM/6/V2, STC (1988).
Milne, R.E., The semantic foundations of the RAISE specification language, RAISE/STC/REM/11/V2, STC (1990).
Milne, R.E., The proof theory for the RAISE specification language, RAISE/STC/REM/12N2, STC (1990).
Milne, R.E., Transforming axioms for data types into sequential programs, Proceedings of the Fourth Refinement Workshop, 197--240, Springer-Verlag (1991).
Milner, A.J.R.G., Communication and Concurrency, Prentice-Hall International (1989).
Milner, A.J.R.G., Tofte, M., and Harper, R., The Definition of Standard ML, MIT Press (1990).
Sannella, D., and Tarlecki, A., Extended ML: an institution-independent framework for formal program development, Category Theory and Computer Programming, Lecture Notes in Computer Science, 240, 364–389, Springer Verlag (1986).
Sannella, D., and Tarlecki, A., Towards formal development of programs from algebraic specifications: implementation revisited, Acta Informatica, 25, 223–281 (1988).
Spivey, M., The Z Notation: A Reference Manual, Prentice-Hall International (1989).
Stirling, C., Modal Logics for Communicating Systems, Theoretical Computer Science, 49, 311–347 (1987).
The RAISE Language Group, The R4ISE Specification Language,Prentice-Hall International (1991).
Turski, W. M., and Maibaum, T.S.E., The specification of computer programs, Addison-Wesley (1987).
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1994 British Computer Society
About this paper
Cite this paper
Milne, R. (1994). The formal basis for the RAISE specification language. In: Andrews, D.J., Groote, J.F., Middelburg, C.A. (eds) Semantics of Specification Languages (SoSL). Workshops in Computing. Springer, London. https://doi.org/10.1007/978-1-4471-3229-5_3
Download citation
DOI: https://doi.org/10.1007/978-1-4471-3229-5_3
Publisher Name: Springer, London
Print ISBN: 978-3-540-19854-3
Online ISBN: 978-1-4471-3229-5
eBook Packages: Springer Book Archive