Results 11  20
of
96
Rewriting calculus with(out) types
 Proceedings of the fourth workshop on rewriting logic and applications
, 2002
"... The last few years have seen the development of a new calculus which can be considered as an outcome of the last decade of various researches on (higher order) term rewriting systems, and lambda calculi. In the Rewriting Calculus (or Rho Calculus, ρCal), algebraic rules are considered as sophisticat ..."
Abstract

Cited by 24 (14 self)
 Add to MetaCart
(Show Context)
The last few years have seen the development of a new calculus which can be considered as an outcome of the last decade of various researches on (higher order) term rewriting systems, and lambda calculi. In the Rewriting Calculus (or Rho Calculus, ρCal), algebraic rules are considered as sophisticated forms of “lambda terms with patterns”, and rule applications as lambda applications with pattern matching facilities. The calculus can be customized to work modulo sophisticated theories, like commutativity, associativity, associativitycommutativity, etc. This allows us to encode complex structures such as list, sets, and more generally objects. The calculus can either be presented “à la Curry ” or “à la Church ” without sacrificing readability and without complicating too much the metatheory. Many static type systems can be easily pluggedin on top of the calculus in the spirit of the rich typeoriented literature. The Rewriting Calculus could represent a lingua franca to encode many paradigms of computations together with a formal basis used to build powerful theorem provers based on lambda calculus and efficient rewriting, and a step towards new proof engines based on the CurryHoward isomorphism. 1
Combining HigherOrder and FirstOrder Computation Using ρcalculus: Towards a Semantics of ELAN
 In Frontiers of Combining Systems 2
, 1999
"... The ρcalculus permits to express in a uniform and simple way firstorder rewriting, λcalculus and nondeterministic computations as well as their combination. In this paper, we present the main components of the ρcalculus and we give a full firstorder presentation of this rewriting calculus using ..."
Abstract

Cited by 23 (10 self)
 Add to MetaCart
The ρcalculus permits to express in a uniform and simple way firstorder rewriting, λcalculus and nondeterministic computations as well as their combination. In this paper, we present the main components of the ρcalculus and we give a full firstorder presentation of this rewriting calculus using an explicit substitution setting, called ρσ, that generalizes the λσcalculus. The basic properties of the nonexplicit and explicit substitution versions are presented. We then detail how to use the ρcalculus to give an operational semantics to the rewrite rules of the ELAN language. 1
Nominal Rewriting Systems
 Proceedings of the 6th ACM SIGPLAN symposium on Principles and Practice of Declarative Programming (PPDP 2004), ACM
, 2004
"... We present a generalisation of rstorder rewriting which allows us to deal with terms involving binding operations in an elegant and practical way. We use a nominal approach to binding, in which bound entities are explicitly named (rather than using a nameless syntax such as de Bruijn indices), yet ..."
Abstract

Cited by 23 (11 self)
 Add to MetaCart
(Show Context)
We present a generalisation of rstorder rewriting which allows us to deal with terms involving binding operations in an elegant and practical way. We use a nominal approach to binding, in which bound entities are explicitly named (rather than using a nameless syntax such as de Bruijn indices), yet we get a rewriting formalism which respects conversion and can be directly implemented. This is achieved by adapting to the rewriting framework the powerful techniques developed by Pitts et al. in the FreshML project. Nominal rewriting can be seen as higherorder rewriting with a rstorder syntax and builtin conversion. We show that standard ( rstorder) rewriting is a particular case of nominal rewriting, and that very expressive higherorder systems such as Klop's Combinatory Reduction Systems can be easily dened as nominal rewriting systems. Finally we study con
uence properties of nominal rewriting.
Developing Developments
, 1994
"... Confluence of orthogonal rewriting systems can be proved using the Finite Developments Theorem. We present, in a general setting, several adaptations of this proof method for obtaining confluence of `not quite' orthogonal systems. 1. Introduction Rewriting as studied here is based on the an ..."
Abstract

Cited by 23 (2 self)
 Add to MetaCart
Confluence of orthogonal rewriting systems can be proved using the Finite Developments Theorem. We present, in a general setting, several adaptations of this proof method for obtaining confluence of `not quite' orthogonal systems. 1. Introduction Rewriting as studied here is based on the analogy: rewriting = substitution + rules. This analogy is useful since it enables a clearcut distinction between the `designer' defined substition process, i.e. management of resources, and the `user' defined rewrite rules, of rewriting systems. For example, application of the `user' defined term rewriting rule 2 \Theta x ! x + x to the term 2 \Theta 3 gives rise to the duplication of the term 3 in the result 3 + 3. How this duplication is actually performed (for example, using sharing) depends on the `designer's' implementation of substitution. This decomposition has been shown useful in [OR94, Oos94] in the case of firstorder term rewriting systems (TRSs, [DJ90, Klo92]) and higherorder term r...
Comparing Combinatory Reduction Systems and HigherOrder Rewrite Systems
, 1993
"... In this paper two formats of higherorder rewriting are compared: Combinatory Reduction Systems introduced by Klop [Klo80] and Higherorder Rewrite Systems defined by Nipkow [Nipa]. Although it always has been obvious that both formats are closely related to each other, up to now the exact relations ..."
Abstract

Cited by 20 (3 self)
 Add to MetaCart
In this paper two formats of higherorder rewriting are compared: Combinatory Reduction Systems introduced by Klop [Klo80] and Higherorder Rewrite Systems defined by Nipkow [Nipa]. Although it always has been obvious that both formats are closely related to each other, up to now the exact relationship between them has not been clear. This was an unsatisfying situation since it meant that proofs for much related frameworks were given twice. We present two translations, one from Combinatory Reduction Systems into HigherOrder Rewrite Systems and one vice versa, based on a detailed comparison of both formats. Since the translations are very `neat' in the sense that the rewrite relation is preserved and (almost) reflected, we can conclude that as far as rewrite theory is concerned, Combinatory Reduction Systems and HigherOrder Rewrite Systems are equivalent, the only difference being that Combinatory Reduction Systems employ a more `lazy' evaluation strategy. Moreover, due to this result...
Inductive types in the calculus of algebraic constructions
 FUNDAMENTA INFORMATICAE 65(12) (2005) 61–86 JOURNAL VERSION OF TLCA’03
, 2005
"... In a previous work, we proved that almost all of the Calculus of Inductive Constructions (CIC), the basis of the proof assistant Coq, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions with functions and predicates defined by higherorder rewrit ..."
Abstract

Cited by 19 (4 self)
 Add to MetaCart
In a previous work, we proved that almost all of the Calculus of Inductive Constructions (CIC), the basis of the proof assistant Coq, can be seen as a Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions with functions and predicates defined by higherorder rewrite rules. In this paper, we prove that CIC as a whole can be seen as a CAC, and that it can be extended with nonstrictly positive types and inductiverecursive types together with nonfree constructors and patternmatching on defined symbols.
Termination and confluence of higherorder rewrite systems
 In Proc. RTA ’00, volume 1833 of LNCS
, 2000
"... Abstract: In the last twenty years, several approaches to higherorder rewriting have been proposed, among which Klop’s Combinatory Rewrite Systems (CRSs), Nipkow’s Higherorder Rewrite Systems (HRSs) and Jouannaud and Okada’s higherorder algebraic specification languages, of which only the last on ..."
Abstract

Cited by 19 (6 self)
 Add to MetaCart
(Show Context)
Abstract: In the last twenty years, several approaches to higherorder rewriting have been proposed, among which Klop’s Combinatory Rewrite Systems (CRSs), Nipkow’s Higherorder Rewrite Systems (HRSs) and Jouannaud and Okada’s higherorder algebraic specification languages, of which only the last one considers typed terms. The later approach has been extended by Jouannaud, Okada and the present author into Inductive Data Type Systems (IDTSs). In this paper, we extend IDTSs with the CRS higherorder patternmatching mechanism, resulting in simplytyped CRSs. Then, we show how the termination criterion developed for IDTSs with firstorder patternmatching, called the General Schema, can be extended so as to prove the strong normalization of IDTSs with higherorder patternmatching. Next, we compare the unified approach with HRSs. We first prove that the extended General Schema can also be applied to HRSs. Second, we show how Nipkow’s higherorder critical pair analysis technique for proving local confluence can be applied to IDTSs. 1
Combinatory Reduction Systems with Explicit Substitution
 REWRITING TECHNIQUES AND APPLICATIONS (RTA), LECTURE NOTES IN COMPUTER SCIENCE
, 1996
"... We generalise the notion of explicit substitution from the lambdacalculus to higher order rewriting, realised by combinatory reduction systems (CRS). In this general framework this is achieved by identifying the "explicit" subclass of CRSs within which rewriting can be implemented effici ..."
Abstract

Cited by 19 (3 self)
 Add to MetaCart
We generalise the notion of explicit substitution from the lambdacalculus to higher order rewriting, realised by combinatory reduction systems (CRS). In this general framework this is achieved by identifying the "explicit" subclass of CRSs within which rewriting can be implemented efficiently.
For every CRS R we show how to construct an explicit substitution variant, Rx, which is a conservative extension of R (and hence confluent when R is confluent). Furthermore we give a syntactic criterion on the rewrite rules that identifies a large subset of the CRSs, the redexpreserving CRSs, for which we show that Rx preserves strong normalisation of R.
We believe that this is a significant first step towards providing a methodology for reasoning about the operational properties of higherorder rewriting in general, and higherorder program transformations in particular, since confluence ensures correctness of such transformations and preservation of strong normalisation ensures that the transformations are always safe, in both cases independently of the used reduction strategy.
A Calculus for Interaction Nets
, 1999
"... . Interaction nets are graphical rewriting systems which can be used as either a highlevel programming paradigm or a lowlevel implementation language. However, an operational semantics together with notions of strategy and normal form which are essential to reason about implementations, are not ea ..."
Abstract

Cited by 15 (8 self)
 Add to MetaCart
. Interaction nets are graphical rewriting systems which can be used as either a highlevel programming paradigm or a lowlevel implementation language. However, an operational semantics together with notions of strategy and normal form which are essential to reason about implementations, are not easy to formalize in this graphical framework. The purpose of this paper is to study a textual calculus for interaction nets, with a formal operational semantics, which provides a foundation for implementation. In addition, we are able to specify in this calculus various strategies, and a type system which formalizes the notion of partition used to define semisimple nets. The resulting system can be seen as a kernel for a programming language, analogous to the calculus. 1 Introduction Interaction nets, introduced by Lafont [12], offer a graphical paradigm of computation based on net rewriting. They have proven themselves successful for application in computer science, most notably with the ...