Results 1 
7 of
7
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 20 (9 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
Reflecting proofs in firstorder logic with equality
 In Proceedings of EUROSPEECH’97
, 2005
"... Abstract. Our general goal is to provide better automation in interactive proof assistants such as Coq. We present an interpreter of proof traces in firstorder multisorted logic with equality. Thanks to the reflection ability of Coq, this interpreter is both implemented and formally proved sound — ..."
Abstract

Cited by 10 (3 self)
 Add to MetaCart
Abstract. Our general goal is to provide better automation in interactive proof assistants such as Coq. We present an interpreter of proof traces in firstorder multisorted logic with equality. Thanks to the reflection ability of Coq, this interpreter is both implemented and formally proved sound — with respect to a reflective interpretation of formulae as Coq properties — inside Coq’s type theory. Our generic framework allows to interpret proofs traces computed by any automated theorem prover, as long as they are precise enough: we illustrate that on traces produced by the CiME tool when solving unifiability problems by ordered completion. We discuss some benchmark results obtained on the TPTP library. The aim of this paper is twofold: first we want to validate a reflective approach for proofs in interactive proof assistants, and second show how to provide a better automation for such assistants. Both aspects can be achieved by using external provers designed to automatically solve some problems of interest: these provers can “feed ” the assistant with large proofs, and help to compare the direct and the reflective approaches, and they can also release the user from (parts of) the proof.
Typed mobile ambients in Maude
 Proceedings of the 6th International Workshop on RuleBased Programming (RULE 2005), Electronic Notes in Theoretical Computer Science 147 (2006
, 2006
"... Abstract. Maude has revealed as a powerful tool for implementing different kinds of semantics so that quick prototypes are available for trying examples and proving properties. In this paper we show how to define in Maude two semantics for Cardelli’s Ambient Calculus. The first one is the operationa ..."
Abstract

Cited by 6 (4 self)
 Add to MetaCart
Abstract. Maude has revealed as a powerful tool for implementing different kinds of semantics so that quick prototypes are available for trying examples and proving properties. In this paper we show how to define in Maude two semantics for Cardelli’s Ambient Calculus. The first one is the operational (reduction) semantics which requires the definition of Maude strategies in order to avoid infinite loops. The second one is a type system defined by Cardelli to avoid communication errors. The correctness of that system was not formally proved. We enrich the operational semantics with error rules and prove that welltyped processes do not produce such errors. The type system is highly nondeterministic. We provide two different (equivalent) ways of implementing such nondeterminism in the rules. Keywords: Ambient calculus, operational semantics, type systems, Maude. 1
Pure type systems in rewriting logic: Specifying typed higherorder languages in a firstorder logical framework
 In Essays in Memory of OleJohan Dahl, volume 2635 of LNCS
, 2004
"... ..."
Specifying an active network programming language
 Electronic Notes in theoretical Computer Science 71
, 2002
"... In tutorial form we discuss our specification of PLAN, an active network programming language, in Maude, a formal specification language based on rewriting logic and membership equational logic. We will point out a number of challenges that we faced in this enterprise as well as our solutions and ho ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
In tutorial form we discuss our specification of PLAN, an active network programming language, in Maude, a formal specification language based on rewriting logic and membership equational logic. We will point out a number of challenges that we faced in this enterprise as well as our solutions and how we have formalized them using rewriting logic as a semantic framework. Since we believe that the underlying paradigm of the PLAN language is interesting in its own right, our approach is based on a fairly general treatment that is in its essential parts independent of the concrete application of active networks for which the language was originally designed. In fact, we think of PLAN more generally as a programming language for mobile programs where the concept of location is abstract and does not necessarily coincide with the physical location in a network. Furthermore, we feel that the techniques that we employed in this project and their combination, especially the use of rewriting logic, the modelling of a network, the treatment of multilevel concurrency, the use of an abstract reduction machine with explicit contexts, the treatment of bound variables and environments using an explicit substitution calculus, are worth to discuss, since they are equally applicable in many other contexts. 1 What are Active Networks? On the website of the Switchware Project [13] we find the following explanation: Active networks explore the idea of allowing routing elements to be extensively programmed by the packets passing through them. This allows computation previously possible only at endpoints to be carried out within the network itself, thus enabling optimizations and extensions of current protocols as well as the development of fundamentally new protocols. 1
λν, a Calculus of Explicit Substitutions which Preserves Strong Normalisation
, 1995
"... Explicit substitutions were proposed by Abadi, Cardelli, Curien, Hardin and Lévy to internalise substitutions into λcalculus and to propose a mechanism for computing on substitutions. λν is another view of the same concept which aims to explain the process of substitution and to de ..."
Abstract
 Add to MetaCart
Explicit substitutions were proposed by Abadi, Cardelli, Curien, Hardin and Lévy to internalise substitutions into λcalculus and to propose a mechanism for computing on substitutions. λν is another view of the same concept which aims to explain the process of substitution and to decompose it in small steps. λν is simple and preserves strong normalisation. Apparently that important property cannot stay with another important one, namely confluence on open terms. The spirit of λν is closely related to another calculus of explicit substitutions proposed by de Bruijn and called Cλξφ. In this paper, we introduce λν, we present Cλξφ in the same framework as λν and we compare both calculi. Moreover, we prove properties of λν; namely λν correctly implements β reduction, λν is confluent on closed terms, i.e., on terms of classical λcalculus and on all terms that are derived from those terms, and finally λν preserves strong normalization of βreduction.
Author manuscript, published in "Higher Order and Symbolic Computation (2007)" Explaining the lazy Krivine machine using explicit substitution and addresses
, 2007
"... Abstract. In a previous paper, Benaissa, Lescanne, and Rose, have extended the weak lambdacalculus of explicit substitution λσw with addresses, so that it gives an account of the sharing implemented by lazy functional language interpreters. We show in this paper that their calculus, called λσ a w, ..."
Abstract
 Add to MetaCart
Abstract. In a previous paper, Benaissa, Lescanne, and Rose, have extended the weak lambdacalculus of explicit substitution λσw with addresses, so that it gives an account of the sharing implemented by lazy functional language interpreters. We show in this paper that their calculus, called λσ a w, fits well to the lazy Krivine machine, which describes the core of a lazy (callbyneed) functional programming language implementation. The lazy Krivine machine implements term evaluation sharing, that is essential for efficiency of such languages. The originality of our proof is that it gives a very detailed account of the implemented strategy. 1