The starting point of this work is the observation that the Curry-Howard isomorphism, relating types and propositions, programs and proofs, composition and cut, extends to the correspondence of program fusion and cut elimination. This simple idea suggests logical interpretations of some of the basic methods of generic and transformational programming. In the present paper, we provide a logical analysis of the general form of build fusion, also known as deforestation, over the inductive and the coinductive datatypes, regular or nested. The analysis is based on a novel logical interpretation of parametricity in terms of the paranatural transformations, introduced in the paper.Comment: 17 pages, 6 diagrams; Andre Scedrov FestSchrif
The proof theoretic methodology of deep inference [2] yields the widest range of analytic proof syst...
In functional languages intermediate data structures are often used as glue to connect separate part...
Methods and systems for proof by induction are very different. The most general methods are difficul...
In functional languages intermediate data structures are often used as glue to connect separate par...
Short-cut fusion is a program transformation technique that uses a single local transformation - cal...
In this chapter we investigate a computational interpretation of constructive proofs and relate it t...
Fusion is one of the most important code transformations as it has the potential to substantially op...
Proof search has been used to specify a wide range of computation systems. In order to build a frame...
Monads are commonplace programming devices that are used to uniformly structure computations;in part...
AbstractProof search has been used to specify a wide range of computation systems. In order to build...
There are a number of approaches for eliminating intermediate data structures in functional programs...
AbstractPVS is a highly automated framework for specification and verification. We show how the lang...
Fusion is the process of removing intermediate data structures from modularly constructed functional...
We study an alternative embedding of IPC into atomic system F whose translation of proofs is based,...
This paper deals with two issues. First, it identifies structured propositions with logical procedur...
The proof theoretic methodology of deep inference [2] yields the widest range of analytic proof syst...
In functional languages intermediate data structures are often used as glue to connect separate part...
Methods and systems for proof by induction are very different. The most general methods are difficul...
In functional languages intermediate data structures are often used as glue to connect separate par...
Short-cut fusion is a program transformation technique that uses a single local transformation - cal...
In this chapter we investigate a computational interpretation of constructive proofs and relate it t...
Fusion is one of the most important code transformations as it has the potential to substantially op...
Proof search has been used to specify a wide range of computation systems. In order to build a frame...
Monads are commonplace programming devices that are used to uniformly structure computations;in part...
AbstractProof search has been used to specify a wide range of computation systems. In order to build...
There are a number of approaches for eliminating intermediate data structures in functional programs...
AbstractPVS is a highly automated framework for specification and verification. We show how the lang...
Fusion is the process of removing intermediate data structures from modularly constructed functional...
We study an alternative embedding of IPC into atomic system F whose translation of proofs is based,...
This paper deals with two issues. First, it identifies structured propositions with logical procedur...
The proof theoretic methodology of deep inference [2] yields the widest range of analytic proof syst...
In functional languages intermediate data structures are often used as glue to connect separate part...
Methods and systems for proof by induction are very different. The most general methods are difficul...