Results 1  10
of
134
Rewriting Logic as a Logical and Semantic Framework
, 1993
"... Rewriting logic [72] is proposed as a logical framework in which other logics can be represented, and as a semantic framework for the specification of languages and systems. Using concepts from the theory of general logics [70], representations of an object logic L in a framework logic F are und ..."
Abstract

Cited by 149 (53 self)
 Add to MetaCart
Rewriting logic [72] is proposed as a logical framework in which other logics can be represented, and as a semantic framework for the specification of languages and systems. Using concepts from the theory of general logics [70], representations of an object logic L in a framework logic F are understood as mappings L ! F that translate one logic into the other in a conservative way. The ease with which such maps can be defined for a number of quite different logics of interest, including equational logic, Horn logic with equality, linear logic, logics with quantifiers, and any sequent calculus presentation of a logic for a very general notion of "sequent," is discussed in detail. Using the fact that rewriting logic is reflective, it is often possible to reify inside rewriting logic itself a representation map L ! RWLogic for the finitely presentable theories of L. Such a reification takes the form of a map between the abstract data types representing the finitary theories of...
Towards an Algebraic Semantics for the Object Paradigm
 In Hartmut Ehrig and Fernando Orejas, editors, Proceedings, Tenth Workshop on Abstract Data Types
, 1994
"... This paper surveys our current state of knowledge (and ignorance) on the use of hidden sorted algebra as a foundation for the object paradigm. Our main goal is to support equational reasoning about properties of concurrent systems of objects, because of its simple and ecient mechanisation. We sho ..."
Abstract

Cited by 86 (34 self)
 Add to MetaCart
This paper surveys our current state of knowledge (and ignorance) on the use of hidden sorted algebra as a foundation for the object paradigm. Our main goal is to support equational reasoning about properties of concurrent systems of objects, because of its simple and ecient mechanisation. We show how equational speci cations can describe objects, inheritance and modules; our treatment of the latter topic emphasises the importance of reuse, and the r^ole of the socalled Satisfaction Condition. We then consider how to prove things about objects, how to unify the object and logic paradigms by using logical variables that range over objects, and how to connect objects into concurrent systems.
A Categorical Programming Language
, 1987
"... A theory of data types and a programming language based on category theory are presented. Data types play a crucial role in programming. They enable us to write programs easily and elegantly. Various programming languages have been developed, each of which may use different kinds of data types. Ther ..."
Abstract

Cited by 67 (0 self)
 Add to MetaCart
A theory of data types and a programming language based on category theory are presented. Data types play a crucial role in programming. They enable us to write programs easily and elegantly. Various programming languages have been developed, each of which may use different kinds of data types. Therefore, it becomes important to organize data types systematically so that we can understand the relationship between one data type and another and investigate future directions which lead us to discover exciting new data types. There have been several approaches to systematically organize data types: algebraic specification methods using algebras, domain theory using complete partially ordered sets and type theory using the connection between logics and data types. Here, we use category theory. Category theory has proved to be remarkably good at revealing the nature of mathematical objects, and we use it to understand the true nature of data types in programming.
On Observational Equivalence and Algebraic Specification
, 1987
"... The properties of a simple and natural notion of observational equivalence of algebras and the corresponding specificationbuilding operation are studied. We begin with a defmition of observational equivalence which is adequate to handle reachable algebras only, and show how to extend it to cope wit ..."
Abstract

Cited by 64 (15 self)
 Add to MetaCart
The properties of a simple and natural notion of observational equivalence of algebras and the corresponding specificationbuilding operation are studied. We begin with a defmition of observational equivalence which is adequate to handle reachable algebras only, and show how to extend it to cope with unreachable algebras and also how it may be generalised to make sense under an arbitrary institution. Behavioural equivalence is treated as an important special case of observational equivalence, and its central role in program development is shown by means of an example.
Completeness of manysorted equational logic
 Houston Journal of Mathematics
, 1985
"... ABSTRACT. Assuming that manysorted oquationallogic "goes just as for the onesorted case " has led to incorrect statements of results in manysorted universal algebra; in fact, the onesorted rules are not sound for manysortededuction. This paper gives sound and complete rules, and chara ..."
Abstract

Cited by 63 (6 self)
 Add to MetaCart
ABSTRACT. Assuming that manysorted oquationallogic "goes just as for the onesorted case " has led to incorrect statements of results in manysorted universal algebra; in fact, the onesorted rules are not sound for manysortededuction. This paper gives sound and complete rules, and characterizes when the onesorted rules can still be used safely; it also characterizes the related question of when manysorted algebras can be represented as onesorted algebras. The paper contains a detailed introduction to Hall's theory of clones (later developed into "algebraic theories " by Lawvere and Benabou); this allows a full algebraization of manysorted equational deduction that is not possible with the usual fully invariant congruences on the free algebra on countably many generators. 1. Introduction. The
Essential Concepts of Algebraic Specification and Program Development
, 1996
"... The main ideas underlying work on the modeltheoretic foundations of algebraic specification and formal program development are presented in an informal way. An attempt is made to offer an overall view, rather than new results, and to focus on the basic motivation behind the technicalities presente ..."
Abstract

Cited by 55 (15 self)
 Add to MetaCart
The main ideas underlying work on the modeltheoretic foundations of algebraic specification and formal program development are presented in an informal way. An attempt is made to offer an overall view, rather than new results, and to focus on the basic motivation behind the technicalities presented elsewhere.
Toward formal development of ML programs: foundations and methodology
, 1989
"... A formal methodology is presented for the systematic evolution of modular Standard ML programs from specifications by means of verified refinement steps, in the framework of the Extended ML specification language. Program development proceeds via a sequence of design (modular decomposition), codi ..."
Abstract

Cited by 51 (20 self)
 Add to MetaCart
A formal methodology is presented for the systematic evolution of modular Standard ML programs from specifications by means of verified refinement steps, in the framework of the Extended ML specification language. Program development proceeds via a sequence of design (modular decomposition), coding and refinement steps. For each of these three kinds of steps, conditions are given which ensure the correctness of the result. These conditions seem to be as weak as possible under the constraint of being expressible as "local" interface matching requirements. Interfaces are only required to match up to behavioural equivalence, which is seen as vital to the use of data abstraction in program development. Copyright c fl 1989 by D. Sannella and A. Tarlecki. All rights reserved. An extended abstract of this paper will appear in Proc. Colloq. on Current Issues in Programming Languages, Joint Conf. on Theory and Practice of Software Development (TAPSOFT), Barcelona, Springer LNCS (1989)....
Abstract Petri Nets as a Uniform Approach to HighLevel Petri Nets
, 1998
"... In the area of Petri nets, many different developments have taken place within the last 30 years, in academia as well as in practice. For an adequate use in practice, a coherent and application oriented combination of various types and techniques for Petri nets is necessary. In order to attain ..."
Abstract

Cited by 37 (18 self)
 Add to MetaCart
In the area of Petri nets, many different developments have taken place within the last 30 years, in academia as well as in practice. For an adequate use in practice, a coherent and application oriented combination of various types and techniques for Petri nets is necessary. In order to attain a formal basis for different classes of Petri nets we introduce the concept of abstract Petri nets. The essential point of abstract Petri nets is to allow different kinds of net structures as well as the combination of various kinds of data types. This means that in abstract Petri nets the data type and the net structure part can be considered as abstract parameters which can be instantiated to different concrete net classes. We show that several net classes, like place/transition nets, elementary nets, Sgraphs, algebraic highlevel net...
Formal program development in Extended ML for the working programmer
, 1991
"... Extended ML is a framework for the formal development of programs in the Standard ML programming language from highlevel specifications of their required input/output behaviour. It strongly supports the development of modular programs consisting of an interconnected collection of generic and reusab ..."
Abstract

Cited by 34 (10 self)
 Add to MetaCart
Extended ML is a framework for the formal development of programs in the Standard ML programming language from highlevel specifications of their required input/output behaviour. It strongly supports the development of modular programs consisting of an interconnected collection of generic and reusable units. The Extended ML framework includes a methodology for formal program development which establishes a number of ways of proceeding from a given specification of a programming task towards a program. Each such step gives rise to one or more proof obligations which must be proved in order to establish the correctness of that step. This paper is intended as a useroriented summary of the Extended ML language and methodology. Theoretical technicalities are avoided whenever possible, with emphasis placed on the practical aspects of formal program development. An extended example of a complete program development in Extended ML is included.