Abstract
Given the different perspectives from which a complex software system has to be analyzed, the multiplicity of formalisms is unavoidable. This poses two important technical challenges: how to rigorously meet the need to interrelate formalisms, and how to reduce the duplication of effort in tool and specification building across formalisms. These challenges could be answered by adequate formal meta-tools that, when given the specification of a formal inference system, generate an efficient inference engine, and when given a specification of two formalisms and a translation, generate an actual translator between them. Similarly, module composition operations that are logic-independent, but that at present require costly implementation efforts for each formalism, could be provided for logics in general by module algebra generator meta-tools. The foundations of meta-tools of this kind can be based on a metatheory of general logics. Their actual design and implementation can be based on appropriate logical frameworks having efficient implementations. This paper explains how the reflective logical framework of rewriting logic can be used, in conjunction with an efficient reflective implementation such as the Maude language, to design formal meta-tools such as those described above. The feasibility of these ideas and techniques has been demonstrated by a number of substantial experiments in which new formal tools and new translations between formalisms, efficient enough to be used in practice, have been generated.
Acknowledgments
We thank: Stuart Allen, Robert Constable, and Douglas Howe for their help in understanding the HOL →Nuprl translation; Uri Nodelman and Carolyn Talcott for their work on the Wright → CSP → RWLogic translation; Grit Denker and Jon Millen for their work on the CAPSL to CIL translation; Christiano Braga and Peter Mosses for their work on building executable environments for SOS and Action Semantics; and Roberto Bruni and Ugo Montanari for their work on the translation from Tile Logic to Rewriting Logic, all of which are important experiments discussed in this paper. We also thank our fellow Maude team members Grit Denker, Patrick Lincoln, Narciso Martí-Oliet and José Quesada for their contributions to the theory and practice of Maude, and Carolyn Talcott for many discussions and extensive joint work on formal interoperability. We are also grateful to David Basin, Narciso Martí-Oliet, and the referees for their constructive criticism.
Supported by DARPA and NASA through Contract NAS2-98073, by Office of Naval Research Contract N00014-96-C-0114, and by National Science Foundation Grant CCR-9633363.
Chapter PDF
Similar content being viewed by others
Keywords
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.
References
R. Allen and D. Garlan. A formal basis for architectural connection. ACM Trans. Soft. Eng. and Meth., July 1997.
A. Avron, F. Honsell, I. A. Mason, and R. Pollack. Using typed lambda calculus to implement formal systems on a machine. Journal of Automated Reasoning, 9(3):309–354, December 1992.
H. P. Barendregt. Lambda-calculi with types. In S. Abramsky, D. M. Gabbay, and T. Maibaum, editors, Background: Computational Structures, volume 2 of Handbook of Logic in Computer Science. Oxford: Clarendon Press, 1992.
D. A. Basin and R. L. Constable. Metalogical frameworks. In G. Huet and G. Plotkin, editors, Logical Environments, pages 1–29. Cambridge University Press, 1993.
J. Bergstra and J. Tucker. Characterization of computable data types by means of a finite equational specification method. In J. W. de Bakker and J. van Leeuwen, editors, Automata, Languages and Programming, Seventh Colloquium, pages 76–90. Springer-Verlag, 1980. LNCS, Volume 81.
F. Blanqui, J. Jouannaud, and M. Okada. The calculus of algebraic constructions. In Proc. RTA’99: Rewriting Techniques and Applications, Lecture Notes in Computer Science. Springer-Verlag, 1999.
A. Bouhoula, J.-P. Jouannaud, and J. Meseguer. Specification and proof in membership equational logic. To appear in Theoretical Computer Science, http://www.maude.csl.sri.com/.
R. Bruni, J. Meseguer, and U. Montanari. nternal strategies in a rewriting implementation of tile systems. Proc. 2nd Intl. Workshop on Rewriting Logic and its Applications, ENTCS, North Holland, 1998.
R. Bruni, J. Meseguer, and U. Montanari. Process and term tile logic. Technical Report SRI-CSL-98-06, SRI International, July 1998.
R. Burstall and J. A. Goguen. The semantics of Clear, a specification language. In D. Bjorner, editor, Proceedings of the 1979 Copenhagen Winter School on Abstract Software Specification, pages 292–332. Springer LNCS 86, 1980.
M. Cerioli and J. Meseguer. May I borrow your logic? (Transporting logical structure along maps). Theoretical Computer Science, 173:311–347, 1997.
M. Clavel. Reflection in general logics and in rewriting logic, with applications to the Maude language. Ph.D. Thesis, University of Navarre, 1998.
M. Clavel, F. Durán, S. Eker, P. Lincoln, N. Martí-Oliet, J. Meseguer, and J. Quesada. Maude: specification and programming in rewriting logic. SRI International, January 1999, http://maude.csl.sri.com/.
M. Clavel, F. Duráan, S. Eker, and J. Meseguer. Building equational proving tools by reflection in rewriting logic. In Proc. of the CafeOBJ Symposium’;98, Numazu, Japan. CafeOBJ Project, April 1998. http://maude.csl.sri.com/.
M. Clavel, S. Eker, P. Lincoln, and J. Meseguer. Principles of Maude. In J. Meseguer, editor, Proc. First Intl. Workshop on Rewriting Logic and its Applications, volume 4 of Electronic Notes in Theoretical Computer Science. Elsevier, 1996.http://www.elsevier.nl/cas/tree/store/tcs/free/noncas/pc/volume4.htm.
M. Clavel and J. Meseguer. Axiomatizing reflective logics and languages. In G. Kiczales, editor, Proceedings of Reflection’96, San Francisco, California, April 1996, pages 263–288, 1996. http://jerry.cs.uiuc.edu/reflection/.
M. Clavel and J. Meseguer. Reflection and strategies in rewriting logic. In J. Meseguer, editor, Proc. First Intl. Workshop on Rewriting Logic and its Applications, volume 4 of Electronic Notes in Theoretical Computer Science. Elsevier, 1996. http://www.elsevier.nl/cas/tree/store/tcs/free/noncas/pc/volume4.htm.
CoFI Task Group on Semantics. CASL—The CoFI algebraic specification language, version 0.97, Semantics. http://www.brics.dk/Projects/CoFI, July 1997.
R. Constable. Implementing Mathematics with the Nuprl Proof Development System. Prentice Hall, 1987.
T. Coquand and G. Huet. The calculus of constructions. Information and Computation, 76(2/3):95–120, 1988.
G. Denker and J. Millen. CAPSL intermediate language. In N. Heintze and E. Clarke, editors, Proc. of Workshop on Formal Methods and Security Protocols, July 1999, Trento, Italy, 1999. http://www.cs.bell-labs.com/who/nch/fmsp99/program.html.
F. Duráan. A reflective module algebra with applications to the Maude language. Ph.D. Thesis, University of Malaga, 1999.
F. Duráan and J. Meseguer. An extensible module algebra for Maude. Proc. 2nd Intl. Workshop on Rewriting Logic and its Applications, ENTCS, North Holland, 1998.
S. Feferman. Finitary inductively presented logics. In R. Ferro et al., editors, Logic Colloquium’;88, pages 191–220. North-Holland, 1989.
A. Felty and D. Miller. Encoding a dependent-type λ;-calculus in a logic programming language. In M. Stickel, editor, Proc. 10th. Int. Conf. on Automated Deduction, Kaiserslautern, Germany, July 1990, volume 449 of LNCS, pages 221–235. Springer-Verlag, 1990.
K. Futatsugi and R. Diaconescu. CafeOBJ report. AMAST Series in Computing, Vol. 6, World Scientific, 1998.
P. Gardner. Representing Logics in Type Theory. PhD thesis, Technical Report CST-93-92, Department of Computer Science, University of Edinburgh, 1992.
H. Geuvers. Logics and Type Systems. PhD thesis, University of Nijmegen, 1993.
J.-Y. Girard. Linear Logic. Theoretical Computer Science, 50:1–102, 1987.
J. Goguen and R. Burstall. Institutions: Abstract model theory for specification and programming. Journal of the ACM, 39(1):95–146, 1992.
J. Goguen and J. Meseguer. Order-sorted algebra I: Equational deduction for multiple inheritance, overloading, exceptions and partial operations. Theoretical Computer Science, 105:217–273, 1992.
J. Goguen, T. Winkler, J. Meseguer, K. Futatsugi, and J.-P. Jouannaud. Introducing OBJ. Technical Report SRI-CSL-92-03, SRI International, Computer Science Laboratory, 1992. To appear in J.A. Goguen and G.R. Malcolm, editors, Applications of Algebraic Specification Using OBJ, Academic Press, 1999.
J. A. Goguen, A. Stevens, K. Hobley, and H. Hilberdink. 2OBJ: A metalogical framework based on equational logic. Philosophical Transactions of the Royal Society, Series A, 339:69–86, 1992.
M. Gordon. Introduction to HOL: A Theorem Proving Environment. Cambridge University Press, 1993.
R. Harper, F. Honsell, and G. Plotkin. A framework for defining logics. Journal of the Association Computing Machinery, 40(1):143–184, 1993.
C. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.
D. J. Howe. Semantical foundations for embedding HOL in Nuprl. In M. Wirsing and M. Nivat, editors, Algebraic Methodology and Software Technology, volume 1101 of Lecture Notes in Computer Science, pages 85–101, Berlin, 1996. Springer-Verlag.
G. Huet, C. Paulin-Mohring, et al. The Coq Proof Assistent Reference Manual, Version 6.2.4, Coq Project. Technical report, INRIA, 1999. http://pauillac.inria.fr/coq/.
J. P. Jouannaud. Membership equational logic, calculus of inductive constructions, and rewrite logic. In 2nd Workshop on Rewrite Logic and Applications, 1998.
Z. Luo. Computation and Reasoning: A Type Theory for Computer Science. International Series of Monographs on Computer Science. Oxford University Press, 1994.
Z. Luo and R. Pollack. Lego proof development system: User’;s manual. LFCS Technical Report ECS-LFCS-92-211, University of Edinburgh, 1992.
L. Magnussen. The Implementation of ALF-a Proof Editor based on Martin-Löf’ s Monomorphic Type Theory with Explicit Substitutions. PhD thesis, University of Göteborg, Dept. of Computer Science, 1994.
N. Martí-Oliet and J. Meseguer. Rewriting logic as a logical and semantic framework. Technical Report SRI-CSL-93-05, SRI International, Computer Science Laboratory, August 1993. To appear in D. Gabbay, ed., Handbook of Philosophical Logic, Kluwer Academic Publishers.
N. Martí-Oliet and J. Meseguer. General logics and logical frameworks. In D. Gabbay, editor, What is a Logical System&, pages 355–392. Oxford University Press, 1994.
N. Martí-Oliet and J. Meseguer. Rewriting logic as a logical and semantic framework. In J. Meseguer, editor, Proc. First Intl. Workshop on Rewriting Logic and its Applications, volume 4 of Electronic Notes in Theoretical Computer Science. Elsevier, 1996. http://www.elsevier.nl/cas/tree/store/tcs/free/noncas/pc/volume4.htm.
S. Matthews, A. Smaill, and D. Basin. Experience with FS0 as a framework theory. In G. Huet and G. Plotkin, editors, Logical Environments, pages 61–82. Cambridge University Press, 1993.
J. Meseguer. General logics. In H.-D. E. et al., editor, Logic Colloquium’87, pages 275–329. North-Holland, 1989.
J. Meseguer. Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science, 96(1):73–155, 1992.
J. Meseguer. Formal interoperability. In Proceedings of the 1998 Conference on Mathematics in Artificial Intelligence, Fort Laurerdale, Florida, January 1998, 1998. http://rutcor.rutgers.edu/~amai/Proceedings.html.
J. Meseguer. Membership algebra as a semantic framework for equational specification. In F. Parisi-Presicce, ed., Proc. WADT’97, 18–61, Springer LNCS 1376, 1998.
J. Meseguer. Research directions in rewriting logic. In U. Berger and H. Schwichtenberg, editors, Computational Logic, NATO Advanced Study Institute, Marktoberdorf, Germany, July 29-August 6, 1997. Springer-Verlag, 1999.
J. Meseguer and N. Martí-Oliet. From abstract data types to logical frameworks. In E. Astesiano, G. Reggio, and A. Tarlecki, editors, Recent Trends in Data Type Specification, Santa Margherita, Italy, May/June 1994, pages 48–80. Springer LNCS 906, 1995.
P. Mosses. Action Semantics. Cambridge University Press, 1992.
G. Nadathur and D. Miller. An overview of λProlog. In K. Bowen and R. Kowalski, editors, Fifth Int. Joint Conf. and Symp. on Logic Programming, pages 810–827. The MIT Press, 1988.
C. Paulin-Mohring. Inductive Definitions in the system Coq-Rules and Properties. In M. Bezem and J.. F. Groote, editors, Typed Lambda Calculi and Applications, International Conference on Typed Lambda Calculi and Applications, TLCA 93, volume 664 of Lecture Notes in Computer Science. Springer Varlag, 1993.
L. C. Paulson. Isabelle, volume 828 of Lecture Notes in Computer Science. Springer Verlag, 1994.
F. Pfenning. Elf: A language for logic definition and verified metaprogramming. In Proc. Fourth Annual IEEE Symp. on Logic in Computer Science, pages 313–322, Asilomar, California, June 1989.
R. Pollack. Closure under alpha-conversion. In H. Barendregt and T. Nipkow, editors, Types for Proofs and Programs: International Workshop TYPES’93, Nijmegen, May 1993, Selected Papers., volume 806 of Lecture Notes in Computer Science, pages 313–332. Springer-Verlag, 1993.
R. M. Smullyan. Theory of Formal Systems, volume 47 of Annals of Mathematics Studies. Princeton University Press, 1961.
M.-O. Stehr. CINNI-A New Calculus of Explicit Substitutions and its Application to Pure Type Systems. Manuscript, SRI-International, CSL, Menlo Park, CA, USA.
M.-O. Stehr and J. Meseguer. Pure type systems in rewriting logic — meta-logical and meta-operational views. Submitted for publication.
P. Viry. Rewriting: An effective model of concurrency. In C. Halatsis et al., editors, PARLE’ 94, Proc. Sixth Int. Conf. on Parallel Architectures and Languages Europe, Athens, Greece, July 1994, volume 817 of LNCS, pages 648–660. Springer-Verlag, 1994.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Clavel, M., Durán, F., Eker, S., Meseguer, J., Stehr, M.O. (1999). Maude as a formal meta-tool. In: Wing, J.M., Woodcock, J., Davies, J. (eds) FM’99 — Formal Methods. FM 1999. Lecture Notes in Computer Science, vol 1709. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48118-4_39
Download citation
DOI: https://doi.org/10.1007/3-540-48118-4_39
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66588-5
Online ISBN: 978-3-540-48118-8
eBook Packages: Springer Book Archive