Proceedings of the 37th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages 2010
DOI: 10.1145/1706299.1706345
|View full text |Cite
|
Sign up to set email alerts
|

Generating compiler optimizations from proofs

Abstract: We present an automated technique for generating compiler optimizations from examples of concrete programs before and after improvements have been made to them. The key technical insight of our technique is that a proof of equivalence between the original and transformed concrete programs informs us which aspects of the programs are important and which can be discarded. Our technique therefore uses these proofs, which can be produced by translation validation or a proof-carrying compiler, as a guide to general… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
7
0

Year Published

2010
2010
2019
2019

Publication Types

Select...
6
2
1

Relationship

1
8

Authors

Journals

citations
Cited by 20 publications
(7 citation statements)
references
References 26 publications
0
7
0
Order By: Relevance
“…Generating Proofs. As described in our follow-up work [6], after Peggy validates a transformation it can use the resulting E-PEG to generate a proof of equivalence of the two programs. This proof has already helped us determine how often axioms are useful.…”
Section: Methodsmentioning
confidence: 99%
“…Generating Proofs. As described in our follow-up work [6], after Peggy validates a transformation it can use the resulting E-PEG to generate a proof of equivalence of the two programs. This proof has already helped us determine how often axioms are useful.…”
Section: Methodsmentioning
confidence: 99%
“…Another direction would be to develop more use cases of assumption to increase its benefit to symbolic computation. As inspired by recent work on axiom based verifications for Java program [12,11], it would be also interesting to see how user assumption can help verify program transformations for computer algebra code.…”
Section: Discussionmentioning
confidence: 99%
“…Our optimistic fixpoint approach is directly inspired by Lerner et al 's work on composing dataflow analyses and transformations [Lerner et al 2002]. Related work has aimed to automatically prove the correctness of compiler optimizations [Lerner et al 2003], and on generating compiler optimizations from proofs of equivalence and before/after examples [Tate et al 2010]. A related line of work models a space of possible program transformations given by equivalence rules through the notion of equality saturation, based on a program equivalence graphs (PEGs) [Tate et al 2011] as IR.…”
Section: Related Workmentioning
confidence: 99%