Theoretical Computer Science - Special issue: Fourth workshop on mathematical foundations of programming semantics, Boulder, CO, May 1988
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Shortcut deforestation in calculational form
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Typer inference builds a short cut to deforestation
Proceedings of the fourth ACM SIGPLAN international conference on Functional programming
Warm fusion in Stratego: A case study in generation of program transformation systems
Annals of Mathematics and Artificial Intelligence
Existential Types: Logical Relations and Operational Equivalence
ICALP '98 Proceedings of the 25th International Colloquium on Automata, Languages and Programming
⊤⊤-closed relations and admissibility
Mathematical Structures in Computer Science
Parametric polymorphism and operational equivalence
Mathematical Structures in Computer Science
Short cut fusion: proved and improved
SAIG'01 Proceedings of the 2nd international conference on Semantics, applications, and implementation of program generation
A Generalization of Short-Cut Fusion and its Correctness Proof
Higher-Order and Symbolic Computation
Free theorems in the presence of seq
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Fusion with stacks and accumulating parameters
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Mathematical Structures in Computer Science
Proof Methods for Corecursive Programs
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
The Impact of seq on Free Theorems-Based Program Transformations
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 2
Selective strictness and parametricity in structural operational semantics, inequationally
Theoretical Computer Science
A family of syntactic logical relations for the semantics of Haskell-like languages
Information and Computation
Free theorems for functional logic programs
Proceedings of the 4th ACM SIGPLAN workshop on Programming languages meets program verification
The impact of higher-order state and control effects on local relational reasoning
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
A semantic formulation of ⊤⊤-lifting and logical predicates for computational metalanguage
CSL'05 Proceedings of the 19th international conference on Computer Science Logic
Explicit binds: effortless efficiency with and without trees
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
The Impact of seq on Free Theorems-Based Program Transformations
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 2
Proof Methods for Corecursive Programs
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Hi-index | 0.00 |
Fusion is the process of removing intermediate data structures from modularly constructed functional programs. Short cut fusion is a particular fusion technique which uses a single, local transformation rule to fuse compositions of list-processing functions. Short cut fusion has traditionally been treated purely syntactically, and justifications for it have appealed either to intuition or to “free theorems” – even though the latter have not been known to hold in languages supporting higher-order polymorphic functions and fixpoint recursion. In this paper we use Pitts' recent demonstration that contextual equivalence in such languages is parametric to provide the first formal proof of the correctness of short cut fusion for them. In particular, we show that programs which have undergone short cut fusion are contextually equivalent to their unfused counterparts.