Types algebriques et semantique des langages de programmation

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 83)


The notion of abstract data types appears in recent languages (CLU, ALPHARD, EUCLID, ADA), for reasons of modularity and protection. Although an algebraïc specification of abstract data types has been developped (Guttag, ADJ), the connection between program semantics and data type semantics has not yet been established, like it was made for the axiomatization of PASCAL. In this paper, we show that the language semantics is composed by a fixed part : the control structure semantics and by an extensible part : the data type semantics. As a consequence, we can, for example, deduce the axiom of the assignement to a subscripted variable from the axioms of the array data type. Finally, we study how to prove that a representation module of an abstract data type is correct w.r.t. its algebraic specification i.e., that it satisfies the algebraic equations.


Abstract Data Type Program Semantic Algebraic Specification Verification Computer Recent Language 
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.

5 — Bibliographie

  1. [1]
    Preliminary ADA Reference Manual SIGPLAN Notices, vol.14, 6, part A, June 1979Google Scholar
  2. [2]
    J.W. de BAKKER Correctness proofs for assignment statements Report IW 55/76, Mathematical Center, Amsterdam, 1976Google Scholar
  3. [3]
    J.W. de BAKKER Semantics and the foundations of program proving Information processing 77, B. Gilchrist, ed., IFIP, 1977, TorontoGoogle Scholar
  4. [4]
    BERT D., JACQUET P. Generic abstract data types Proc. 5th Annual III Conference, WG 2.1., IFIP, mai 1977Google Scholar
  5. [5]
    BERT D. La programmation générique: construction de logiciel, spécification algébrique et vérification Thèse d'Etat, Université de Grenoble I, Labo.IMAG, 1979Google Scholar
  6. [6]
    R.M. BURSTALL, J.A. GOGUEN Putting theories together to make specifications Proc. Fifth Int. Joint Conf. on artificial intelligence, 1977 MIT, Cambridge, Mass. pp. 1045/1058Google Scholar
  7. [7]
    J.E. DONAHUE Locations considered unnecessary Acta Informatica 8, pp. 221/242, 1977Google Scholar
  8. [8]
    J.P.FINANCE De la spécification abstraite d'une donnée à sa représentation en mémoire: les états successifs d'une information Théorie et techniques de l'informatique, Actes du congrès AFCET, novembre 78, pp. 423/433.Google Scholar
  9. [9]
    J.A.GOGUEN, J.W.THATCHER, E.G.WAGNER An initial algebra approach to the specification,correctness and implementation of abstract data types IBM Research report, RC 6487, octobre 1976.Google Scholar
  10. [10]
    J.A.GOGUEN Abstract errors for abstract data types Proc. IFIP Working conference on formal description of programming concepts MIT, 1977Google Scholar
  11. [11]
    J.V.GUTTAG, E.HOROWITZ, D.R.MUSSER Abstract data types and software validation University of Southern California, report ISI/RR 76 48, août 1976Google Scholar
  12. [12]
    J.V. GUTTAG, J.J. HORNING The Algebraic specification of abstract data types Acta Informatica, 10, pp. 27/52, 1978Google Scholar
  13. [13]
    J.V.GUTTAG, J.STAUNSTRUP Algebraic axioms, classes and program verification Computer science department, University of Southern California Rapport no 213 741 6288, mars 1978Google Scholar
  14. [14]
    C.A.R. HOARE Proof of correctness of data representations Acta Informatica, 1, 4, 1972, pp. 271/281Google Scholar
  15. [15]
    C.A.R. HOARE, N. WIRTH An axiomatic definition of the programming language PASCAL Acta Informatica, 2, pp. 335/355, 1973Google Scholar
  16. [16]
    B.W.LAMPSON, J.J.HORNING, R.L.LONDON, J.G.MITCHELL, G.L.POPEK Report on the programming language EUCLID SIGPLAN Notices, vol. 12, no2, 1977Google Scholar
  17. [17]
    B. LISKOV, S. ZILLES Programming with abstract data types Proc. of the ACM SIGPLAN Conference on very high level languages SIGPLAN Notices, 9, 4, 1974, pp. 50/59Google Scholar
  18. [18]
    B. LISKOV, A. SNYDER, R. ATKINSON, C. SCHAFFERT Abstraction mechanisms in CLU CACM, vol.20, no8, pp. 564/576, 1977Google Scholar
  19. [19]
    R.E. MILNE, C. STRACHEY A theory of programming language semantics Chapman and Hall, London, Wiley New-York, 1977Google Scholar
  20. [20]
    R.NAKAJIMA, M.HONDA, H.NAKAHARA Describing and verifying programs with abstract data types Proc. of IFIP Working conference on the formal description of programming concepts, MIT (1977)Google Scholar
  21. [21]
    J.E.STOY Denotational semantics: The Scott-Strachey approach to programming language theory MIT Press, 1977Google Scholar
  22. [22]
    R.D. TENNENT The Denotational Semantics of programming languages CACM, 19, 8, august 1976Google Scholar
  23. [23]
    R.D. TENNENT On a new approach to representation independent data classes Acta Informatica, vol.8, fasc.4, 1977, pp. 315/324Google Scholar
  24. [24]
    J.W.THATCHER, E.G.WAGNER, J.B.WRIGTH Data type specification: parameterization and the power of specification techniques Proc. 10th SIGACT Symposium on theory of computing, San Diego, CA, 1978Google Scholar
  25. [25]
    W.A.WULF, R.L.LONDON, M.SHAW Abstraction and verification in ALPHARD: introduction to language and methodology ISI/RR, 74–76, University of California, 1976Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1980

Authors and Affiliations

  • D. Bert
    • 1
  1. 1.Laboratoire IMAGGrenoble cédexFrance

Personalised recommendations