Abstract
Formal methods are still expected to improve the practice of software engineering. The areas in which formal methods will play important roles include at least: (1) distributed component software, (2) network/system security, (3) embedded systems. Formal methods are better supported by formal specification languages equipped with formal verification capability.
CafeOBJ is a formal specification language equipped with verification methodologies based on algebraic specification technique. CafeOBJ is an executable wide spectrum language based on multiple logical foundations; mainly based on initial and hidden algebras. Static aspects of systems are specified in terms of initial algebras, and dynamic aspects of systems are specified in terms of hidden algebras.
CafeOBJ is the first algebraic specification language which incorporates observational (or behavioral) specifications based on hidden algebras in a serious way. Observational specifications in CafeOBJ can be seen as a nice combination of static and dynamic specifications, and facilitate natural and transparent specification and verification of complex systems.
This paper gives an overview of CafeOBJ language system and formal methods based on the language. Some parts of this paper are updated and modified versions of the parts of already published book or papers such as [10, 18, 3, 7].
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Burstall, R. and Goguen, J. A., “Putting Theories Together to Make Specifications”, In Reddy, R. editor, Proc. of 5th IJCAI, 1977, pp. 1045–1058. 1, 3, 5, 17
Diaconescu, R., Extra Theory Morphisms for Institutions: logical semantics for multi-paradigm languages, Jour. of Applied Categorical Structures, 1998, a preliminary version appeared as JAIST Technical Report IS-RR-97-0032F in 1997. 5, 6
Diaconescu, R. and Futatsugi, K., CafeOBJ report. AMAST Series in Computing, 6. World Scientific, Singapore, 1998. 1, 2, 3, 4, 5, 6, 12, 15, 17
Diaconescu, R. and Futatsugi, K., Behavioural Coherence in Object-Oriented Algebraic Specification. Journal of Universal Computer Science, 6(1):74–96, 2000. 4, 5
Diaconescu, R. and Futatsugi, K., Logical Foundations of CafeOBJ, Theoretical Comupter Science, to appear. 6
Diaconescu, R., Futatsugi, K., and Iida, S., Component-based Algebraic Specification and Verification in CafeOBJ, Lecture Notes in Computer Science, 1708, pp. 1644–1663, 1999. 3, 12, 15
Diaconescu, R., Futatsugi, K., and Iida, S., CafeOBJ Jewels, in Futatsugi, K., Nakagawa, A.T., and Tamai, T., editors, CAFE: An Industiral-Strength Algebraic Formal Method, Elsevier, pp.33–60, 2000. 1
Futatsugi, K., Hierarchical Software Development in HISP, in Computer Science and Technologies 1982, ed. Kitagawa, T., Japan Annual Review in Electronics, Computers and Telecommunications Series, OHMSHA/North-Holland, pp.151–174, 1982. 1, 3, 17, 18
Futatsugi, K., An Overview of OBJ2”, Proc. of Franco-Japanese Symp. on Programming of Future Generation Computers, Tokyo, Oct. 1986, published as Programming of Future Generation Computers, ed. Fuchi, K. and Nivat, M., North-Holland, pp.139–160, 1988. 2, 3, 4
Futatsugi, K., Trends in Formal Specification Methods based on Algebraic Specification Techniques — from Abstract Data Types to Software Processes: A Personal Perspective —, Proceedings of the International Conference of Information Technology to Commemorating the 30th Anniversary of the Information Processing Society of Japan (InfoJapan’90), pp.59–66, October 1990, (invited talk). 1, 3, 17
Futatsugi, K., Goguen, J. A., Jouannaud, J.-P., and Meseguer, J., Principles of OBJ2, Proceedings of the 12th ACM Symposium on Principles of Programming Languages, ACM, pp.55–66, 1985. 2, 3, 4
Futatsugi, K., Goguen, J., Meseguer, J., editors, OBJ/CafeOBJ/Maude at Formal Methods’ 99, The Theta Foundation, Bucharest, Romania, (ISBN 973-99097-1-X), 1999. 1
Futatsugi, K., Goguen, J.A., Meseguer, J., and Okada, K., Parameterized Programming in OBJ2, Proc. of the 9th ICSE, IEEE, pp.51–60, 1987. 1, 3, 18
Futatsugi, K. and Nakagawa, A., An Overview of CAFE Specification Environment — an algebraic approach for creating, verifying, and maintaining formal specifications over networks —, Proc. 1st Intl. Conf. of Formal Engineering Methods, IEEE Press, pp.170–181, 1997. 3
Futatsugi, K. and Ogata, K., Rewriting Can Verify Distributed Real-time Systems, Proc. of International Symposium on Rewriting, Proof, and Computation, PRC’01, pp.60–79, Oct. 2001, (invited talk). 3
Futatsugi, K. and Okada, K., Specification Writing as Construction of hierarchically Structured Clusters of Operators, Proc. of IFIP Congress 80, Tokyo, pp. 287–292, Oct.1980. 3, 18
Futatsugi, K. and Okada, K., A Hierarchical Structuring Method for Functional Software Systems, Proc. of the 6th ICSE, pp.393–402, 1982. 3, 18
Futatsugi, K. and Sawada, T., Design Considerations for Cafe Specification Environment, in Proc. OBJ2 10th Anniversary Workshop, Numazu, Japan, Oct.1995. 1, 3
Futatsugi, K., Nakagawa, A., and Tamai, T., editors, CAFE: An Industrial-Strength Algebraic Formal Method, Elsevier Science B.V., Amsterdam, The Netherlands, (ISBN 0-444-50556-3), 2000. 1
Goguen, J. and Burstall, R., Institutions: Abstract Model Theory for Specification and Programming, Journal of the Association for Computing Machinery, 39(1), pp.95–146, 1992. 5, 6
Goguen, J. and Diaconescu, R., An Oxford Survey of Order Sorted Algebra, Mathematical Structures in Computer Science, 4(4), pp.363–392, 1994. 5, 6
Goguen, J. and Malcolm, G., A hidden agenda. Theoret. Comput. Sci., 245:55–101, 2000. 4
Goguen, J. and Meseguer, J., Eqlog: Equality, Types, and Generic Modules for Logic Programming, in Logic Programming: Functions, Relations and Equations, DeGroot, D. and Lindstrom, G. editors, Prentice-Hall, pp.295–363, 1986. 3, 6
Goguen, J.A. and Meseguer, J., Order-Sorted Algebra I: Equational Deduction for Multiple Inheritance, Overloading, Exceptions and Partial Operations, Theoretical Computer Science, 105(2), pp.217–273, 1992. 5, 7
Goguen, J. and Meseguer, J., Unifying Functional, Object-Oriented and Relational Programming with Logical Semantics, in Research Directions in Object-Oriented Programming, Shriver, B. and Wegner, P. editors, MIT Press, pp.417–477, 1987. 3, 6
Goguen, J.A., Thatcher, J.W., and Wagner, E.G., An Initial Algebra Approach to the Specification, Correctness, and Implementation of Abstract Data Types, IBM Research Report RC-6487, 1976; also in Current Trends in Programming Methodology, Vol.4: Data Structuring, ed. Yeh, R. T., Prentice-Hall, pp.80–149, 1978. 1
Goguen, J.A., Thatcher, J.W., Wagner, E.G., and Wright, J. B., Abstract Data Types as Initial Algebras and the Correctness of Data Representation, Computer Graphics, Pattern Recognition and Data Structure, IEEE, pp.89–93, 1975. 1
Goguen, J., Winkler, T., Meseguer, J., Futatsugi, K., and Jouannaud, J.P., Introducing OBJ, in Joseph Goguen and Grant Malcolm, editors, Software Engineering with OBJ, pp.3–167, Kluwer Academic Publishers, 2000. 2, 4, 18
Guttag, J.V. and Horning, J. J., The Algebraic Specification of Abstract Data Types, Acta Infomatica, 10, pp.27–52, 1978. 1
Iida, S., Diaconescu, R., Futatsugi, K., Component-Based Algebraic Specification-Behavioural Specification for Component-based Software Engineering-, in Behavioral Specifications of Bussiness and Systems, Kluwer Academic Publishers, pp.105–121, 1999. 4, 12, 15
Ishikawa, H., Futatsugi, K., and Watanabe, T., Concurrent Reflective Computations in Rewriting Logic (Extended Abstract), in Proc. of TRS Sympo. at RIMS, Kyoto, June, 1995. 17
Lawvere, F. W., Functorial Semantics of Algebraic Theories (Summary of Ph.D. Thesis, Columbia University), Proceedings, National Academy of Sciences, U. S.A., 50, pp.869–872, 1963. 3
Meseguer, J., A logical theory of cuncurrent objects, In ECOOP-OOPSLA’90 Conference on Object-Oriented Programming, ACM, Oct.1990, pp.101–115. 3, 5, 6
Meseguer, J., Conditional rewriting logic as a unified model of concurrency, Theoretical Computer Science, 96(1), pp73–155, 1992. 3, 5, 6, 17
Meseguer, J., Membership algebra as a logical framework for equational specification, in Parisi-Presicce, F. ed., Proc. WADT’97, Springer LNCS 1376, pp.18–61, 1998. 6
Okada, K. and Futatsugi, K., Supporting the Formal Description Process for Communication Protocols by an Algebraic Specification Language OBJ2, Proc. Of Second International Symposium on Interoperable Information System (ISIIS’88), Tokyo, pp.127–134, 1988. 3
Ohmaki, K., Futatsugi, K., and Takahashi, K., A Basic LOTOS Simulator in OBJ, Proceedings of InfoJapan’90 Computer Conference, Part 1, IPSJ, pp.497–504, 1990. 3
Smolka, G., Nutt, W. Goguen, J., and Meseguer, J., Order-Sorted Equational Computation, in Resolution of Equations in Algebraic Structures, Vol 2., Rewriting Techniques, eds Aït-Kaci, H. and Nivat, M., Academic Press, Inc., pp.297–368, 1989. 7
Srinivas, Y.V., Jülling, R., SPECWARE: Formal Support for Composing Software, Tech. Reprot KES.U.94.5, Kestrel Institute, 1994. 1, 18
Stevens, A. and Goguen, J., Mechanised theorem proving with 2OBJ: A tutorial introduction, Programming Research Group, University of Oxford, 1993. 3
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Futatsugi, K. (2002). Formal Methods in CafeOBJ. In: Hu, Z., Rodríguez-Artalejo, M. (eds) Functional and Logic Programming. FLOPS 2002. Lecture Notes in Computer Science, vol 2441. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45788-7_1
Download citation
DOI: https://doi.org/10.1007/3-540-45788-7_1
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-44233-2
Online ISBN: 978-3-540-45788-6
eBook Packages: Springer Book Archive