Probabilistically Accurate Program Transformations
Author(s)
Misailovic, Sasa; Roy, Daniel; Rinard, Martin C.
DownloadRinard_Probabilistically accurate.pdf (254.8Kb)
OPEN_ACCESS_POLICY
Open Access Policy
Creative Commons Attribution-Noncommercial-Share Alike
Terms of use
Metadata
Show full item recordAbstract
The standard approach to program transformation involves the use of discrete logical reasoning to prove that the transformation does not change the observable semantics of the program. We propose a new approach that, in contrast, uses probabilistic reasoning to justify the application of transformations that may change, within probabilistic accuracy bounds, the result that the program produces.
Our new approach produces probabilistic guarantees of the form ℙ(|D| ≥ B) ≤ ε, ε ∈ (0, 1), where D is the difference between the results that the transformed and original programs produce, B is an acceptability bound on the absolute value of D, and ε is the maximum acceptable probability of observing large |D|. We show how to use our approach to justify the application of loop perforation (which transforms loops to execute fewer iterations) to a set of computational patterns.
Description
18th International Symposium, SAS 2011, Venice, Italy, September 14-16, 2011. Proceedings
Date issued
2011-09Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory; Massachusetts Institute of Technology. Department of Electrical Engineering and Computer ScienceJournal
Static Analysis
Publisher
Springer Berlin / Heidelberg
Citation
Misailovic, Sasa, Daniel M. Roy, and Martin C. Rinard. “Probabilistically Accurate Program Transformations.” Static Analysis. Ed. Eran Yahav. LNCS Vol. 6887. Berlin, Heidelberg: Springer Berlin Heidelberg, 2011. 316–333.
Version: Author's final manuscript
ISBN
978-3-642-23701-0