Component-based synthesis of table consolidation and transformation tasks from examples

47Citations
Citations of this article
57Readers
Mendeley users who have this article in their library.
Get full text

Abstract

This paper presents a novel component-based synthesis algorithm that marries the power of type-directed search with lightweight SMT-based deduction and partial evaluation. Given a set of components together with their over-approximate first-order specifications, our method first generates a program sketch over a subset of the components and checks its feasibility using an SMT solver. Since a program sketch typically represents many concrete programs, the use of SMT-based deduction greatly increases the scalability of the algorithm. Once a feasible program sketch is found, our algorithm completes the sketch in a bottom-up fashion, using partial evaluation to further increase the power of deduction for rejecting partially-filled program sketches. We apply the proposed synthesis methodology for automating a large class of data preparation tasks that commonly arise in data science. We have evaluated our synthesis algorithm on dozens of data wrangling and consolidation tasks obtained from on-line forums, and we show that our approach can automatically solve a large class of problems encountered by R users.

Cite

CITATION STYLE

APA

Feng, Y., Martins, R., Van Geffen, J., Dillig, I., & Chaudhuri, S. (2017). Component-based synthesis of table consolidation and transformation tasks from examples. ACM SIGPLAN Notices, 52(6), 422–436. https://doi.org/10.1145/3062341.3062351

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free