Abstract

Maude is a high-performance language and system supporting both equational and rewriting logic computation for a wide range of applications, including development of theorem proving tools, language prototyping, executable specification and analysis of concurrent and distributed systems, and logical framework applications in which other logics are represented, translated, and executed. Maude’s functional modules are theories in membership equational logic [8,1], a Horn logic whose atomic sentences are either equalities t = t′ or membership assertions of the form t : s, stating that a term t has a certain sort s. Such a logic extends OBJ3’s [4] order-sorted equational logic and supports sorts, subsorts, subsort polymorphic overloading of operators, and definition of partial functions with equationally defined domains. Maude’s functional modules are assumed to be Church-Rosser; they are executed by the Maude engine according to the rewriting techniques and operational semantics developed in [1]. Membership equational logic is a sublogic of rewriting logic [6]. A rewrite theory is a pair (T, R) with T a membership equational theory, and R a collection of labeled and possibly conditional rewrite rules involving terms in the signature of T . Maude’s system modules are rewrite theories in exactly this sense. The rewrite rules r : t −→ t′ in R are not equations. Computationally, they are interpreted as local transition rules in a possibly concurrent system. Logically, they are interpreted as inference rules in a logical system. This makes rewriting logic both a general semantic framework to specify concurrent systems and languages [7], and a general logical framework to represent and execute different logics [5]. Rewriting in (T, R) happens modulo the equational axioms in T . Maude supports rewriting modulo different combinations of associativity, commutativity, identity, and idempotency axioms. The rules in R need not be Church-Rosser and need not be terminating. Many different rewriting paths are then possible; therefore, the choice of appropriate strategies is crucial for executing rewrite theories. In Maude, such strategies are not an extra-logical part of the language.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call