Integration of program construction and verification: the PROSPECTRA methodology

  • Bernd Krieg-Brückner
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 275)


The PROSPECTRA project aims to provide a rigorous methodology for developing correct Ada software and a comprehensive support system. It is a cooperative project between Universität Bremen, Universität Dortmund, Universität Passau, Universität des Saarlandes (all D), University of Strathclyde (GB), SYSECA Logiciel (F), Dansk Datamatik Center (DK), and Standard Electrica S.A. (E), and is sponsored by the Commission of the European Communities under the ESPRIT Programme, ref. #390 (see [1]).

The methodology integrates program construction and verification during the development process. User and implementor start with a formal specification, the interface or "contract". This initial specification is then gradually transformed into an optimised machine-oriented executable program. The final version is obtained by stepwise application of transformation rules. These are carried out by the system, with interactive guidance by the implementor, or automatically by compact transformation tools. Transformation rules form the nucleus of an extendible knowledge base.

The strict methodology of Program Development by Transformation (based on the CIP approach, see e.g. [2, 3]) is completely supported by the system. Any kind of activity is conceptually and technically regarded as a transformation of a "program" at one of the system layers. This provides for a uniform user interface, reduces system complexity, and allows the construction of system components in a highly generative way.


Requirement Specification Transformation Rule Program Construction Attribute Grammar Package Body 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Krieg-Brückner, B., Hoffmann, B., Ganzinger, H., Broy, M., Wilhelm, R., Möncke, U., Weisgerber, B., McGettrick, A.D., Campbell, I.G., Winterstein, G.: PROgram Development by SPECification and TRAnsformation. in: CEC, Directorate General XIII (eds.): ESPRIT '86: Results and Achievements. Elsevier Sci. Publ. (North-Holland) (1987) 301–311Google Scholar
  2. [2]
    Bauer, F.L.: Program Development by Stepwise Transformations — The Project CIP. in: Bauer, F. L., Broy, M. (eds.): Program Construction. LNCS 69, Springer 1979.Google Scholar
  3. [3]
    Bauer, F.L., Berghammer, R., Broy, M., Dosch, W., Gnatz, R., Geiselbrechtinger, F., Hangel, E., Hesse, W., Krieg.-Brückner, B., Laut, A., Matzner, T.A., Möller, B., Nickl, F., Partsch, H., Pepper, P., Samelson, K., Wirsing, M., Wössner, H.: The Munich Project CIP, Vol. 1: The Wide Spectrum Language CIP-L. LNCS 183, Springer 1985.Google Scholar
  4. [4]
    Partsch, H., Steinbrüggen, R.: Program Transformation Systems. ACM Computing Surveys 15 (1983) 199–236.CrossRefGoogle Scholar
  5. [5]
    Reference Manual for the Ada Programming Language. ANSI/MIL.STD 1815A. US Government Printing Office, 1983. Also in: Rogers, M. W. (ed.): Ada: Language, Compilers and Bibliography. Ada Companion Series, Cambridge University Press, 1984.Google Scholar
  6. [6]
    Luckham, D.C., von Henke, F.W., Krieg-Brückner, B., Owe, O.: Anna, a Language for Annotating Ada Programs, Preliminary Reference Manual. Technical Report No. 84–248, Computer Systems Laboratory, Stanford University, June 1984; also: LNCS, Springer (to appear).Google Scholar
  7. [7]
    Krieg-Brückner, B.: Informal Specification of the PROSPECTRA System. PROSPECTRA Study Note M.1.1.S1-SN-9.1, Universität Bremen, 1986.Google Scholar
  8. [8]
    Bertling, H., Ganzinger, H.: A Structure Editor Based on Term Rewriting. in: Proc. 2nd ESPRIT Technical Week, Brussels (1985) 455–466.Google Scholar
  9. [9]
    Bertling, H., Ganzinger, H.: Paraphrasing in the PROSPECTRA System. PROSPECTRA Report M.1.4-R-1.0, Universität Dortmund, 1986.Google Scholar
  10. [10]
    Heckmann, R.: An Efficient ELL(1) Parser Generator. Acta Informatica 23 (1986) 127–148.CrossRefMathSciNetGoogle Scholar
  11. [11]
    Möncke, U., Weisgerber, B., Wilhelm, R.: Generative Support for Transformational Programming. in: Proc. 2nd ESPRIT Technical Week, Brussels (1985) 511–528.Google Scholar
  12. [12]
    Möncke, U., Pistorius, S., Weisgerber, B.: OPTRAN under UNIX. PROSPECTRA Report S.1.6-R-3.0, Universität des Saarlandes, 1986.Google Scholar
  13. [13]
    Heckmann, R.: A Proposal for the Sytactic Part of the PROSPECTRA Transformation Language. PROSPECTRA Study Note S.1.6-SN-6.0, Universität des Saarlandes, 1987.Google Scholar
  14. [14]
    Owe. O.: An Approach to Program Reasoning Based on a First Order Logic for Partial Functions. Research Report No. 89, Institute of Informatics, University of Oslo, 1985.Google Scholar
  15. [15]
    Krieg-Brückner, B.: Transformation of interface Specifications. in: Kreowski, H.-J. (ed.): Recent Trends in Data Type Specification. Informatik Fachberichte 116, Springer 1985, 156–170.Google Scholar
  16. [16]
    Krieg-Brückner, B.: Systematic Transformation of Interface Specifications: Applicative to Imperative Style, Exceptions. in: Partsch, P. (ed.): Program Specification and Transformation, Proc. IFIP TC2 Working Conf. (Tölz). Elsevier Sci. Publ. (North-Holland) (to appear).Google Scholar
  17. [17]
    Bauer, F.L., Wössner, H.: Algorithmic Language and Program Development. Springer 1982.Google Scholar
  18. [18]
    Pepper, P.: A Study of Transformational Semantics. in: Bauer, F.L., Broy, M (eds.): Program Construction. LNCS 69, Springer (1979) 322–405.Google Scholar
  19. [19]
    Treff, L.: The Static Semantic Analysis of PAnndA-S; Vol. 1: Rationale, Vol. 2: Attribute Grammar. PROSPECTRA Report S.3.1-R-4.0, Karlsruhe: SYSTEAM KG, 1986.Google Scholar
  20. [20]
    Broy, M., Nickl, F.: PAnndA-S Semantics. PROSPECTRA Study Note M.2.1.A1-SN-2.1, Universität Passau, 1986.Google Scholar
  21. [21]
    Krieg-Brückner, B.: PAnndA-S, its Canonical Syntax and Alternative Paraphrasings. PROSPECTRA Study Note M.1.1.S1-SN-7.2, Universität Bremen, 1986.Google Scholar
  22. [22]
    Kahrs, S.: PAnndA-S Standard Types. PROSPECTRA Study Note M.1.1.S1-SN-11.2, Universität Bremen, 1986.Google Scholar
  23. [23]
    Broy, M.: Program Construction by Transformations: A Family Tree of Sorting Programs. in: Biermann, A. W. et al. (eds.): Computer Program Synthesis Methodologies. Proc. NATO Advanced Study Institute, Bonas 1981. NATO Advanced Study Series 95, Dordrecht: Reidel (1983) 1–49.Google Scholar
  24. [24]
    Partsch, H.: An Exercise in the Transformational Derivation of an Efficient Program by Joint Development of Control and Data Structure. Science of Computer Programming 3, 1983, 1–35.CrossRefGoogle Scholar
  25. [25]
    Partsch, H.: Structuring Transformational Developments: a Case Study Based on Early's Recogniser. Science of Computer Programming 4 (1984) 17–44.CrossRefGoogle Scholar
  26. [26]
    Broy, M., Krieg-Brückner, B.: Derivation of Invariant Assertions During Program Development by Transformation. ACM TOPLAS 2:3 (1980) 321–337.CrossRefGoogle Scholar
  27. [27]
    Kahrs, S.: From Constructive Specifications to Algorithmic Specifications. PROSPECTRA Study Note M.3.1.S1-SN-1.2, Universität Bremen, 1986.Google Scholar
  28. [28]
    Ganzinger, H.: Ground Term Confluence in Parametric Conditional Equational Specifications. in: Brandenburg, F.J., Vidal-Naquet, G., Wirsing, M.(eds.): Proc. 4th Annual Symp. on Theoretical Aspects of Comp. Sci., Passau '87. LNCS 247 (1987) 286–298.Google Scholar
  29. [29]
    Broy, M., Möller, B., Pepper, P., Wirsing, M.: Algebraic Implementations Preserve Program Correctness. Science of Computer Programming 7 (1986) 35–53.CrossRefGoogle Scholar
  30. [30]
    Qian, Z.: Structured Contextual Rewriting. in: Proc. 2nd Int'l Conf. on Rewriting Techniques and Applications, Bordeaux '87. LNCS (to appear).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1987

Authors and Affiliations

  • Bernd Krieg-Brückner
    • 1
  1. 1.Universität BremenGermany

Personalised recommendations