Results 1  10
of
73
Maude: Specification and Programming in Rewriting Logic
, 2001
"... Maude is a highlevel language and a highperformance system supporting executable specification and declarative programming in rewriting logic. Since rewriting logic contains equational logic, Maude also supports equational specification and programming in its sublanguage of functional modules and ..."
Abstract

Cited by 170 (62 self)
 Add to MetaCart
Maude is a highlevel language and a highperformance system supporting executable specification and declarative programming in rewriting logic. Since rewriting logic contains equational logic, Maude also supports equational specification and programming in its sublanguage of functional modules and theories. The underlying equational logic chosen for Maude is membership equational logic, that has sorts, subsorts, operator overloading, and partiality definable by membership and equality conditions. Rewriting logic is reflective, in the sense of being able to express its own metalevel at the object level. Reflection is systematically exploited in Maude endowing the language with powerful metaprogramming capabilities, including both userdefinable module operations and declarative strategies to guide the deduction process. This paper explains and illustrates with examples the main concepts of Maude's language design, including its underlying logic, functional, system and objectoriented modules, as well as parameterized modules, theories, and views. We also explain how Maude supports reflection, metaprogramming and internal strategies. The paper outlines the principles underlying the Maude system implementation, including its semicompilation techniques. We conclude with some remarks about applications, work on a formal environment for Maude, and a mobile language extension of Maude.
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 147 (52 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...
Membership Algebra as a Logical Framework for Equational Specification
, 1998
"... This paper proposes membership equational logica Horn logic in which the basic predicates are equations t = t 0 and membership assertions t : s stating that a term t belongs to a sort sas a logical framework in which a very wide range of total and partial equational specification formalisms ..."
Abstract

Cited by 142 (45 self)
 Add to MetaCart
This paper proposes membership equational logica Horn logic in which the basic predicates are equations t = t 0 and membership assertions t : s stating that a term t belongs to a sort sas a logical framework in which a very wide range of total and partial equational specification formalisms can be naturally represented. Key features of this logic include: simplicity, liberality and equational character; generality and expressiveness in supporting subsorts, overloading, errors and partiality; and efficient implementability in systems such as Maude. The paper presents the basic properties of the logic and its models, and discusses in detail how many total and partial equational specification formalisms, including ordersorted algebra and partial membership equational logic, 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. Table of Contents 1
Principles of Maude
, 1996
"... This paper introduces the basic concepts of the rewriting logic language Maude and discusses its implementation. Maude is a widespectrum language supporting formal specification, rapid prototyping, and parallel programming. Maude's rewriting logic paradigm includes the functional and objectoriente ..."
Abstract

Cited by 123 (28 self)
 Add to MetaCart
This paper introduces the basic concepts of the rewriting logic language Maude and discusses its implementation. Maude is a widespectrum language supporting formal specification, rapid prototyping, and parallel programming. Maude's rewriting logic paradigm includes the functional and objectoriented paradigms as sublanguages. The fact that rewriting logic is reflective leads to novel metaprogramming capabilities that can greatly increase software reusability and adaptability. Control of the rewriting computation is achieved through internal strategy languages defined inside the logic. Maude's rewrite engine is designed with the explicit goal of being highly extensible and of supporting rapid prototyping and formal methods applications, but its semicompilation techniques allow it to meet those goals with good performance. 1 Introduction Maude is a logical language based on rewriting logic [16,23,19]. It is therefore related to other rewriting logic languages such as Cafe [10], ELAN [...
Reflection and Strategies in Rewriting Logic
, 1996
"... After giving general metalogical axioms characterizing reflection in general logics in terms of the notion of a universal theory , this paper specifies a finitely presented universal theory for rewriting logic and gives a detailed proof of the claim made in [6] that rewriting logic is reflective. Th ..."
Abstract

Cited by 61 (27 self)
 Add to MetaCart
After giving general metalogical axioms characterizing reflection in general logics in terms of the notion of a universal theory , this paper specifies a finitely presented universal theory for rewriting logic and gives a detailed proof of the claim made in [6] that rewriting logic is reflective. The paper also gives general axioms for the notion of a strategy language internal to a given logic. Exploiting the fact that rewriting logic is reflexive, a general method for defining internal strategy languages for it and proving their correctness is proposed and is illustrated with an example. The Maude language has been used as an experimental vehicle for the exploration of these techniques. They seem quite promising for applications such as metaprogramming and module composition, logical framework representations, development of formal programming and proving environments, supercompilation, and formal verification of strategies. 1 Introduction Reflection is a very desirable property of ...
Inductive Data Type Systems
 THEORETICAL COMPUTER SCIENCE
, 1997
"... In a previous work (“Abstract Data Type Systems”, TCS 173(2), 1997), the last two authors presented a combined language made of a (strongly normalizing) algebraic rewrite system and a typed λcalculus enriched by patternmatching definitions following a certain format, called the “General Schema”, w ..."
Abstract

Cited by 44 (10 self)
 Add to MetaCart
In a previous work (“Abstract Data Type Systems”, TCS 173(2), 1997), the last two authors presented a combined language made of a (strongly normalizing) algebraic rewrite system and a typed λcalculus enriched by patternmatching definitions following a certain format, called the “General Schema”, which generalizes the usual recursor definitions for natural numbers and similar “basic inductive types”. This combined language was shown to be strongly normalizing. The purpose of this paper is to reformulate and extend the General Schema in order to make it easily extensible, to capture a more general class of inductive types, called “strictly positive”, and to ease the strong normalization proof of the resulting system. This result provides a computation model for the combination of an algebraic specification language based on abstract data types and of a strongly typed functional language with strictly positive inductive types.
The Rewriting Logic Semantics Project
 SOS 2005 PRELIMINARY VERSION
, 2005
"... Rewriting logic is a flexible and expressive logical framework that unifies denotational semantics and SOS in a novel way, avoiding their respective limitations and allowing very succinct semantic definitions. The fact that a rewrite theory’s axioms include both equations and rewrite rules provides ..."
Abstract

Cited by 39 (11 self)
 Add to MetaCart
Rewriting logic is a flexible and expressive logical framework that unifies denotational semantics and SOS in a novel way, avoiding their respective limitations and allowing very succinct semantic definitions. The fact that a rewrite theory’s axioms include both equations and rewrite rules provides a very useful “abstraction knob” to find the right balance between abstraction and observability in semantic definitions. Such semantic definitions are directly executable as interpreters in a rewriting logic language such as Maude, whose generic formal tools can be used to endow those interpreters with powerful program analysis capabilities.
Building Equational Proving Tools by Reflection in Rewriting Logic
 In Cafe: An IndustrialStrength Algebraic Formal Method
, 1998
"... This paper explains the design and use of two equational proving tools, namely an inductive theorem prover  to prove theorems about equational specifications with an initial algebra semantics  and a ChurchRosser checkerto check whether such specifications satisfy the ChurchRosser property. ..."
Abstract

Cited by 38 (19 self)
 Add to MetaCart
This paper explains the design and use of two equational proving tools, namely an inductive theorem prover  to prove theorems about equational specifications with an initial algebra semantics  and a ChurchRosser checkerto check whether such specifications satisfy the ChurchRosser property. These tools can be used to prove properties of ordersorted equational specifications in Cafe [11] and of membership equational logic specifications in Maude [7, 6]. The tools have been written entirely in Maude and are in fact executable specifications in rewriting logic of the formal inference systems that they implement.
Process and Term Tile Logic
, 1998
"... In a similar way as 2categories can be regarded as a special case of double categories, rewriting logic (in the unconditional case) can be embedded into the more general tile logic, where also sideeffects and rewriting synchronization are considered. Since rewriting logic is the semantic basis o ..."
Abstract

Cited by 33 (25 self)
 Add to MetaCart
In a similar way as 2categories can be regarded as a special case of double categories, rewriting logic (in the unconditional case) can be embedded into the more general tile logic, where also sideeffects and rewriting synchronization are considered. Since rewriting logic is the semantic basis of several language implementation efforts, it is useful to map tile logic back into rewriting logic in a conservative way, to obtain executable specifications of tile systems. We extend the results of earlier work by two of the authors, focusing on some interesting cases where the mathematical structures representing configurations (i.e., states) and effects (i.e., observable actions) are very similar, in the sense that they have in common some auxiliary structure (e.g., for tupling, projecting, etc.). In particular, we give in full detail the descriptions of two such cases where (net) processlike and usual term structures are employed. Corresponding to these two cases, we introduce two ca...
Mapping Tile Logic into Rewriting Logic
, 1998
"... . 1 Introduction Mapping Tile Logic into Rewriting Logic meseguer@csl.sri.com ugo@di.unipi.it Jos'e Meseguer and Ugo Montanari Rewriting logic [27, 28, 31] extends to concurrent systems with state changes the body of theory developed within the algebraic semantics approach. It can also be Rewriti ..."
Abstract

Cited by 32 (23 self)
 Add to MetaCart
. 1 Introduction Mapping Tile Logic into Rewriting Logic meseguer@csl.sri.com ugo@di.unipi.it Jos'e Meseguer and Ugo Montanari Rewriting logic [27, 28, 31] extends to concurrent systems with state changes the body of theory developed within the algebraic semantics approach. It can also be Rewriting logic Tile logic membership equational logic 2 double 2VHcategories internal strategies uniform Metodi e Strumenti per la Progettazione e la Verifica di Sistemi Eterogenei Connessi mediante Reti di Comunicazione CONFER2 COORDINA Computer Science Laboratory, SRI International, Menlo Park, Dipartimento di Informatica, Universit`a di Pisa, extends to concurrent systems with state changes the body of theory developed within the algebraic semantics approach. It is both a foundational tool and the kernel language of several implementation efforts (Cafe, ELAN, Maude). extends (unconditional) rewriting logic since it takes into account state changes with side effects and synchronization. It is ...