Journal ArticleDOI
Institutions: abstract model theory for specification and programming
Joseph A. Goguen,Rod M. Burstall +1 more
TLDR
This paper says that any institution such that signatures can be glued together, also allows gluing together theories (which are just collections of sentences over a fixed signature), and shows how to define institutions that allow sentences and constraints from two or more institutions.Abstract:
There is a population explosion among the logical systems used in computing science. Examples include first-order logic, equational logic, Horn-clause logic, higher-order logic, infinitary logic, dynamic logic, intuitionistic logic, order-sorted logic, and temporal logic; moreover, there is a tendency for each theorem prover to have its own idiosyncratic logical system. The concept of institution is introduced to formalize the informal notion of “logical system.” The major requirement is that there is a satisfaction relation between models and sentences that is consistent under change of notation. Institutions enable abstracting away from syntactic and semantic detail when working on language structure “in-the-large”; for example, we can define language features for building large logical system. This applies to both specification languages and programming languages. Institutions also have applications to such areas as database theory and the semantics of artificial and natural languages. A first main result of this paper says that any institution such that signatures (which define notation) can be glued together, also allows gluing together theories (which are just collections of sentences over a fixed signature). A second main result considers when theory structuring is preserved by institution morphisms. A third main result gives conditions under which it is sound to use a theorem prover for one institution on theories from another. A fourth main result shows how to extend institutions so that their theories may include, in addition to the original sentences, various kinds of constraint that are useful for defining abstract data types, including both “data” and “hierarchy” constraints. Further results show how to define institutions that allow sentences and constraints from two or more institutions. All our general results apply to such “duplex” and “multiplex” institutions.read more
Citations
More filters
Book ChapterDOI
Membership algebra as a logical framework for equational specification
TL;DR: The paper presents the basic properties of the logic and its models, and discusses in detail how many total and partial equational specification formalisms can be represented in it, as well as the practical benefits in terms of tool reusability that this opens up for other languages, including CASL.
Journal ArticleDOI
Graph grammars with negative application conditions
TL;DR: The concept of application conditions introduced by Ehrig and Habel is restricted to contextual conditions, especially negative ones, and local confluence and the Parallelism Theorem for derivations with application conditions are state.
Journal ArticleDOI
When to Cite
TL;DR: In this paper, the Modern Language Association and other style manuals describe in exquisite detail how to cite the literature, explicit tutorials on "when" to cite are nonexistent, and most journals provide instructions to authors but also fail to give explicit guidance on when to cite.
Book ChapterDOI
Rewriting Logic as a Logical and Semantic Framework
TL;DR: The frontiers between logical systems, theorem provers, and declarative programming languages are shifting and becoming more and more tenuous, with each area influencing and being influenced by the others.
Book
A logical theory of concurrent objects and its realization in the Maude language
TL;DR: A new theory of concurrent objects is presented, and a new language, called Maude, that can be used to program concurrent object-oriented systems in an entirely declarative way using rewriting logic is created.
References
More filters
Book
Categories for the Working Mathematician
TL;DR: In this article, the authors present a table of abstractions for categories, including Axioms for Categories, Functors, Natural Transformations, and Adjoints for Preorders.
Book
Foundations of logic programming
TL;DR: This is the second edition of an account of the mathematical foundations of logic programming, which collects, in a unified and comprehensive manner, the basic theoretical results of the field, which have previously only been available in widely scattered research papers.
Book
The Z notation: a reference manual
TL;DR: Tutorial introduction background the Z language the mathematical tool-kit sequential systems syntax summary and how to use it to solve sequential systems problems.
Book ChapterDOI
Negation as failure
TL;DR: It is shown that when the clause data base and the queries satisfy certain constraints, which still leaves us with a data base more general than a conventional relational data base, the query evaluation process will find every answer that is a logical consequence of the completed data base.