Show simple item record

dc.contributor.authorGanesh, Vijay
dc.contributor.authorO'Donnell, Charles William
dc.contributor.authorSoos, Mate
dc.contributor.authorDevadas, Srinivas
dc.contributor.authorRinard, Martin C.
dc.contributor.authorSolar-Lezama, Armando
dc.date.accessioned2012-10-10T17:22:28Z
dc.date.available2012-10-10T17:22:28Z
dc.date.issued2012-06
dc.date.submitted2012-06
dc.identifier.isbn978-3-642-31611-1
dc.identifier.issn0302-9743
dc.identifier.issn1611-3349
dc.identifier.urihttp://hdl.handle.net/1721.1/73854
dc.description15th International Conference, Trento, Italy, June 17-20, 2012. Proceedingsen_US
dc.description.abstractThis paper introduces Lynx, an incremental programmatic SAT solver that allows non-expert users to introduce domain-specific code into modern conflict-driven clause-learning (CDCL) SAT solvers, thus enabling users to guide the behavior of the solver. The key idea of Lynx is a callback interface that enables non-expert users to specialize the SAT solver to a class of Boolean instances. The user writes specialized code for a class of Boolean formulas, which is periodically called by Lynx’s search routine in its inner loop through the callback interface. The user-provided code is allowed to examine partial solutions generated by the solver during its search, and to respond by adding CNF clauses back to the solver dynamically and incrementally. Thus, the user-provided code can specialize and influence the solver’s search in a highly targeted fashion. While the power of incremental SAT solvers has been amply demonstrated in the SAT literature and in the context of DPLL(T), it has not been previously made available as a programmatic API that is easy to use for non-expert users. Lynx’s callback interface is a simple yet very effective strategy that addresses this need. We demonstrate the benefits of Lynx through a case-study from computational biology, namely, the RNA secondary structure prediction problem. The constraints that make up this problem fall into two categories: structural constraints, which describe properties of the biological structure of the solution, and energetic constraints, which encode quantitative requirements that the solution must satisfy. We show that by introducing structural constraints on-demand through user provided code we can achieve, in comparison with standard SAT approaches, upto 30x reduction in memory usage and upto 100x reduction in time.en_US
dc.language.isoen_US
dc.publisherSpringer Berlin / Heidelbergen_US
dc.relation.isversionofhttp://dx.doi.org/10.1007/978-3-642-31612-8_12en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alike 3.0en_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/3.0/en_US
dc.sourceMIT web domainen_US
dc.titleLynx: A Programmatic SAT Solver for the RNA-folding Problemen_US
dc.typeArticleen_US
dc.identifier.citationGanesh, Vijay et al. “Lynx: A Programmatic SAT Solver for the RNA-Folding Problem.” Theory and Applications of Satisfiability Testing – SAT 2012. Ed. Alessandro Cimatti & Roberto Sebastiani. LNCS Vol. 7317. Berlin, Heidelberg: Springer Berlin Heidelberg, 2012. 143–156.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.contributor.mitauthorGanesh, Vijay
dc.contributor.mitauthorO'Donnell, Charles William
dc.contributor.mitauthorDevadas, Srinivas
dc.contributor.mitauthorRinard, Martin C.
dc.contributor.mitauthorSolar-Lezama, Armando
dc.relation.journalTheory and Applications of Satisfiability Testing – SAT 2012en_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
dspace.orderedauthorsGanesh, Vijay; O’Donnell, Charles W.; Soos, Mate; Devadas, Srinivas; Rinard, Martin C.; Solar-Lezama, Armandoen
dc.identifier.orcidhttps://orcid.org/0000-0001-8253-7714
dc.identifier.orcidhttps://orcid.org/0000-0001-7604-8252
dc.identifier.orcidhttps://orcid.org/0000-0001-8095-8523
dspace.mitauthor.errortrue
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