Show simple item record

dc.contributor.authorChowdhury, Rezaul
dc.contributor.authorItzhaky, Shachar
dc.contributor.authorSingh, Rohit
dc.contributor.authorSolar Lezama, Armando
dc.contributor.authorYessenov, Kuat T
dc.contributor.authorLu, Yongquan
dc.contributor.authorLeiserson, Charles E
dc.date.accessioned2017-12-01T22:41:24Z
dc.date.available2017-12-01T22:41:24Z
dc.date.issued2016-11
dc.identifier.isbn9781450344449
dc.identifier.urihttp://hdl.handle.net/1721.1/112349
dc.description.abstractWe introduce a framework allowing domain experts to manipulate computational terms in the interest of deriving better, more efficient implementations.It employs deductive reasoning to generate provably correct efficient implementations from a very high-level specification of an algorithm, and inductive constraint-based synthesis to improve automation. Semantic information is encoded into program terms through the use of refinement types. In this paper, we develop the technique in the context of a system called Bellmania that uses solver-aided tactics to derive parallel divide-and-conquer implementations of dynamic programming algorithms that have better locality and are significantly more efficient than traditional loop-based implementations. Bellmania includes a high-level language for specifying dynamic programming algorithms and a calculus that facilitates gradual transformation of these specifications into efficient implementations. These transformations formalize the divide-and conquer technique; a visualization interface helps users to interactively guide the process, while an SMT-based back-end verifies each step and takes care of low-level reasoning required for parallelism. We have used the system to generate provably correct implementations of several algorithms, including some important algorithms from computational biology, and show that the performance is comparable to that of the best manually optimized code.en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (CCF-1139056)en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (CCF- 1439084)en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (CNS-1553510)en_US
dc.language.isoen_US
dc.publisherAssociation for Computing Machinery (ACM)en_US
dc.relation.isversionofhttp://dx.doi.org/10.1145/2983990.2983993en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alikeen_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/4.0/en_US
dc.sourceMIT Web Domainen_US
dc.titleDeriving divide-and-conquer dynamic programming algorithms using solver-aided transformationsen_US
dc.typeArticleen_US
dc.identifier.citationItzhaky, Shachar, Rohit Singh, Armando Solar-Lezama, Kuat Yessenov, Yongquan Lu, Charles Leiserson, and Rezaul Chowdhury. “Deriving Divide-and-Conquer Dynamic Programming Algorithms Using Solver-Aided Transformations.” Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications - OOPSLA 2016 (2016).en_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratoryen_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Mathematicsen_US
dc.contributor.mitauthorItzhaky, Shachar
dc.contributor.mitauthorSingh, Rohit
dc.contributor.mitauthorSolar Lezama, Armando
dc.contributor.mitauthorYessenov, Kuat T
dc.contributor.mitauthorLu, Yongquan
dc.contributor.mitauthorLeiserson, Charles E
dc.relation.journalProceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications - OOPSLA 2016en_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
eprint.statushttp://purl.org/eprint/status/NonPeerRevieweden_US
dspace.orderedauthorsItzhaky, Shachar; Singh, Rohit; Solar-Lezama, Armando; Yessenov, Kuat; Lu, Yongquan; Leiserson, Charles; Chowdhury, Rezaulen_US
dspace.embargo.termsNen_US
dc.identifier.orcidhttps://orcid.org/0000-0002-3306-5084
dc.identifier.orcidhttps://orcid.org/0000-0002-8927-3018
dc.identifier.orcidhttps://orcid.org/0000-0001-7604-8252
dc.identifier.orcidhttps://orcid.org/0000-0001-5959-5254
mit.licenseOPEN_ACCESS_POLICYen_US
mit.metadata.statusComplete


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record