2011
DOI: 10.4204/eptcs.57.7
|View full text |Cite
|
Sign up to set email alerts
|

Improvements for Free

Abstract: "Theorems for Free!" (Wadler, FPCA 1989) is a slogan for a technique that allows to derive statements about functions just from their types. So far, the statements considered have always had a purely extensional flavor: statements relating the value semantics of program expressions, but not statements relating their runtime (or other) cost. Here we study an extension of the technique that allows precisely statements of the latter flavor, by deriving quantitative theorems for free. After developing the theory, … Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
11
0

Year Published

2012
2012
2022
2022

Publication Types

Select...
3
1
1

Relationship

0
5

Authors

Journals

citations
Cited by 7 publications
(11 citation statements)
references
References 17 publications
0
11
0
Order By: Relevance
“…For example, the correctness of shortcut fusion (also known as foldr /build fusion) relies on a free theorem that comes from the rank-2 type of build [25]. Furthermore, Seidel and Voigtländer [26] show that an approach based on free theorems can be used to derive properties relating to efficiency as well. Our paper builds on these approaches by developing a theory that treats both of these aspects of optimisation in a uniform way.…”
Section: Discussionmentioning
confidence: 99%
“…For example, the correctness of shortcut fusion (also known as foldr /build fusion) relies on a free theorem that comes from the rank-2 type of build [25]. Furthermore, Seidel and Voigtländer [26] show that an approach based on free theorems can be used to derive properties relating to efficiency as well. Our paper builds on these approaches by developing a theory that treats both of these aspects of optimisation in a uniform way.…”
Section: Discussionmentioning
confidence: 99%
“…While the mathematical correctness of these optimizations is out of question, for improvement proofs we do not even have a good mathematical framework currently and the literature contains few hints. We expect that we could benefit from the new exciting work of Seidel and Voigtländer [21] in this direction.…”
Section: Resultsmentioning
confidence: 99%
“…In more recent years, improvement theory has been used, along with related techniques, to verify the time-safety of a number of well-known program optimisation schemes, including short-cut fusion [Hackett and Hutton 2018;Seidel and Voigtländer 2011] and the worker-wrapper transformation [Hackett and Hutton 2014]. The theory has also been further developed by Schmidt-Schauß and Sabel [2015a,b], who develop an improvement theory for the LR-calculus Ð an extended higherorder lambda calculus with call-by-need evaluation that models the core language of Haskell Ð and use it to verify the time-safety of common subexpression elimination.…”
Section: Improvement Theorymentioning
confidence: 99%
“…Hope [2008] presents a calculational approach to the problem, deriving an abstract machine from an evaluator, augmenting with cost information and then reversing the original derivation to produce a cost-instrumented evaluator. Rosendahl [1989] demonstrates how the standard denotational semantics for first-order Lisp can be augmented with cost information, and Seidel and Voigtländer [2011] use a similar technique to produce a costed semantics that validates free theorems relating to resource usage. Finally, Danner et al [2015] define an elaboration from a source language into a complexity language from which cost recurrences can be extracted.…”
Section: Related Workmentioning
confidence: 99%