From abstract data types to logical frameworks

  • José Meseguer
  • Narciso Marti-Oliet
Invited Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 906)

Abstract

This paper surveys ways in which the ideas and concepts developed in the research field of abstract data types have undergone a vigorous process of generalization that has led to the development of axiomatic notions of logic and of expressive multiparadigm logics. On the one hand, the generalization from equational specifications to specifications in any logic requires general metalogical concepts making precise what logics are. Beginning with the notion of institution, several notions have been proposed to cover different needs arising in this task; we discuss these notions and summarize in particular the main ideas of the theory of general logics, which is a specific line of work in this area. On the other hand, the extension of equational logic in several directions to make specifications and programs more expressive has given rise to powerful multiparadigm logics in which other specification and programming paradigms can be cleanly combined with the equational one; we discuss several of these extensions, including rewriting logic, which unifies equational, Horn, object-oriented, and concurrent specification and programming.

These two lines of research converge in the idea of a logical framework, that is, an expressive enough logic in which many other logics can be represented. We use notions from the theory of general logics to make precise the concept of a logical framework, and summarize our recent work on the use of rewriting logic as a logical framework as a promising particular approach.

Finally, we explain how these general concepts can help us achieve the practical goal of formal interoperability, that is, how they can provide a mathematical foundation to rigorously interoperate the different formalisms and tools that we need to use in order to formally specify and verify systems.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    G. Agha. Actors. The MIT Press, 1986.Google Scholar
  2. 2.
    A. Asperti and S. Martini. Categorical models of polymorphism. Information and Computation, 99:1–79, 1992.CrossRefGoogle Scholar
  3. 3.
    E. Astesiano and M. Cerioli. Free objects and equational deduction for partial conditional specifications. Technical Report 3, Dipartimento di Matematica, Universitàs di Genova, 1990.Google Scholar
  4. 4.
    E. Astesiano and M. Cerioli. Partial higher-order specifications. Fundamenta Informaticae, 16(2):101–126, 1992.Google Scholar
  5. 5.
    E. Astesiano and M. Cerioli. Relationships between logical frameworks. In M. Bidoit and C. Choppy, editors, Recent Trends in Data Type Specification, volume 655 of Lecture Notes in Computer Science, pages 126–143. Springer-Verlag, 1993.Google Scholar
  6. 6.
    A. Avron, F. Honsell, I. A. Mason, and R. Pollack. Using typed lambda calculus to implement, formel systems on a machine. Journal of Automated Reasoning, 9(3):309–354, December 1992.CrossRefGoogle Scholar
  7. 7.
    M. Barr and C. Wells. Toposes, Triples, and Theories. Springer-Verlag, 1985.Google Scholar
  8. 8.
    M. Barr and C. Wells. Category Theory for Computing Science. Prentice-Hall, 1990.Google Scholar
  9. 9.
    J. Barwise. Axioms for abstract model theory. Annals of Mathematical Logic, 7:221–265, 1974.CrossRefGoogle Scholar
  10. 10.
    J. Barwise and S. Feferman, editors. Model-Theoretic Logics. Springer-Verlag, 1985.Google Scholar
  11. 11.
    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.Google Scholar
  12. 12.
    E. Battiston, V. Crespi, F. De Cindio, and G. Mauri. Semantic frameworks for a class of modular algebraic nets. In M. Nivat, C. Rattray, T. Russ, and G. Scollo, editors, Proc. of the 3rd International AMAST Conference, Workshops in Computing. Springer-Verlag, 1994.Google Scholar
  13. 13.
    J. Bénabou. Structures algébriques dans les catégories. Cahiers de Topologie et Géometrie Différentielle, 10:1–126, 1968.Google Scholar
  14. 14.
    M. Bettaz and M. Maouche. How to specify nondeterminism and true concurrency with algebraic term nets. In M. Bidoit and C. Choppy, editors, Recent Trends in Data Type Specification, volume 655 of Lecture Notes in Computer Science, pages 164–180. Springer-Verlag, 1993.Google Scholar
  15. 15.
    M. Bidoit, H.-J. Kreowski, P. Lescanne, F. Orejas, and D. Sannella, editors. Algebraic System Specification and Development. A Survey and Annotated Bibliography, volume 501 of Lecture Notes in Computer Science. Springer-Verlag, 1991.Google Scholar
  16. 16.
    M. P. Bonacina and J. Hsiang. A category theory approach to completion-based theorem proving strategies. Unpublished manuscript presented at Category Theory 1991, Mc Gill University, Montréal, Canada, 1991.Google Scholar
  17. 17.
    M. Broy and M. Wirsing. Partial abstract, types. Acta Informatica, 18:47–64, 1982.Google Scholar
  18. 18.
    R. Burstall and R. Diaconescu. Hiding and behaviour: An institutional approach. Technical Report ECS-LFCS-92-253, Laboratory for Foundations of Computer Science, University of Edinburgh, December 1992.Google Scholar
  19. 19.
    R. Burstall and J. Goguen. The semantics of Clear, a specification language. In D. Bjørner, editor, Proc. 1979 Copenhagen Winter School on Abstract Software Specification, volume 86 of Lecture Notes in Computer Science, pages 292–332. Springer-Verlag, 1980.Google Scholar
  20. 20.
    L. Cardelli and G. Longo. A semantic basis for Quest. Journal of Functional Programming, 1(4):417–458, 1991.Google Scholar
  21. 21.
    J. Cartmell. Generalised algebraic theories and contextual categories. Annals of Pure and Applied Logic, 32:209–243, 1986.CrossRefGoogle Scholar
  22. 22.
    M. Cerioli. Relationships between Logical Formalisms. PhD thesis, Technical Report TD-4/93, Dipartimento di Informatica, Universitá di Pisa, 1993.Google Scholar
  23. 23.
    M. Cerioli and J. Meseguer. May I borrow your logic? In A. M. Borzyszkowski and S. Sokolowski, editors, Proc. 18th. Int. Symp. on Mathematical Foundations of Computer Science, Gdánsk, Poland, Aug/Sept 1993, volume 711 of Lecture Notes in Computer Science, pages 342–351. Springer-Verlag, 1993.Google Scholar
  24. 24.
    M. Cerioli and J. Meseguer. May I borrow your logic? (Transporting logical structures along maps). Paper in preparation, 1995.Google Scholar
  25. 25.
    K. M. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, 1988.Google Scholar
  26. 26.
    T. Coquand and G. Huet. The calculus of constructions. Information and Computation, 76(2/3):95–120, 1988.CrossRefGoogle Scholar
  27. 27.
    A. Corradini, F. Gadducci, and U. Montanari. Relating two categorical models of term rewriting. To appear in Proc. Rewriting Techniques and Applications, Kaiserslautern, April, 1995.Google Scholar
  28. 28.
    J. Darlington and Y. Guo. Constrained equatipnal deduction. In S. Kaplan and M. Okada, editors, Proc. Second Int. Workshop on Conditional and Typed Rewriting Systems, Montreal, Canada, June 1990, volume 516 of Lecture Notes in Computer Science, pages 424–435. Springer-Verlag, 1991.Google Scholar
  29. 29.
    G. Denker and M. Gogolla. Translating TROLL light concepts to Maude. In H. Ehrig and F. Orejas, editors, Recent Trends in Data Type Specification, volume 785 of Lecture Notes in Computer Science, pages 173–187. Springer-Verlag, 1994.Google Scholar
  30. 30.
    N. Dershowitz and J.-P. Jouannaud. Rewrite systems. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, Vol. B, pages 243–320. North-Holland, 1990.Google Scholar
  31. 31.
    R. Diaconescu, J. A. Goguen, and P. Stefaneas. Logical support for modularisation. In G. Huet and G. Plotkin, editors, Logical Environments, pages 83–130. Cambridge University Press, 1993.Google Scholar
  32. 32.
    G. Dowek, A. Felty, H. Herberlin, G. Huet, C. Paulin-Mohring, and B. Werner. The Coq proof assistant user's guide, version 5.6. Technical Report 134, INRIA-Rocquencourt, December 1991.Google Scholar
  33. 33.
    T. Ehrhard. A categorical semantics of constructions. In Proc. Third Annual IEEE Symp. on Logic in Computer Science, pages 264–273, Edinburgh, Scotland, July 1988.Google Scholar
  34. 34.
    H. Ehrig, M. Baldamus, and F. Orejas. New concepts of amalgamation and extension of a general theory of specifications. In M. Bidoit and C. Choppy, editors, Recent Trends in Data Type Specification, volume 655 of Lecture Notes in Computer Science, pages 199–221. Springer-Verlag, 1993.Google Scholar
  35. 35.
    H. Ehrig and B. Mahr. Fundamentals of Algebraic Specification 1: Equations and Initial Semantics. Springer-Verlag, 1985.Google Scholar
  36. 36.
    S. Feferman. Finitary inductively presented logics. In R. Ferro et al., editors, Logic Colloquium'88, pages 191–220. North-Holland, 1989.Google Scholar
  37. 37.
    A. Felty and D. Miller. Encoding a dependent-type λ-calculus in a logic programming language. In M. E. Stickel, editor, Proc. 10th. Int. Conf. on Automated Deduction, Kaiserslautern, Germany, July 1990, volume 449 of Lecture Notes in Computer Science, pages 221–235. Springer-Verlag, 1990.Google Scholar
  38. 38.
    J. Fiadeiro and J. Costa. Mirror, mirror in my hand: A duality between specifications and models of process behaviour. Research Report, DI-FCUL, Lisboa, Portugal, May 1994.Google Scholar
  39. 39.
    J. Fiadeiro and T. Maibaum. Generalising interpretations between theories in the context of (π-)institutions. In G. Burn, S. Gay, and M. Ryan, editors, Theory and Formal Methods 93, pages 126–147. Springer-Verlag, 1993.Google Scholar
  40. 40.
    J. Fiadeiro and A. Sernadas. Structuring theories on consequence. In D. Sannella and A. Tarlecki, editors, Recent Trends in Data Type Specification, volume 332 of Lecture Notes in Computer Science, pages 44–72. Springer-Verlag, 1988.Google Scholar
  41. 41.
    K. Futatsugi, J. Goguen, J.-P. Jouannaud, and J. Meseguer. Principles of OBJ2. In Conf. Record 12th. Annual ACM Symp. on Principles of Programming Languages, pages 52–66, New Orleans, Louisiana, January 1985.Google Scholar
  42. 42.
    K. Futatsugi and T. Sawada. Cafe as an extensible specification environment. To appear in Proc. of the Kunming International CASE Symposium, Kunming, China, November, 1994.Google Scholar
  43. 43.
    D. Gabbay. Fibred semantics and the weaving of logics 1. Unpublished manuscript, May 1993.Google Scholar
  44. 44.
    D. Gabbay. Labelled deductive systems. Volume 1: Foundations. Technical Report MPI-I-94-223, Max Planck Institut, für Informatik, Saarbrücken, Germany, May 1994.Google Scholar
  45. 45.
    P. Gabriel and F. Ulmer. Lokal Präsentierbare Kategorien, volume 221 of Lecture Notes in Mathematics. Springer-Verlag, 1971.Google Scholar
  46. 46.
    P. Gardner. Representing Logics in Type Theory. PhD thesis, Technical Report CST-93-92, Department of Computer Science, University of Edinburgh, 1992.Google Scholar
  47. 47.
    J.-Y. Girard. Interprétation Fonctionelle et Élimination des Coupures dans l'Arithmétique d'Ordre Supérieure. PhD thesis, Université Paris VII, 1972.Google Scholar
  48. 48.
    M. Gogolla. Partially ordered sorts in algebraic specifications. In B. Courcelle, editor, Proc. Ninth Colloquium on Trees in Algebra and Programming, pages 139–153. Cambridge University Press, 1984.Google Scholar
  49. 49.
    M. Gogolla and M. Cerioli. What, is an Abstract Data Type, after all? Manuscript, June 1994.Google Scholar
  50. 50.
    J. A. Goguen. Order sorted algebra. Technical Report 14, UCLA Computer Science Department, Semantics and Theory of Computation Series, 1978.Google Scholar
  51. 51.
    J. A. Goguen. Some design principles and theory for OBJ-O, a language for expressing and executing algebraic specifications of programs. In E. K. Blum M. Paul, and S. Takasu, editors, Proc. Mathematical Studies of Information Processing, Kyoto, Japan, August 1978, volume 75 of Lecture Notes in Computer Science, pages 425–473. Springer-Verlag, 1979.Google Scholar
  52. 52.
    J. A. Goguen and R. M. Burstall. Introducing institutions. In E. Clarke and D. Kozen, editors, Proc. Logics of Programming Workshop, volume 164 of Lecture Notes in Computer Science, pages 221–256. Springer-Verlag, 1984.Google Scholar
  53. 53.
    J. A. Goguen and R. M. Burstall. A study in the foundations of programming methodology: Specifications, institutions, charters and parchments. In D. Pitt et al., editors, Proc. Workshop on Category Theory and Computer Programming, Guildford, UK, September 1985, volume 240 of Lecture Notes in Computer Science, pages 313–333. Springer-Verlag, 1986.Google Scholar
  54. 54.
    J. A. Goguen and R. M. Burstall. Institutions: Abstract model theory for specification and programming. Journal of the Association for Computing Machinery, 39(1):95–146, 1992.Google Scholar
  55. 55.
    J. A. Goguen and R. Diaconescu. Towards an algebraic semantics for the object paradigm. In H. Ehrig and F. Orejas, editors, Recent Trends in Data Type Specification, volume 785 of Lecture Notes in Computer Science, pages 1–29. Springer-Verlag, 1994.Google Scholar
  56. 56.
    J. A. Goguen, J.-P. Jouannaud, and J. Meseguer. Operational semantics of ordersorted algebra. In W. Brauer, editor, Proc. ICALP'85, volume 194 of Lecture Notes in Computer Science, pages 221–231. Springer-Verlag, 1985.Google Scholar
  57. 57.
    J. A. Goguen, C. Kirchner, H. Kirchner, A. Mégrelis, J. Meseguer, and T. Winkler. An introduction to OBJ3. In J.-P. Jouannaud and S. Kaplan, editors, Proc. First Int. Workshop on Conditional Term Rewriting Systems, Orsay, France, July 1987, volume 308 of Lecture Notes in Computer Science, pages 258–263. Springer-Verlag, 1988.Google Scholar
  58. 58.
    J. A. Goguen and J. Meseguer. Eqlog: Equality, types, and generic modules for logic programming. In D. DeGroot and G. Lindstrom, editors, Logic Programming: Functions, Relations, and Equations, pages 295–363. Prentice-Hall, 1986.Google Scholar
  59. 59.
    J. A. Goguen and J. Meseguer. Models and equality for logical programming. In H. Ehrig et al., editors, Proc. Int. Joint Conf. on Theory and Practice of Software Development, Pisa, Italy, March 1987, Volume 2, volume 250 of Lecture Notes in Computer Science, pages 1–22. Springer-Verlag, 1987.Google Scholar
  60. 60.
    J. A. 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.Google Scholar
  61. 61.
    J. A. Goguen, J. Meseguer, and D. Plaisted. Programming with parameterized abstract objects in OBJ. In D. Ferrari, M. Bolognani, and J. Goguen, editors, Theory and Practice of Software Technology, pages 163–193. North-Holland, 1983.Google Scholar
  62. 62.
    J. A. Goguen, A. Stevens, K. Hobley, and H. Hilberdink. 20BJ: A meta-logical framework based on equational logic. Philosophical Transactions of the Royal Society, Series A, 339:69–86, 1992.Google Scholar
  63. 63.
    J. A. Goguen, J. Thatcher, and E. Wagner. An initial algebra approach to the specification, correctness and implementation of abstract data types. In R. Yeh, editor, Current Trends in Programming Methodology IV, pages 80–149. Prentice-Hall, 1978.Google Scholar
  64. 64.
    J. A. Goguen, T. Winkler, J. Meseguer, K. Futatsugi, and J.-P. Jouannaud. Introducing OBJ. Technical Report SRI-CSL-92-03, Computer Science Laboratory, SRI International, March 1992. To appear in J. A. Goguen, editor, Applications of Algebraic Specification Using OBJ. Cambridge University Press, 1995.Google Scholar
  65. 65.
    R. Harper, F. Honsell, and G. Plotkin. A framework for defining logics. Journal of the Association for Computing Machinery, 40(1):143–184, 1993.Google Scholar
  66. 66.
    R. Harper, D. Sannella, and A. Tarlecki. Logic representation in LF. In D. H. Pitt et al., editors, Category Theory and Computer Science, Manchester, UK, September 1989, volume 389 of Lecture Notes in Computer Science, pages 250–272. Springer-Verlag, 1989.Google Scholar
  67. 67.
    R. Harper, D. Sannella, and A. Tarlecki. Structure and representation in LF. In Proc. Fourth Annual IEEE Symp. on Logic in Computer Science, pages 226–237, Asilomar, California, June 1989.Google Scholar
  68. 68.
    R. Harper, D. Sannella, and A. Tarlecki. Structure theory presentations and logic representations. Annals of Pure and Applied Logic, 67:113–160, 1994.CrossRefGoogle Scholar
  69. 69.
    C. M. Hoffmann and M. J. O'Donnell. Programming with equations. ACM Transactions on Programming Languages and Systems, 1(4):83–112, 1982.CrossRefGoogle Scholar
  70. 70.
    B. Jacobs. Categorical Logic and Type Theory. North-Holland, 1995. To appear.Google Scholar
  71. 71.
    O. Keane. Abstract Horn theories. In F. W. Lawvere, C. Maurer, and G. C. Wraith, editors, Model Theory and Topoi, volume 445 of Lecture Notes in Mathematics, pages 15–50. Springer-Verlag, 1975.Google Scholar
  72. 72.
    C. Kirchner, H. Kirchner, and J. Meseguer. Operational semantics of OBJ-3. In T. Lepistö and A. Salomaa, editors, Proc. ICALP'88, volume 317 of Lecture Notes in Computer Science, pages 287–301. Springer-Verlag, 1988.Google Scholar
  73. 73.
    C. Kirchner, H. Kirchner, and M. Vittek. Designing constraint logic programming languages using computational systems. In F. Orejas, editor, Proc. Second CCL Workshop, La Escala (Spain), September 1993.Google Scholar
  74. 74.
    H. Kirchner and P.-E. Moreau. Prototyping completion with constraints using computational systems. To appear in Proc. Rewriting Techniques and Applications, Kaiserslautern, April, 1995.Google Scholar
  75. 75.
    J. Lambek and P. J. Scott. Introduction to Higher Order Categorical Logic. Cambridge University Press, 1986.Google Scholar
  76. 76.
    C. Laneve and U. Montanari. Axiomatizing permutation equivalence in the λ-calculus. In H. Kirehner and G. Levi, editors, Proc. Third Int. Conf. on Algebraic and Logic Programming, Volterra, Italy, September 1992, volume 632 of Lecture Notes in Computer Science, pages 350–363. Springer-Verlag, 1992.Google Scholar
  77. 77.
    C. Laneve and U. Montanari. Axiomatizing permutation equivalence. Mathematical Structures in Computer Science, 1995. To appear.Google Scholar
  78. 78.
    F. W. Lawvere. Functorial semantics of algebraic theories. Proceedings National Academy of Sciences, 50:869–873, 1963.Google Scholar
  79. 79.
    U. Lechner, C. Lengauer, and M. Wirsing. An object-oriented airport. This volume.Google Scholar
  80. 80.
    J. Levy. A higher order unification algorithm for bi-rewriting systems. In J. Agusti and P. Garcia, editors, Segundo Congreso Programación Declarativa, pages 291–305, Blanes, Spain, September 1993. CSIC.Google Scholar
  81. 81.
    J. Levy. The calculus of refinements: a formal specification model based on inclusions. PhD thesis, Universitat Politècnica de Catalunya, 1994.Google Scholar
  82. 82.
    J. Levy and J. Agusti. Bi-rewriting, a term rewriting technique for monotonic order relations. In C. Kirchner, editor, Proc. Fifth Int. Conf. on Rewriting Techniques and Applications, Montreal, Canada, June 1993, volume 690 of Lecture Notes in Computer Science, pages 17–31. Springer-Verlag, 1993.Google Scholar
  83. 83.
    P. Lincoln, N. Marti-Oliet, and J. Meseguer. Specification, transformation, and programming of concurrent systems in rewriting logic. In G. Blelloch, K. M. Chandy, and S. Jagannathan, editors, Proc. DIMACS Workshop on Specification of Parallel Algorithms, Princeton, NJ, May 1994, DIMACS Series in Discrete Mathematics and Theoretical Computer Science. American Mathematical Society, 1994.Google Scholar
  84. 84.
    P. Lincoln, N. Marti-Oliet, J. Meseguer, and L. Ricciulli. Compiling rewriting onto SIMD and MIMD/SIMD machines. 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 Lecture Notes in Computer Science, pages 37–48. Springer-Verlag, 1994.Google Scholar
  85. 85.
    S. Mac Lane. Categories for the Working Mathematician. Springer-Verlag, 1971.Google Scholar
  86. 86.
    N. Marti-Oliet, and J. Meseguer. Inclusions and subtypes. Technical Report SRI-CSL-90-16, Computer Science Laboratory, SRI International, December 1990. Revised May 1994.Google Scholar
  87. 87.
    N. Marti-Oliet and J. Meseguer. Rewriting logic as a logical and semantic framework. Technical Report SRI-CSL-93-05, Computer Science Laboratory, SRI International, August 1993.Google Scholar
  88. 88.
    N. Marti-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.Google Scholar
  89. 89.
    N. Marti-Oliet and J. Meseguer. Action and change in rewriting logic. In R. Pareschi and B. Fronhoefer, editors, Theoretical Approaches to Dynamic Worlds in Computer Science and Artificial Intelligence. Cambridge University Press, 1995. To appear.Google Scholar
  90. 90.
    P. Martin-Löf. An intuitionistic theory of types: Predicative part. In H. E. Rose and J. C. Shepherdson, editors, Logic Colloquium'73, pages 73–118. North-Holland, 1975.Google Scholar
  91. 91.
    P. Martin-Löf. Constructive mathematics and computer programming. In L. J. Cohen et al., editors, Proc. 6th Int. Congress for Logic, Methodology, and Philosophy of Science, Hannover, 1979, pages 153–175. North-Holland, 1982.Google Scholar
  92. 92.
    P. Martin-Löf. Intuitionistic Type Theory. Bibliopolis, 1984.Google Scholar
  93. 93.
    S. Matthews, A. Smaill, and D. Basin. Experience with FS o as a framework theory. In G. Huet and G. Plotkin, editors, Logical Environments, pages 61–82. Cambridge University Press, 1993.Google Scholar
  94. 94.
    B. Mayoh. Galleries and institutions. Technical Report DAIMI PB-191, Computer Science Department, Aarhus University, 1985.Google Scholar
  95. 95.
    K. Meinke. Universal algebra in higher types. Theoretical Computer Science, 100:385–417, 1992.CrossRefGoogle Scholar
  96. 96.
    J. Meseguer. General logics. In H.-D. Ebbinghaus et al., editors, Logic Colloquium'87, pages 275–329. North-Holland, 1989.Google Scholar
  97. 97.
    J. Meseguer. Relating models of polymorphism. In Proc. 16th. Annual ACM Symp. on Principles of Programming Languages, pages 228–241, Austin, Texas, January 1989.Google Scholar
  98. 98.
    J. Meseguer. Rewriting as a unified model of concurrency. Technical Report SRI-CSL-90-02R, Computer Science Laboratory, SRI International, February 1990. Revised June 1990.Google Scholar
  99. 99.
    J. Meseguer. Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science, 96:73–155, 1992.Google Scholar
  100. 100.
    J. Meseguer. Multiparadigm logic programming. In H. Kirchner and G. Levi, editors, Proc. Third Int. Conf. on Algebraic and Logic Programming, Volterra, Italy, September 1992, volume 632 of Lecture Notes in Computer Science, pages 158–200. Springer-Verlag, 1992.Google Scholar
  101. 101.
    J. Meseguer. A logical theory of concurrent objects and its realization in the Maude language. In G. Agha, P. Wegner, and A. Yonezawa, editors, Research Directions in Object-Based Concurrency, pages 314–390. The MIT Press, 1993.Google Scholar
  102. 102.
    J. Meseguer. Solving the inheritance anomaly in concurrent object-oriented programming. In O. M. Nierstrasz, editor, Proc. ECOOP'93, 7th European Conf., Kaiserslautern, Germany, July 1993, volume 707 of Lecture Notes in Computer Science, pages 220–246. Springer-Verlag, 1993.Google Scholar
  103. 103.
    J. Meseguer and X. Qian. A logical semantics for object-oriented databases. In Proc. Int. SIGMOD Conference on Management of Data, pages 89–98. ACM, 1993.Google Scholar
  104. 104.
    R. Milner. Communication and Concurrency. Prentice Hall, 1989.Google Scholar
  105. 105.
    R. Milner, M. Tofte, and R. Harper. The Definition of Standard ML. The MIT Press, 1990.Google Scholar
  106. 106.
    P. Mosses. The use of sorts in algebraic specifications. In M. Bidoit and C. Choppy, editors, Recent Trends in Data Type Specification, volume 655 of Lecture Notes in Computer Science, pages 66–91. Springer-Verlag, 1993.Google Scholar
  107. 107.
    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.Google Scholar
  108. 108.
    B. Nordström, K. Petersson, and J. Smith. Programming in Martin-Löf's Type Theory: An Introduction. Oxford University Press, 1990.Google Scholar
  109. 109.
    M. J. O'Donnell. Equational Logic as a Programming Language. The MIT Press, 1985.Google Scholar
  110. 110.
    L. Paulson. The foundation of a generic theorem prover. Journal of Automated Reasoning, 5:363–39, 1989.CrossRefGoogle Scholar
  111. 111.
    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.Google Scholar
  112. 112.
    A. Poigné. On specifications, theories, and models with higher types. Information and Control, 68:1–46, 1986.CrossRefGoogle Scholar
  113. 113.
    A. Poigné. Foundations are rich institutions, but institutions are poor foundations. In H. Ehrig et al., editors, Categorical Methods in Computer Science with Aspects from Topology, volume 393 of Lecture Notes in Computer Science, pages 82–101. Springer-Verlag, 1989.Google Scholar
  114. 114.
    A. Poigné. Parametrization for order-sorted algebraic specification. Journal of Computer and System Sciences, 40(2):229–268, 1990.CrossRefGoogle Scholar
  115. 115.
    A. Poigné. Typed Horn logic. In B. Rovan, editor, Proc. 15th. Int. Symp. on Mathematical Foundations of Computer Science, Banská Bystrica, Czechoslovaquia, August 1990, volume 452 of Lecture Notes in Computer Science, pages 470–477. Springer-Verlag, 1990.Google Scholar
  116. 116.
    Z. Qian. Higher-order order-sorted algebras. In H. Kirchner and W. Wechler, editors, Proc. Second Int. Conf. on Algebraic and Logic Programming, Nancy, France, October 1990, volume 463 of Lecture Notes in Computer Science, pages 86–100. Springer-Verlag, 1990.Google Scholar
  117. 117.
    H. Reichel. An approach to object semantics based on terminal co-algebras. To appear in Mathematical Structures in Computer Science, 1995. Presented at Dagstuhl Seminar on Specification and Semantics, Schloss Dagstuhl, Germany, May 1993.Google Scholar
  118. 118.
    H. Reichel. Initial Computability, Algebraic Specifications, and Partial Algebras. Oxford University Press, 1987.Google Scholar
  119. 119.
    W. Reisig. Petri Nets: An Introduction. Springer-Verlag, 1985.Google Scholar
  120. 120.
    J. C. Reynolds. Towards a theory of type structure. In B. Robinet, editor, Proc. Programming Symposium, Paris, April 1974, volume 19 of Lecture Notes in Computer Science, pages 408–425. Springer-Verlag, 1974.Google Scholar
  121. 121.
    A. Salibra and G. Scollo. Compactness and Löwenheim-Skolem properties in pre-institution categories. Technical Report LIENS-92-10, Laboratoire d'Informatique de l'Ecole Normale Supérieure, Paris, March 1992.Google Scholar
  122. 122.
    A. Salibra and G. Scollo. A soft, stairway to institutions. In M. Bidoit and C. Choppy, editors, Recent Trends in Data Type Specification, volume 655 of Lecture Notes in Computer Science, pages 310–329. Springer-Verlag, 1993.Google Scholar
  123. 123.
    D. Sannella and A. Tarlecki. Specifications in an arbitrary institution. Information and Computation, 76(2/3):165–210, 1988.CrossRefGoogle Scholar
  124. 124.
    D. Sannella and A. Tarlecki. Toward formal development of programs from algebraic specifications: Implementations revisited. Acta Informatica, 25:233–281, 1988.CrossRefGoogle Scholar
  125. 125.
    R. A. G. Seely. Locally cartesian closed categories and type theory. Mathematical Proceedings of the Cambridge Philosophical Society, 95:33–48, 1984.Google Scholar
  126. 126.
    R. A. G. Seely. Categorical semantics for higher order polymorphic lambda calculus. Journal of Symbolic Logic, 52(4):969–989, 1987.Google Scholar
  127. 127.
    G. Smolka. Logic Programming Over Polymorphic Order-Sorted Types. PhD thesis, Computer Science Department, University of Kaiserslautern, 1989.Google Scholar
  128. 128.
    G. Smolka, W. Nutt, J. A. Goguen, and J. Meseguer. Order-sorted equational computation. In H. Ai't-Kaci and M. Nivat, editors, Resolution of Equations in Algebraic Structures. Volume 2: Rewriting Techniques, pages 297–367. Academic Press, 1989.Google Scholar
  129. 129.
    R. M. Smullyan. Theory of Formal Systems, volume 47 of Annals of Mathematics Studies. Princeton University Press, 1961.Google Scholar
  130. 130.
    C. Talcott. Heterogeneous component-based distributed computation. Paper in preparation, 1995.Google Scholar
  131. 131.
    A. Tarlecki. Free constructions in algebraic institutions. In M. P. Chytil and V. Koubek, editors, Proc. Mathematical Foundations of Computer Science '84, volume 176 of Lecture Notes in Computer Science, pages 526–534. Springer-Verlag, 1984.Google Scholar
  132. 132.
    A. Tarlecki. On the existence of free models in abstract algebraic institutions. Theoretical Computer Science, 37(3):269–304, 1985.CrossRefGoogle Scholar
  133. 133.
    A. Tarlecki. Bits and pieces of the theory of institutions. In D. Pitt et al., editors, Proc. Workshop on Category Theory and Computer Programming, Guildford, UK, September 1985, volume 240 of Lecture Notes in Computer Science, pages 334–363. Springer-Verlag, 1986.Google Scholar
  134. 134.
    A. Tarlecki. Quasi-varieties in abstract, algebraic institutions. Journal of Computer and System Sciences, 33(3):333–360, 1986.CrossRefGoogle Scholar
  135. 135.
    A. Tarlecki, R. M. Burstall, and J. A. Goguen. Some fundamental algebraic tools for the semantics of computation. Part 3: Indexed categories. Theoretical Computer Science, 91:239–264, 1991.CrossRefGoogle Scholar
  136. 136.
    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 Lecture Notes in Computer Science, pages 648–660. Springer-Verlag, 1994.Google Scholar
  137. 137.
    M. Vittek. ELAN: Un cadre logique pour le prototypage de langages de programmation avec contraintes. PhD thesis, Université Henry Poincaré — Nancy I, 1994.Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • José Meseguer
    • 1
    • 2
  • Narciso Marti-Oliet
    • 1
    • 2
  1. 1.SRI InternationalMenlo Park
  2. 2.Center for the Study of Language and Information Stanford UniversityStanford

Personalised recommendations