2016
DOI: 10.1145/2980983.2908088
|View full text |Cite
|
Sign up to set email alerts
|

Synthesizing transformations on hierarchically structured data

Abstract: This paper presents a new approach for synthesizing transformations on tree-structured data, such as Unix directories and XML documents. We consider a general abstraction for such data, called hierarchical data trees (HDTs) and present a novel example-driven synthesis algorithm for HDT transformations. Our central insight is to reduce the problem of synthesizing tree transformers to the synthesis of list transformations that are applied to the paths of the tree. The synthesis problem over lists is solved using… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
8
0

Year Published

2017
2017
2022
2022

Publication Types

Select...
3
2
1

Relationship

1
5

Authors

Journals

citations
Cited by 12 publications
(8 citation statements)
references
References 30 publications
0
8
0
Order By: Relevance
“…In recent years there has been significant interest in learning programs from input-output examples. These techniques have been successfully used to synthesize programs for domains such as string and format transformations [10,18], data wrangling [7], data completion [20], and data structure manipulation [8,12,21]. Even though these efforts have been largely successful, they do not aspire to work with noisy data sets that may contain corrupted input-output examples.…”
Section: Introductionmentioning
confidence: 99%
“…In recent years there has been significant interest in learning programs from input-output examples. These techniques have been successfully used to synthesize programs for domains such as string and format transformations [10,18], data wrangling [7], data completion [20], and data structure manipulation [8,12,21]. Even though these efforts have been largely successful, they do not aspire to work with noisy data sets that may contain corrupted input-output examples.…”
Section: Introductionmentioning
confidence: 99%
“…As we mentioned earlier, most PBE synthesizers [5,13,16,30,31,33] perform program enumeration until they find a program that satisfies the input-output examples provided by the user. In order to perform program enumeration, we first need to represent the set of all possible programs up to a given depth.…”
Section: Maximal Specification Synthesismentioning
confidence: 99%
“…Our technique is related to a line of work on programming-by-example (PBE) [5,13,16,30,31,33]. PBE has been widely applied to different domains such as string manipulation [5,16], data wrangling [13,31], and SQL queries [30,33]. Among these techniques, the Morpheus tool is directly related to the data wrangling client to which Mars is instantiated.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations