Results 11 - 20
of
63
Cut Rules and Explicit Substitutions
, 2000
"... this paper deals exclusively with intuitionistic logic (in fact, only the implicative fragment), we require succedents to be a single consequent formula. Natural deduction systems, which we choose to call N-systems, are symbolic logics generally given via introduction and elimination rules for the l ..."
Abstract
-
Cited by 15 (0 self)
- Add to MetaCart
this paper deals exclusively with intuitionistic logic (in fact, only the implicative fragment), we require succedents to be a single consequent formula. Natural deduction systems, which we choose to call N-systems, are symbolic logics generally given via introduction and elimination rules for the logical connectives which operate on the right, i.e., they manipulate the succedent formula. Examples are Gentzen's NJ and NK (Gentzen 1935). Logical deduction systems are given via left-introduction and right-introduction rules for the logical connectives. Although others have called these systems "sequent calculi", we call them L-systems to avoid confusion with other systems given in sequent style. Examples are Gentzen's LK and LJ (Gentzen 1935). In this paper we are primarily interested in L-systems. The advantage of N-systems is that they seem closer to actual reasoning, while L-systems on the other hand seem to have an easier proof theory. L-systems are often extended with a "cut" rule as part of showing that for a given L-system and N-system, the derivations of each system can be encoded in the other. For example, NK proves the same as LK + cut (Gentzen 1935). Proof Normalization. A system is consistent when it is impossible to prove false, i.e., derive absurdity from zero assumptions. A system is analytic (has the analycity property) when there is an e#ective method to decompose any conclusion sequent into simpler premise sequents from which the conclusion can be obtained by some rule in the system such that the conclusion is derivable i# the premises are derivable (Maenpaa 1993). To achieve the goals of consistency and analycity, it has been customary to consider
The rewriting calculus -- Part I
, 2001
"... The ρ-calculus integrates in a uniform and simple setting first-order rewriting, λ-calculus and nondeterministic computations. Its abstraction mechanism is based on the rewrite rule formation and its main evaluation rule is based on matching modulo a theory T. In this first part, the calculus is mot ..."
Abstract
-
Cited by 14 (1 self)
- Add to MetaCart
The ρ-calculus integrates in a uniform and simple setting first-order rewriting, λ-calculus and nondeterministic computations. Its abstraction mechanism is based on the rewrite rule formation and its main evaluation rule is based on matching modulo a theory T. In this first part, the calculus is motivated and its syntax and evaluation rules for any theory T are presented. In the syntactic case, i.e. when T is the empty theory, we study its basic properties for the untyped case. We first show how it uniformly encodes λ-calculus as well as first-order rewriting derivations. Then we provide sufficient conditions for ensuring confluence of the calculus.
Rewriting Modulo a Rewrite System
, 1995
"... . We introduce rewriting with two sets of rules, the first interpreted equationally and the second not. A semantic view considers equational rules as defining an equational theory and reduction rules as defining a rewrite relation modulo this theory. An operational view considers both sets of rules ..."
Abstract
-
Cited by 13 (3 self)
- Add to MetaCart
. We introduce rewriting with two sets of rules, the first interpreted equationally and the second not. A semantic view considers equational rules as defining an equational theory and reduction rules as defining a rewrite relation modulo this theory. An operational view considers both sets of rules as similar. We introduce sufficient properties for these two views to be equivalent (up to different notions of equivalence). The paper ends with a collection of example showing the effectiveness of this approach. Rewriting can be viewed simultaneously as the most basic symbol-manipulating method, and as a very expressive specification framework, given the expressive power of rewriting modulo equations. It is a primary candidate to the role of a general logical framework [Mes92, MOM93]. Historically, rewriting has been given an equational semantics, saying that a rewrite rule u \Gamma! v is interpreted as u is equal to v. This is the case for instance when defining functions or solving the w...
ML^F - Raising ML to the Power of System F
- In ICFP ’03: Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
, 2003
"... We propose a type system ML F that generalizes ML with first-class polymorphism as in System F. We perform partial type reconstruction. As in ML and in opposition to System F, each typable expression admits a principal type, which can be inferred. Furthermore, all expressions of ML are well-typed, ..."
Abstract
-
Cited by 11 (0 self)
- Add to MetaCart
We propose a type system ML F that generalizes ML with first-class polymorphism as in System F. We perform partial type reconstruction. As in ML and in opposition to System F, each typable expression admits a principal type, which can be inferred. Furthermore, all expressions of ML are well-typed, with a possibly more general type than in ML, without any need for type annotation. Only arguments of functions that are used polymorphically must be annotated, which allows to type all expressions of System F as well.
Confluence of Extensional and Non-Extensional λ-calculi with Explicit Substitutions
- Theoretical Computer Science
"... This paper studies confluence of extensional and non-extensional -calculi with explicit substitutions, where extensionality is interpreted by j-expansion. For that, we propose a scheme for explicit substitutions which describes those abstract properties that are sufficient to guarantee confluence. O ..."
Abstract
-
Cited by 10 (2 self)
- Add to MetaCart
This paper studies confluence of extensional and non-extensional -calculi with explicit substitutions, where extensionality is interpreted by j-expansion. For that, we propose a scheme for explicit substitutions which describes those abstract properties that are sufficient to guarantee confluence. Our method makes it possible to treat at the same time many well-known calculi such as oe , oe * , OE , s , AE , f , d and dn . Keywords: functional programming, -calculi, explicit substitutions, confluence, extensionality. 1 Introduction The -calculus is a convenient framework to study functional programming, where the evaluation process is modeled by fi-reduction. The main mechanism used to perform fi-reduction is substitution, which consists of the replacement of formal parameters by actual arguments. The correctness of substitution is guaranteed by a systematic renaming of bound variables, inconvenient which can be simply avoided in the -calculus `a la de Bruijn by using natur...
Raising ML to the Power of System F
- In ICFP ’03: Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
, 2003
"... We propose a type system MLF that generalizes ML with first-class polymorphism as in System F. We perform partial type reconstruction. As in ML and in opposition to System F, each typable expression admits a principal type, which can be inferred. Furthermore, all expressions of ML are well-typed, wi ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
We propose a type system MLF that generalizes ML with first-class polymorphism as in System F. We perform partial type reconstruction. As in ML and in opposition to System F, each typable expression admits a principal type, which can be inferred. Furthermore, all expressions of ML are well-typed, with a possibly more general type than in ML, without any need for type annotation. Only arguments of functions that are used polymorphically must be annotated, which allows to type all expressions of System F as well.
A Typed Context Calculus
, 2001
"... This paper develops a typed calculus for contexts i.e., lambda terms with "holes". In addition to ordinary lambda terms, the calculus contains labeled holes, hole abstraction and context application for manipulating first-class contexts. The primary operation for contexts is hole-filling, which capt ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
This paper develops a typed calculus for contexts i.e., lambda terms with "holes". In addition to ordinary lambda terms, the calculus contains labeled holes, hole abstraction and context application for manipulating first-class contexts. The primary operation for contexts is hole-filling, which captures free variables. This operation conicts with substitution of the lambda calculus, and a straightforward mixture of the two results in an inconsistent system. We solve this problem by defining a type system that precisely specifies the variable-capturing nature of contexts and that keeps track of bound variable renaming. These mechanisms enable us to define a reduction system that properly integrates beta-reduction and hole-filling. The resulting calculus is Church-Rosser and the type system has the subject reduction property. We believe that the context calculus will serve as a basis for developing a programming language with advanced features that call for manipulation of open terms.
Confluence and Preservation of Strong Normalisation in an Explicit Substitutions Calculus
, 1995
"... : Explicit substitutions calculi are formal systems that implement fi-reduction by means of an internal substitution operator. Thus, in that calculi it is possible to delay the application of a substitution to a term or to consider terms with partially applied substitutions. This feature is useful, ..."
Abstract
-
Cited by 9 (0 self)
- Add to MetaCart
: Explicit substitutions calculi are formal systems that implement fi-reduction by means of an internal substitution operator. Thus, in that calculi it is possible to delay the application of a substitution to a term or to consider terms with partially applied substitutions. This feature is useful, for instance, to represent incomplete proofs in type based proof systems. The oe -calculus of explicit substitutions proposed by Abadi, Cardelli, Curien and L'evy gives an elegant way to deal with management of variable names and substitutions of -calculus. However, oe does not preserve strong normalisation of -calculus and it is not a confluent system. Typed variants of oe without composition are strongly normalising but not confluent, while variants with composition are confluent but do not preserve strong normalisation. Neither of them enjoys both properties. In this paper we propose the i - calculus an we present the full proofs of its main properties. This is, as far as we know, the...
Choices in representation and reduction strategies for lambda terms in intensional contexts
- J. Autom. Reasoning
, 2004
"... ..."
Proof-Term Synthesis on Dependent-type Systems via Explicit Substitutions
, 1999
"... Typed #-terms are used as a compact and linear representation of proofs in intuitionistic logic. This is possible since the Curry-Howard isomorphism relates proof trees with typed #-terms. The proofs-as-terms principle can be used to check a proof by type checking the #-term extracted from the compl ..."
Abstract
-
Cited by 8 (1 self)
- Add to MetaCart
Typed #-terms are used as a compact and linear representation of proofs in intuitionistic logic. This is possible since the Curry-Howard isomorphism relates proof trees with typed #-terms. The proofs-as-terms principle can be used to check a proof by type checking the #-term extracted from the complete proof tree. However, proof trees and typed #-terms are built differently. Usually, an auxiliary representation of unfinished proofs is needed, where type checking is possible only on complete proofs. In this paper we present a proof synthesis method for dependent-type systems where typed open terms are built incrementally at the same time as proofs are done. This way, every construction step, not just the last one, may be type checked. The method is based on a suitable calculus where substitutions as well as meta-variables are first-class objects.

