dc.contributor.author | Solar Lezama, Armando | |
dc.date.accessioned | 2017-01-05T15:44:02Z | |
dc.date.available | 2017-01-05T15:44:02Z | |
dc.date.issued | 2012-08 | |
dc.identifier.issn | 1433-2779 | |
dc.identifier.issn | 1433-2787 | |
dc.identifier.uri | http://hdl.handle.net/1721.1/106200 | |
dc.description.abstract | Sketching is a synthesis methodology that aims to bridge the gap between a programmer’s high-level insights about a problem and the computer’s ability to manage low-level details. In sketching, the programmer uses a partial program, a sketch, to describe the desired implementation strategy, and leaves the low-level details of the implementation to an automated synthesis procedure. In order to generate an implementation from the programmer provided sketch, the synthesizer uses counterexample-guided inductive synthesis (CEGIS). Inductive synthesis refers to the process of generating candidate implementations from concrete examples of correct or incorrect behavior. CEGIS combines a SAT-based inductive synthesizer with an automated validation procedure, a bounded model-checker, that checks whether the candidate implementation produced by inductive synthesis is indeed correct and to produce new counterexamples. The result is a synthesis procedure that is able to handle complex problems from a variety of domains including ciphers, scientific programs, and even concurrent data-structures. | en_US |
dc.publisher | Springer Berlin Heidelberg | en_US |
dc.relation.isversionof | http://dx.doi.org/10.1007/s10009-012-0249-7 | en_US |
dc.rights | Creative Commons Attribution-Noncommercial-Share Alike | en_US |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-sa/4.0/ | en_US |
dc.source | Springer Berlin Heidelberg | en_US |
dc.title | Program sketching | en_US |
dc.type | Article | en_US |
dc.identifier.citation | Solar-Lezama, Armando. “Program Sketching.” International Journal on Software Tools for Technology Transfer 15.5–6 (2013): 475–495. | en_US |
dc.contributor.department | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science | en_US |
dc.contributor.mitauthor | Solar Lezama, Armando | |
dc.relation.journal | International Journal on Software Tools for Technology Transfer | en_US |
dc.eprint.version | Author's final manuscript | en_US |
dc.type.uri | http://purl.org/eprint/type/JournalArticle | en_US |
eprint.status | http://purl.org/eprint/status/PeerReviewed | en_US |
dc.date.updated | 2016-08-18T15:28:46Z | |
dc.language.rfc3066 | en | |
dc.rights.holder | Springer-Verlag | |
dspace.orderedauthors | Solar-Lezama, Armando | en_US |
dspace.embargo.terms | N | en |
dc.identifier.orcid | https://orcid.org/0000-0001-7604-8252 | |
mit.license | OPEN_ACCESS_POLICY | en_US |