Skip to main content

About the “correctness” and “adequacy” of PLUSS specifications

  • Contributed Papers
  • Conference paper
  • First Online:
Recent Trends in Data Type Specification (ADT 1992, COMPASS 1992)

Abstract

In the context of algebraic specifications written in Pluss, this paper investigates various issues raised by the question: “Is my specification correct?”. Up to now the only ways to check the adequacy of a specification with respect to the problem to be solved are through running a prototype on appropriate examples, or through the use of the specification to prove consequent (expected) properties. Before this problem may be fully addressed, issues regarding the specification consistency and the correctness of the prototype w.r.t. the specification must be studied. In this paper, various issues concerning checking consistency and proving properties of PLUSS specifications are presented. It is investigated how general properties can be proved using an appropriate presentation of the specification that may be understood by a prototyping tool. While this study is done in the framework of the pluss specification language, it should be clear that most of the issues considered here arise in a similar way with other specification languages.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. G. Bernot. Good functors... are those preserving philosophy. In Proc. of the Summer Conference on Category Theory and Computer Science, pages 182–195. Springer-Verlag L.N.C.S. 283, 1987.

    Google Scholar 

  2. G. Bernot and M. Bidoit. Proving the correctness of algebraically specified software: Modularity and Observability issues. In Proc. of the 2nd International Conference on Algebraic Methodology and Software Technology (AMAST), 1991.

    Google Scholar 

  3. D. Bert, P. Drabik, and R. Echahed. Manuel de référence de LPG. Technical Report 17, IMAG-LIFIA, 1987.

    Google Scholar 

  4. M. Bidoit. The stratified loose approach: A generalization of initial and loose semantics. In Recent Trends in Data Type Specification, Selected Papers of the 5th Workshop on Specifications of Abstract Data Types, pages 1–22. Springer-Verlag L.N.C.S. 332, 1987.

    Google Scholar 

  5. M. Bidoit. Pluss, un langage pour le développement de spécifications algébriques modulaires. Thèse d'Etat, Université Paris-Sud, 1989.

    Google Scholar 

  6. M. Bidoit, C. Choppy, C. Roques, and F. Voisin. About the semantics of renaming in pluss, 1994. In preparation.

    Google Scholar 

  7. M. Bidoit, C. Choppy, and F. Voisin. Validation d'une spécification algébrique du nœud de transit par prototypage et démonstration. en préparation, 1993.

    Google Scholar 

  8. M. Bidoit, M.-C. Gaudel, and A. Mauboussin. How to make algebraic specifications more understandable? An experiment with the Pluss specification language. Science of Computer Programming, 12(1), 1989.

    Google Scholar 

  9. R.M. Burstall and J.A. Goguen. Putting theories together to make specifications. In Proc. of the 5th International Joint Conference on Artificial Intelligence (IJCAI), pages 1045–1058, 1977.

    Google Scholar 

  10. C. Choppy. Is my specification “correct” ? A study with pluss specifications. L.R.I. Research Report 817, 1993.

    Google Scholar 

  11. C. Choppy, D. Bert, M. Bidoit, R. Echahed, C. Roques, and F. Voisin. Rapid prototyping with algebraic specifications: A case study. L.R.I. Research Report 844, 1993.

    Google Scholar 

  12. H. Ehrig, W. Fey, and H. Hansen. ACT ONE: an algebraic specification language with two levels of semantics. Technical Report 83-03, TU Berlin FB 20, 1983.

    Google Scholar 

  13. H. Ehrig and B. Mahr. Fundamentals of algebraic specification 1. Equations and initial semantics, volume 6 of EATCS Monographs on Theoretical Computer Science. Springer-Verlag, 1985.

    Google Scholar 

  14. R. Forgaard and J. Guttag. reve: a term rewriting system generator with failure-resistant Knuth-Bendix, 1984. Proc. of an NSF workshop on the rewrite rule laboratory, and Report n∘ 84GEN008, General Electric.

    Google Scholar 

  15. K. Futatsugi, J.A. Goguen, J.-P. Jouannaud, and J. Meseguer. Principles of OBJ2. In Proc. of the 12th ACM Symposium on Principles of Programming Languages (POPL), pages 52–66, 1985.

    Google Scholar 

  16. H. Ganzinger and R. Schafers. System support for modular order-sorted Horn clause specifications. In Proc. of the 12th International Conference on Software Engineering, pages 150–159, 1990.

    Google Scholar 

  17. S. Garland and J. Guttag. An overview of lp, the Larch Prover. In Proc. of the Third International Conference on Rewriting Techniques and Applications, pages 137–151. Springer-Verlag L.N.C.S. 355, 1989.

    Google Scholar 

  18. S. Garland and J. Guttag. A Guide to LP, The Larch Prover. Technical Report 82, DEC-SRC, 1991.

    Google Scholar 

  19. S. Garland, J. Guttag, and J. Horning. Debugging Larch Shared Language Specifications. IEEE Transactions on Software Engineering, 16(9):1044–1057, 1990.

    Google Scholar 

  20. M.-C. Gaudel. Structuring and modularizing algebraic specifications: the pluss specification language, evolutions and perspectives. In Proc. of the 9th Symposium on Theoretical Aspects of Computer Science (STACS), pages 3–23. Springer-Verlag L.N.C.S. 577, 1992.

    Google Scholar 

  21. J.A. Goguen, J.W. Thatcher, and E.G. Wagner. An initial approach to the specification, correctness, and implementation of abstract data types. In R.T. Yeh, editor, Current Trends in Programming Methodology, volume 4, pages 80–149. Prentice Hall, 1978.

    Google Scholar 

  22. J. Guttag, J. Horning, and A. Modet. Report on the Larch Shared Language: Version 2.3. Technical Report 58, DEC-SRC, 1990.

    Google Scholar 

  23. J.V. Guttag and J.J. Horning. Report on the Larch shared language. Science of Computer Programming, 6(2):103–134, 1986.

    Google Scholar 

  24. S. Kaplan. Simplifying conditional term rewriting systems. Journal of Symbolic Computation, 4:295–334, 1987.

    Google Scholar 

  25. S. Kaplan. Positive/negative conditional rewriting. In Proc. of the Symposium on Mathematical Foundations of Computer Science. Springer-Verlag L.N.C.S., 1988.

    Google Scholar 

  26. T. Lehmann and J. Loeckx. The specification language of OBSCURE. In Recent Trends in Data Type Specification, Selected Papers of the 5th Workshop on Specification of Abstract Data Types, pages 131–153. Springer-Verlag L.N.C.S. 332, 1987.

    Google Scholar 

  27. P. Lescanne. Computer experiments with the REVE term rewriting systems generator. In Proc. of the 10th ACM Symposium on Principles of Programming Languages (POPL), 1983.

    Google Scholar 

  28. T. Moineau. Réutilisation de logiciel: une approche algébrique, son application à Ada et les outils associés. Thèse de Doctorat, Université Paris-Sud, 1991.

    Google Scholar 

  29. J.-L. Rémy and H. Zhang. reveur 4: a system for validating conditional algebraic specifications of abstract data types. In Proc. of the 6th European Conference on Artificial Intelligence (ECAI), pages 563–572, 1984.

    Google Scholar 

  30. C. Roques. pluss, validation de spécifications algébriques modulaires par prototypage par réécriture. L.R.I. DEA Report, 1990.

    Google Scholar 

  31. C. Roques. L'environnement asspegique: Le valideur. L.R.I. Research Report 727, 1992.

    Google Scholar 

  32. C. Roques. Modularité dans les spécifications algébriques, Théorie et application. Thèse de Doctorat, Université Paris-Sud, 1994.

    Google Scholar 

  33. D.T. Sannella and A. Tarlecki. Building specifications in an arbitrary institution. In Proc. of the International Symposium on Semantics of Data Types. Springer-Verlag L.N.C.S. 173, 1984.

    Google Scholar 

  34. M. Wand. Final algebra semantics and data type extensions. Journal of Computer and System Sciences, 19:27–44, 1979.

    Google Scholar 

  35. M. Wirsing. Structured algebraic specifications: A kernel language. Theoretical Computer Science, 42(2):124–249, 1986.

    Google Scholar 

  36. M. Wirsing, M. Broy, W. Dosch, H. Partsch, and P. Pepper. On hierarchies of abstract data types. Acta Informatica, 20:1–33, 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Hartmut Ehrig Fernando Orejas

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Choppy, C. (1994). About the “correctness” and “adequacy” of PLUSS specifications. In: Ehrig, H., Orejas, F. (eds) Recent Trends in Data Type Specification. ADT COMPASS 1992 1992. Lecture Notes in Computer Science, vol 785. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57867-6_7

Download citation

  • DOI: https://doi.org/10.1007/3-540-57867-6_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57867-3

  • Online ISBN: 978-3-540-48361-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics