Component-based algebraic specification and verification in cafeOBJ

  • R.ăzvan Diaconescu
  • Kokichi Futatsugi
  • Shusaku Iida
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1709)


We present a formal method for component-based system specification and verification which is based on the new algebraic specification language CafeOBJ, which is a modern successor of OBJ incorporating several new developments in algebraic specification theory and practice. We first give an overview of the main features of CafeOBJ, including its logical foundations, and then we focus on the behavioural specification paradigm in CafeOBJ, surveying the object-oriented CafeOBJ specification and verification methodology based on behavioural abstraction. The last part of this paper further focuses on a component-based behavioural specification and verification methodology which features high reusability of both specification code and verification proof scores. This methodology constitutes the basis for an industrial strength formal method around CafeOBJ.


Proof Tree Error Handling Projection Operation Strict Equality List Object 
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.


  1. [1]
    Rod Burstall and Joseph Goguen. The semantics of Clear, a specification language. In Dines Bjorner, editor, Proceedings, 1979 Copenhagen Winter School on Abstract Software Specification, pages 292–332. Springer, 1980. Lecture Notes in Computer Science, Volume 86.Google Scholar
  2. [2]
    Manuel Clavel, Steve Eker, Patrick Lincoln, and Jose Meseguer. Principles of Maude. Electronic Notes in Theoretical Computer Science, 4, 1996. Proceedings, First International Workshop on Rewriting Logic and its Applications. Asilomar, California, September 1996.Google Scholar
  3. [3]
    Răzvan Diaconescu. Category-based semantics for equational and constraint logic programming, 1994. DPhil thesis, University of Oxford.Google Scholar
  4. [4]
    Răzvan Diaconescu. Behavioural coherence in object-oriented algebraic specification. Technical Report IS-RR-98-0017F, Japan Advanced Institute for Science and Technology, June 1998. Submitted to publication.Google Scholar
  5. [5]
    Răzvan Diaconescu. Extra theory morphisms for institutions: logical semantics for multiparadigm languages. J. of Applied Categorical Structures, 6(4):427–453, 1998.zbMATHCrossRefMathSciNetGoogle Scholar
  6. [6]
    Răzvan Diaconescu and Kokichi Futatsugi. Logical foundations of CafeOBJ. 1998. Submitted to publication.Google Scholar
  7. [7]
    Răzvan Diaconescu and Kokichi Futatsugi. CafeOBJ Report: The Language, Proof Techniques, and Methodologies for Object-Oriented Algebraic Specification, volume 6 of AMAST Series in Computing. World Scientific, 1998.Google Scholar
  8. [8]
    Răzvan Diaconescu, Kokichi Futatsugi, and Shusaku Iida. Component-based algebraic specifications:-behavioural specification for component based software engineering-. In Behavioural Semantics of Object-oriented Business and System Specification. Kluwer, 1999.Google Scholar
  9. [9]
    Răzvan Diaconescu, Joseph Goguen, and Petros Stefaneas. Logical support for modularisation. In Gerard Huet and Gordon Plotkin, editors, Logical Environments, pages 83–130. Cambridge, 1993. Proceedings of a Workshop held in Edinburgh, Scotland, May 1991.Google Scholar
  10. [10]
    Kokichi Futatsugi, Joseph Goguen, Jean-Pierre Jouannaud, and Jose Meseguer. Principles of OBJ2. In Proceedings of the 12th ACM Symposium on Principles of Programming Languages, pages 52–66. ACM, 1985.Google Scholar
  11. [11]
    Joseph Goguen and Rod Burstall. Institutions: Abstract model theory for specification and programming. Journal of the Association for Computing Machinery, 39(1):95–146, January 1992.zbMATHMathSciNetGoogle Scholar
  12. [12]
    Joseph Goguen and Răzvan Diaconescu. An Oxford survey of order sorted algebra. Mathematical Structures in Computer Science, 4(4):363–392, 1994.zbMATHMathSciNetCrossRefGoogle Scholar
  13. [13]
    Joseph Goguen and R.ăzvan Diaconescu. Towards an algebraic semantics for the object paradigm. In Harmut Ehrig and Fernando Orejas, editors, Recent Trends in Data Type Specification, volume 785 of Lecture Notes in Computer Science, pages 1–34. Springer, 1994.Google Scholar
  14. [14]
    Joseph Goguen and Grant Malcolm. A hidden agenda. Technical Report CS97-538, University of California at San Diego, 1997.Google Scholar
  15. [15]
    Joseph Goguen and José Meseguer. Eqlog: Equality, types, and generic modules for logic programming. In Douglas DeGroot and Gary Lindstrom, editors, Logic Programming: Functions, Relations and Equations, pages 295–363. Prentice-Hall, 1986.Google Scholar
  16. [16]
    Joseph Goguen and José Meseguer. Unifying functional, object-oriented and relational programming, with logical semantics. In Bruce Shriver and Peter Wegner, editors, Research Directions in Object-Oriented Programming, pages 417–477. MIT, 1987.Google Scholar
  17. [17]
    Joseph Goguen and Josée Meseguer. Order-sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theoretical Computer Science, 105(2):217–273, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  18. [18]
    Joseph Goguen, Timothy Winkler, Josée Meseguer, Kokichi Futatsugi, and Jean-Pierre Jouannaud. Introducing OBJ. In Joseph Goguen, editor, Algebraic Specification with OBJ: An Introduction with Case Studies. Cambridge. To appear.Google Scholar
  19. [19]
    Rolf Hennicker and Michel Bidoit. Observational logic. In A. M. Haeberer, editor, Algebraic Methodology and Software Technology, number 1584 in LNCS, pages 263–277. Springer, 1999. Proc. AMAST’99.CrossRefGoogle Scholar
  20. [20]
    Josée Meseguer. Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science, 96(1):73–155, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  21. [21]
    Josée Meseguer. Membership algebra as a logical framework for equational specification. In F. Parisi-Pressice, editor, Proc. WADT’97, number 1376 in Lecture Notes in Computer Science, pages 18–61. Springer, 1998.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • R.ăzvan Diaconescu
    • 1
  • Kokichi Futatsugi
    • 1
  • Shusaku Iida
    • 1
  1. 1.Japan Advanced Institute of Science and TechnologyJapan

Personalised recommendations