Productivity Tools for Solver-Aided Programming

dc.contributor.advisorTorlak, Emina
dc.contributor.authorPorncharoenwase, Sorawee
dc.date.accessioned2023-08-14T17:03:32Z
dc.date.available2023-08-14T17:03:32Z
dc.date.issued2023-08-14
dc.date.submitted2023
dc.descriptionThesis (Ph.D.)--University of Washington, 2023
dc.description.abstractSolver-aided programming has been employed for many automated reasoning tasks, such as program verification and program synthesis. Despite its success, making solver-aided programs is still difficult, time-consuming, and error-prone.Prior work developed productivity tools to help with these issues by relying on language abstraction. Yet, there is still a need for more productivity tools, due to the language's complex semantics, which is foreign to most programmers. This dissertation aims to show that recontextualization and extensibility are keys to developing productivity tools for solver-aided programming. Recontextualization makes solver-aided programming more familiar to programmers, and extensibility allows programmers to specify domain-specific knowledge to control the tools. These guiding principles are identified from existing productivity tools and our three new contributions to improve productivity in different stages of solver-aided programming. First, our work on formal foundation for symbolic evaluation presents a class of reusable symbolic evaluators that simplify programming to interact with solvers. Second, our work on profile-guided symbolic optimizer introduces a tool for scaling up solver-aided programs. Third, our work on expressive pretty printer provides a practical approach to interface solver-aided programs with end users. Our contributions along with existing tools support the thesis, giving an insight into the design of future productivity tools for solver-aided programming.
dc.embargo.termsOpen Access
dc.format.mimetypeapplication/pdf
dc.identifier.otherPorncharoenwase_washington_0250E_25794.pdf
dc.identifier.urihttp://hdl.handle.net/1773/50297
dc.language.isoen_US
dc.rightsCC BY-SA
dc.subjectsolver-aided programming
dc.subjectComputer science
dc.subject.otherComputer science and engineering
dc.titleProductivity Tools for Solver-Aided Programming
dc.typeThesis

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Porncharoenwase_washington_0250E_25794.pdf
Size:
1.17 MB
Format:
Adobe Portable Document Format