The program development process is viewed as a sequence of implementation steps leading from a specification to a program. Based on an elementary notion of refinement, two notions of implementation are studied: constructor implementations which involve a construction "on top of" the implementing specification, and abstractor implementations which additionally provide for abstraction from some details of the implemented specification. These subsume most formal notions of implementation in the literature. Both kinds of implementations satisfy a vertical composition and a (modified) horizontal composition property. All the definitions and results generalise to the framework of an arbitrary institution.
|Title of host publication||TAPSOFT '87|
|Subtitle of host publication||Proceedings of the International Joint Conference on Theory and Practice of Software Development Pisa, Italy, March 23–27, 1987|
|Editors||Hartmut Ehrig, Robert Kowalski, Giorgio Levi, Ugo Montanari|
|Number of pages||15|
|Publication status||Published - 1987|
|Name||Lecture Notes in Computer Science|
|Publisher||Springer Berlin / Heidelberg|