Results 1  10
of
44
Typedirected partial evaluation
 Proceedings of the TwentyThird Annual ACM Symposium on Principles of Programming Languages
, 1996
"... Abstract. Typedirected partial evaluation stems from the residualization of arbitrary static values in dynamic contexts, given their type. Its algorithm coincides with the one for coercing asubtype value into a supertype value, which itself coincides with the one of normalization in thecalculus. T ..."
Abstract

Cited by 219 (38 self)
 Add to MetaCart
Abstract. Typedirected partial evaluation stems from the residualization of arbitrary static values in dynamic contexts, given their type. Its algorithm coincides with the one for coercing asubtype value into a supertype value, which itself coincides with the one of normalization in thecalculus. Typedirected partial evaluation is thus used to specialize compiled, closed programs, given their type. Since Similix, letinsertion is a cornerstone of partial evaluators for callbyvalue procedural programs with computational e ects. It prevents the duplication of residual computations, and more generally maintains the order of dynamic side e ects in residual programs. This article describes the extension of typedirected partial evaluation to insert residual let expressions. This extension requires the userto annotate arrowtypes with e ect information. It is achieved by delimiting and abstracting control, comparably to continuationbased specialization in direct style. It enables typedirected partial evaluation of e ectful programs (e.g.,ade nitional lambdainterpreter for an imperative language) that are in direct style. The residual programs are in Anormal form. 1
Normalization by evaluation for typed lambda calculus with coproducts
 In LICS
, 2001
"... We solve the decision problem for simply typed lambda calculus with strong binary sums, equivalently the word problem for free cartesian closed categories with binary coproducts. Our method is based on the semantical technique known as “normalization by evaluation ” and involves inverting the interp ..."
Abstract

Cited by 46 (6 self)
 Add to MetaCart
We solve the decision problem for simply typed lambda calculus with strong binary sums, equivalently the word problem for free cartesian closed categories with binary coproducts. Our method is based on the semantical technique known as “normalization by evaluation ” and involves inverting the interpretation of the syntax into a suitable sheaf model and from this extracting appropriate unique normal forms. There is no rewriting theory involved, and the proof is completely constructive, allowing program extraction from the proof. 1
A Linear Spine Calculus
 Journal of Logic and Computation
, 2003
"... We present the spine calculus S ##&# as an efficient representation for the linear #calculus # ##&# which includes unrestricted functions (#), linear functions (#), additive pairing (&), and additive unit (#). S ##&# enhances the representation of Church's simply typed # ..."
Abstract

Cited by 42 (9 self)
 Add to MetaCart
(Show Context)
We present the spine calculus S ##&# as an efficient representation for the linear #calculus # ##&# which includes unrestricted functions (#), linear functions (#), additive pairing (&), and additive unit (#). S ##&# enhances the representation of Church's simply typed #calculus by enforcing extensionality and by incorporating linear constructs. This approach permits procedures such as unification to retain the efficient head access that characterizes firstorder term languages without the overhead of performing #conversions at run time. Applications lie in proof search, logic programming, and logical frameworks based on linear type theories. It is also related to foundational work on term assignment calculi for presentations of the sequent calculus. We define the spine calculus, give translations of # ##&# into S ##&# and viceversa, prove their soundness and completeness with respect to typing and reductions, and show that the typable fragment of the spine calculus is strongly normalizing and admits unique canonical, i.e. ##normal, forms.
Confluence Properties of Extensional and NonExtensional lambdaCalculi with Explicit Substitutions (Extended Abstract)
 in Proceedings of the Seventh International Conference on Rewriting Techniques and Applications
, 1996
"... ) Delia Kesner CNRS and LRI, B at 490, Universit e ParisSud  91405 Orsay Cedex, France. email:Delia.Kesner@lri.fr Abstract. This paper studies confluence properties of extensional and nonextensional #calculi with explicit substitutions, where extensionality is interpreted by #expansion. For ..."
Abstract

Cited by 27 (5 self)
 Add to MetaCart
) Delia Kesner CNRS and LRI, B at 490, Universit e ParisSud  91405 Orsay Cedex, France. email:Delia.Kesner@lri.fr Abstract. This paper studies confluence properties of extensional and nonextensional #calculi with explicit substitutions, where extensionality is interpreted by #expansion. For that, we propose a general scheme for explicit substitutions which describes those abstract properties that are sufficient to guarantee confluence. Our general scheme makes it possible to treat at the same time many wellknown calculi such as ## , ## # and ## , or some other new calculi that we propose in this paper. We also show for those calculi not fitting in the general scheme that can be translated to another one fitting the scheme, such as #s , how to reason about confluence properties of their extensional and nonextensional versions. 1 Introduction The #calculus is a convenient framework to study functional programming, where the evaluation process is modeled by #reduction. The...
On the Intuitionistic Force of Classical Search
 THEORETICAL COMPUTER SCIENCE
, 1996
"... The combinatorics of classical propositional logic lies at the heart of both local and global methods of proofsearch enabling the achievement of leastcommitment search. Extension of such methods to the predicate calculus, or to nonclassical systems, presents us with the problem of recovering ..."
Abstract

Cited by 20 (5 self)
 Add to MetaCart
The combinatorics of classical propositional logic lies at the heart of both local and global methods of proofsearch enabling the achievement of leastcommitment search. Extension of such methods to the predicate calculus, or to nonclassical systems, presents us with the problem of recovering this leastcommitment principle in the context of noninvertible rules. One successful approach is to view the nonclassical logic as a perturbation on search in classical logic and characterize when a leastcommitment (classical) search yields sufficient evidence for provability in the (nonclassical) logic. This technique has been successfully applied to both local and global methods at the cost of subsidiary searches and is the analogue of the standard treatment of quantifiers via skolemization and unification. In this paper, we take a typetheoretic view of this approach for the case in which the nonclassical logic is intuitionistic. We develop a system of realizers (proofobje...
Simulating Expansions Without Expansions
, 1993
"... We add extensional equalities for the functional and product types to the typed calculus with not only products and terminal object, but also sums and bounded recursion (a version of recursion that does not allow recursive calls of infinite length). We provide a confluent and strongly normalizing ..."
Abstract

Cited by 17 (9 self)
 Add to MetaCart
We add extensional equalities for the functional and product types to the typed calculus with not only products and terminal object, but also sums and bounded recursion (a version of recursion that does not allow recursive calls of infinite length). We provide a confluent and strongly normalizing (thus decidable) rewriting system for the calculus, that stays confluent when allowing unbounded recursion. For that, we turn the extensional equalities into expansion rules, and not into contractions as is done traditionally. We first prove the calculus to be weakly confluent, which is a more complex and interesting task than for the usual calculus. Then we provide an effective mechanism to simulate expansions without expansion rules, so that the strong normalization of the calculus can be derived from that of the underlying, traditional, non extensional system. These results give us the confluence of the full calculus, but we also show how to deduce confluence directly form our simulation...
Combining First Order Algebraic Rewriting Systems, Recursion and Extensional Lambda Calculi
 Intern. Conf. on Automata, Languages and Programming (ICALP), volume 820 of Lecture Notes in Computer Science
, 1994
"... It is well known that confluence and strong normalization are preserved when combining leftlinear algebraic rewriting systems with the simply typed lambda calculus. It is equally well known that confluence fails when adding either the usual extensional rule for j, or recursion together with the usu ..."
Abstract

Cited by 16 (8 self)
 Add to MetaCart
It is well known that confluence and strong normalization are preserved when combining leftlinear algebraic rewriting systems with the simply typed lambda calculus. It is equally well known that confluence fails when adding either the usual extensional rule for j, or recursion together with the usual contraction rule for surjective pairing. We show that confluence and normalization are modular properties for the combination of leftlinear algebraic rewriting systems with typed lambda calculi enriched with expansive extensional rules for j and surjective pairing. For that, we use a translation technique allowing to simulate expansions without expansion rules. We also show that confluence is maintained in a modular way when adding fixpoints. This result is also obtained by a simple translation technique allowing to simulate bounded recursion with fi reduction. 1 Introduction Confluence and strong normalization for the combination of lambda calculus and algebraic rewriting systems have...
Recursion over Objects of Functional Type
, 1999
"... This paper presents an extension of the simpletyped lambdacalculus allowing iteration and case... ..."
Abstract

Cited by 16 (0 self)
 Add to MetaCart
This paper presents an extension of the simpletyped lambdacalculus allowing iteration and case...
EtaExpansions in Dependent Type Theory  The Calculus of Constructions
 Proceedings of the Third International Conference on Typed Lambda Calculus and Applications (TLCA'97
, 1997
"... . Although the use of expansionary jrewrite has become increasingly common in recent years, one area where jcontractions have until now remained the only possibility is in the more powerful type theories of the cube. This paper rectifies this situation by applying jexpansions to the Calculus of ..."
Abstract

Cited by 13 (0 self)
 Add to MetaCart
(Show Context)
. Although the use of expansionary jrewrite has become increasingly common in recent years, one area where jcontractions have until now remained the only possibility is in the more powerful type theories of the cube. This paper rectifies this situation by applying jexpansions to the Calculus of Constructions  we discuss some of the difficulties posed by the presence of dependent types, prove that every term rewrites to a unique long fijnormal form and deduce the decidability of fijequality, typeability and type inhabitation as corollaries. 1 Introduction Extensional equality for the simply typed calculus requires jconversion, whose interpretation as a rewrite rule has traditionally been as a contraction x : T:fx ) f where x 6 2 FV(t). When combined with the usual fireduction, the resulting rewrite relation is strongly normalising and confluent, and thus reduction to normal form provides a decision procedure for the associated equational theory. However jcontractions beh...
Confluence of Extensional and NonExtensional λcalculi with Explicit Substitutions
 Theoretical Computer Science
"... This paper studies confluence of extensional and nonextensional calculi with explicit substitutions, where extensionality is interpreted by jexpansion. For that, we propose a scheme for explicit substitutions which describes those abstract properties that are sufficient to guarantee confluence. O ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
This paper studies confluence of extensional and nonextensional calculi with explicit substitutions, where extensionality is interpreted by jexpansion. 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 wellknown 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 fireduction. The main mechanism used to perform fireduction 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...