Results 1  10
of
64
On reductionbased process semantics
 Theoretical Computer Science
, 1995
"... Abstract. A formulation of semantic theories for processes which is based on reduction relation and equational reasoning is studied. The new construction can induce meaningful theories for processes, both in strong and weak settings. The resulting theories in many cases coincide with, and sometimes ..."
Abstract

Cited by 144 (21 self)
 Add to MetaCart
Abstract. A formulation of semantic theories for processes which is based on reduction relation and equational reasoning is studied. The new construction can induce meaningful theories for processes, both in strong and weak settings. The resulting theories in many cases coincide with, and sometimes generalise, observationbased formulation of behavioural equivalence. The basic construction of reductionbased theories is studied, taking a simple name passing calculus called \nucalculus as an example. Results on other calculi are also briefly discussed.
The Geometry of Optimal Lambda Reduction
, 1992
"... Lamping discovered an optimal graphreduction implementation of the calculus. Simultaneously, Girard invented the geometry of interaction, a mathematical foundation for operational semantics. In this paper, we connect and explain the geometry of interaction and Lamping's graphs. The geometry of int ..."
Abstract

Cited by 97 (2 self)
 Add to MetaCart
Lamping discovered an optimal graphreduction implementation of the calculus. Simultaneously, Girard invented the geometry of interaction, a mathematical foundation for operational semantics. In this paper, we connect and explain the geometry of interaction and Lamping's graphs. The geometry of interaction provides a suitable semantic basis for explaining and improving Lamping's system. On the other hand, graphs similar to Lamping's provide a concrete representation of the geometry of interaction. Together, they offer a new understanding of computation, as well as ideas for efficient and correct implementations.
Rewriting Logic as a Semantic Framework for Concurrency: a Progress Report
, 1996
"... . This paper surveys the work of many researchers on rewriting logic since it was first introduced in 1990. The main emphasis is on the use of rewriting logic as a semantic framework for concurrency. The goal in this regard is to express as faithfully as possible a very wide range of concurrency mod ..."
Abstract

Cited by 82 (22 self)
 Add to MetaCart
. This paper surveys the work of many researchers on rewriting logic since it was first introduced in 1990. The main emphasis is on the use of rewriting logic as a semantic framework for concurrency. The goal in this regard is to express as faithfully as possible a very wide range of concurrency models, each on its own terms, avoiding any encodings or translations. Bringing very different models under a common semantic framework makes easier to understand what different models have in common and how they differ, to find deep connections between them, and to reason across their different formalisms. It becomes also much easier to achieve in a rigorous way the integration and interoperation of different models and languages whose combination offers attractive advantages. The logic and model theory of rewriting logic are also summarized, a number of current research directions are surveyed, and some concluding remarks about future directions are made. Table of Contents 1 In...
Equational term graph rewriting
 FUNDAMENTA INFORMATICAE
, 1996
"... We present an equational framework for term graph rewriting with cycles. The usual notion of homomorphism is phrased in terms of the notion of bisimulation, which is wellknown in process algebra and concurrency theory. Specifically, a homomorphism is a functional bisimulation. We prove that the bis ..."
Abstract

Cited by 71 (8 self)
 Add to MetaCart
We present an equational framework for term graph rewriting with cycles. The usual notion of homomorphism is phrased in terms of the notion of bisimulation, which is wellknown in process algebra and concurrency theory. Specifically, a homomorphism is a functional bisimulation. We prove that the bisimilarity class of a term graph, partially ordered by functional bisimulation, is a complete lattice. It is shown how Equational Logic induces a notion of copying and substitution on term graphs, or systems of recursion equations, and also suggests the introduction of hidden or nameless nodes in a term graph. Hidden nodes can be used only once. The general framework of term graphs with copying is compared with the more restricted copying facilities embodied in the µrule, and translations are given between term graphs and µexpressions. Using these, a proof system is given for µexpressions that is complete for the semantics given by infinite tree unwinding. Next, orthogonal term graph rewrite ...
Implementing Typed Intermediate Languages
, 1998
"... Recent advances in compiler technology have demonstrated the benefits of using strongly typed intermediate languages to compile richly typed source languages (e.g., ML). A typepreserving compiler can use types to guide advanced optimizations and to help generate provably secure mobile code. Types, u ..."
Abstract

Cited by 61 (16 self)
 Add to MetaCart
Recent advances in compiler technology have demonstrated the benefits of using strongly typed intermediate languages to compile richly typed source languages (e.g., ML). A typepreserving compiler can use types to guide advanced optimizations and to help generate provably secure mobile code. Types, unfortunately, are very hard to represent and manipulate efficiently; a naive implementation can easily add exponential overhead to the compilation and execution of a program. This paper describes our experience with implementing the FLINT typed intermediate language in the SML/NJ production compiler. We observe that a typepreserving compiler will not scale to handle large types unless all of its typepreserving stages preserve the asymptotic time and space usage in representing and manipulating types. We present a series of novel techniques for achieving this property and give empirical evidence of their effectiveness.
Linear Logic Without Boxes
, 1992
"... Girard's original definition of proof nets for linear logic involves boxes. The box is the unit for erasing and duplicating fragments of proof nets. It imposes synchronization, limits sharing, and impedes a completely local view of computation. Here we describe an implementation of proof nets withou ..."
Abstract

Cited by 53 (0 self)
 Add to MetaCart
Girard's original definition of proof nets for linear logic involves boxes. The box is the unit for erasing and duplicating fragments of proof nets. It imposes synchronization, limits sharing, and impedes a completely local view of computation. Here we describe an implementation of proof nets without boxes. Proof nets are translated into graphs of the sort used in optimal calculus implementations; computation is performed by simple graph rewriting. This graph implementation helps in understanding optimal reductions in the calculus and in the various programming languages inspired by linear logic. 1 Beyond the calculus The calculus is not entirely explicit about the operations of erasing and duplicating arguments. These operations are important both in the theory of the  calculus and in its implementations, yet they are typically treated somewhat informally, implicitly. The proof nets of linear logic [1] provide a refinement of the calculus where these operations become explici...
Interaction Systems I: The theory of optimal reductions
 Mathematical Structures in Computer Science
, 1994
"... We introduce a new class of higher order rewriting systems, called Interaction Systems (IS's). IS's come from Lafont's (Intuitionistic) Interaction Nets [Lafont 1990] by dropping the linearity constraint. In particular, we borrow from Interaction Nets the syntactical bipartitions of operators int ..."
Abstract

Cited by 40 (6 self)
 Add to MetaCart
We introduce a new class of higher order rewriting systems, called Interaction Systems (IS's). IS's come from Lafont's (Intuitionistic) Interaction Nets [Lafont 1990] by dropping the linearity constraint. In particular, we borrow from Interaction Nets the syntactical bipartitions of operators into constructors and destructors and the principle of binary interaction. As a consequence, IS's are a subclass of Klop's Combinatory Reduction Systems [Klop 1980] where the CurryHoward analogy still "makes sense". Destructors and constructors respectively corresponds to left and right logical introduction rules, interaction is cut and reduction is cutelimination. Interaction Systems have been primarily motivated by the necessity of extending the practice of optimal evaluators for calculus [Lamping 1990, Gonthier et al. 1992a] to other computational constructs as conditionals and recursion. In this paper we focus on the theoretical aspects of optimal reductions. In particular, we ge...
The CallbyNeed Lambda Calculus
 Journal of Functional Programming
, 1994
"... We present a calculus that captures the operational semantics of callbyneed. The callbyneed lambda calculus is confluent, has a notion of standard reduction, and entails the same observational equivalence relation as the callbyname calculus. The system can be formulated with or without explici ..."
Abstract

Cited by 39 (2 self)
 Add to MetaCart
We present a calculus that captures the operational semantics of callbyneed. The callbyneed lambda calculus is confluent, has a notion of standard reduction, and entails the same observational equivalence relation as the callbyname calculus. The system can be formulated with or without explicit let bindings, admits useful notions of marking and developments, and has a straightforward operational interpretation. Introduction The correspondence between callbyvalue lambda calculi and strict functional languages (such as the pure subset of Standard ML) is quite good; the correspondence between callby name lambda calculi and lazy functional languages (such as Miranda or Haskell) is not so good. Callbyname reevaluates an argument each time it is used, a prohibitive expense. Thus, many lazy languages are implemented using the callbyneed mechanism proposed by Wadsworth (1971), which overwrites an argument with its value the first time it is evaluated, avoiding the need for any s...
The Barendregt Cube with Definitions and Generalised Reduction
, 1997
"... In this paper, we propose to extend the Barendregt Cube by generalising reduction and by adding definition mechanisms. We show that this extension satisfies all the original properties of the Cube including Church Rosser, Subject Reduction and Strong Normalisation. Keywords: Generalised Reduction, ..."
Abstract

Cited by 37 (17 self)
 Add to MetaCart
In this paper, we propose to extend the Barendregt Cube by generalising reduction and by adding definition mechanisms. We show that this extension satisfies all the original properties of the Cube including Church Rosser, Subject Reduction and Strong Normalisation. Keywords: Generalised Reduction, Definitions, Barendregt Cube, Church Rosser, Subject Reduction, Strong Normalisation. Contents 1 Introduction 3 1.1 Why generalised reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Why definition mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 The item notation for definitions and generalised reduction . . . . . . . . . . 4 2 The item notation 7 3 The ordinary typing relation and its properties 10 3.1 The typing relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.2 Properties of the ordinary typing relation . . . . . . . . . . . . . . . . . . . . 13 4 Generalising reduction in the Cube 15 4.1 The generalised...
Explicit Cyclic Substitutions
, 1993
"... In this paper we consider rewrite systems that describe the lambdacalculus enriched with recursive and nonrecursive local definitions by generalizing the `explicit substitutions' used by Abadi, Cardelli, Curien, and Lévy [1] to describe sharing in lambdaterms. This leads to `explicit cyclic subst ..."
Abstract

Cited by 25 (2 self)
 Add to MetaCart
In this paper we consider rewrite systems that describe the lambdacalculus enriched with recursive and nonrecursive local definitions by generalizing the `explicit substitutions' used by Abadi, Cardelli, Curien, and Lévy [1] to describe sharing in lambdaterms. This leads to `explicit cyclic substitutions' that can describe the mutual sharing of local recursive definitions. We demonstrate how this may be used to describe standard binding constructions (let and letrec)  directly using substitution and fixed point induction as well as using `smallstep' rewriting semantics where substitution is interleaved with the mechanics of the following betareductions. With this we hope to contribute to the synthesis of denotational and operational specifications of sharing and recursion.