Results 1  10
of
16
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 207 (39 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
A General Formulation of Simultaneous InductiveRecursive Definitions in Type Theory
 Journal of Symbolic Logic
, 1998
"... The first example of a simultaneous inductiverecursive definition in intuitionistic type theory is MartinLöf's universe à la Tarski. A set U0 of codes for small sets is generated inductively at the same time as a function T0 , which maps a code to the corresponding small set, is defined by recursi ..."
Abstract

Cited by 65 (10 self)
 Add to MetaCart
The first example of a simultaneous inductiverecursive definition in intuitionistic type theory is MartinLöf's universe à la Tarski. A set U0 of codes for small sets is generated inductively at the same time as a function T0 , which maps a code to the corresponding small set, is defined by recursion on the way the elements of U0 are generated. In this paper we argue that there is an underlying general notion of simultaneous inductiverecursive definition which is implicit in MartinLöf's intuitionistic type theory. We extend previously given schematic formulations of inductive definitions in type theory to encompass a general notion of simultaneous inductionrecursion. This enables us to give a unified treatment of several interesting constructions including various universe constructions by Palmgren, Griffor, Rathjen, and Setzer and a constructive version of Aczel's Frege structures. Consistency of a restricted version of the extension is shown by constructing a realisability model ...
Setoids in Type Theory
, 2000
"... Formalising mathematics in dependent type theory often requires to use setoids, i.e. types with an explicit equality relation, as a representation of sets. This paper surveys some possible denitions of setoids and assesses their suitability as a basis for developing mathematics. In particular, we ..."
Abstract

Cited by 30 (4 self)
 Add to MetaCart
Formalising mathematics in dependent type theory often requires to use setoids, i.e. types with an explicit equality relation, as a representation of sets. This paper surveys some possible denitions of setoids and assesses their suitability as a basis for developing mathematics. In particular, we argue that a commonly advocated approach to partial setoids is unsuitable, and more generally that total setoids seem better suited for formalising mathematics. 1
From ReductionBased to ReductionFree Normalization
, 2004
"... We present a systematic construction of a reductionfree normalization function. Starting from ..."
Abstract

Cited by 21 (8 self)
 Add to MetaCart
We present a systematic construction of a reductionfree normalization function. Starting from
Normalization and partial evaluation
 Applied Semantics, number 2395 in LNCS
, 2002
"... Abstract. We give an introduction to normalization by evaluation and typedirected partial evaluation. We first present normalization by evaluation for a combinatory version of Gödel System T. Then we show normalization by evaluation for typed lambda calculus with β and η conversion. Finally, we int ..."
Abstract

Cited by 17 (0 self)
 Add to MetaCart
Abstract. We give an introduction to normalization by evaluation and typedirected partial evaluation. We first present normalization by evaluation for a combinatory version of Gödel System T. Then we show normalization by evaluation for typed lambda calculus with β and η conversion. Finally, we introduce the notion of binding time, and explain the method of typedirected partial evaluation for a small PCFstyle functional programming language. We give algorithms for both callbyname and callbyvalue versions of this language.
Formalising formulasastypesasobjects
 Types for Proofs and Programs
, 2000
"... Abstract. We describe a formalisation of the CurryHowardLawvere correspondence between the natural deduction system for minimal logic, the typed lambda calculus and Cartesian closed categories. We formalise the type of natural deduction proof trees as a family of sets Γ ⊢ A indexed by the current ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
Abstract. We describe a formalisation of the CurryHowardLawvere correspondence between the natural deduction system for minimal logic, the typed lambda calculus and Cartesian closed categories. We formalise the type of natural deduction proof trees as a family of sets Γ ⊢ A indexed by the current assumption list Γ and the conclusion A and organise numerous useful lemmas about proof trees categorically. We prove categorical properties about proof trees up to (syntactic) identity as well as up to βηconvertibility. We prove that our notion of proof trees is equivalent in an appropriate sense to more traditional representations of lambda terms. The formalisation is carried out in the proof assistant ALF for MartinLöf type theory. 1
TypeDirected Partial Evaluation in Haskell
, 1998
"... We implement typedirected partial evaluation in the pure functional programming language Haskell, using type classes. 1 ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We implement typedirected partial evaluation in the pure functional programming language Haskell, using type classes. 1
The simple type theory of normalisation by evaluation
 Proceedings of the First International Workshop on Reduction Strategies in Rewriting and Programming (WRS 2001), number 57 in Electronic Notes in Theoretical Computer Science
, 2001
"... We develop the type theory of the Normalisation by Evaluation (NbE) algorithm for the λcalculus in the simplytyped case. In particular, we show that the algorithm computes long β(η)normal forms by means of Plotkin’s callbyname and callbyvalue βevaluation semantics. This is noteworthy (i) as t ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We develop the type theory of the Normalisation by Evaluation (NbE) algorithm for the λcalculus in the simplytyped case. In particular, we show that the algorithm computes long β(η)normal forms by means of Plotkin’s callbyname and callbyvalue βevaluation semantics. This is noteworthy (i) as the algorithm decides full βηequality and (ii) as the algorithm sofar only has been presented in modeltheoretic terms. To showcase the effective means of the algorithm, we provide an environment machine implementation of the semantics: the NbE Machine. We also analyse the semantics and the environment machine in terms of strategies on the λcalculus and subsequently address the untyped case. The proof burden is slight. 1
Paths in Type Theory
"... , , Id, Nat, W , and universes). It is possible to build other inductive types from this collection, but it always seemed more natural to add necessary datatypes directly to the type theory, instead of encoding them into natural numbers. However, introducing new sets in an arbitrary manner, it is e ..."
Abstract
 Add to MetaCart
, , Id, Nat, W , and universes). It is possible to build other inductive types from this collection, but it always seemed more natural to add necessary datatypes directly to the type theory, instead of encoding them into natural numbers. However, introducing new sets in an arbitrary manner, it is easy to make the theory inconsistent, see Altenkirch alti:lundsbrunn [Alt94] for many examples. Dybjer DybjerP:indf [Dyb94] analysed commonly dened datatypes uniformly, presented setforming, introduction and elimination rules for them in a schematic way, and gave an argument (but not a formal proof?) that all instances of his schema are conservative over MarinLof type theory. The idea behind the ALF system was to facilitate the experiments with various type theories. The system works with modules called theories. A theory consist of denitions of types and typed constants, which in their turn may correspond