Learning Semantic String Transformations from Examples

By Rishabh Singh, Sumit Gulwani. 2012

137 citations recorded by the source corpus.

We address the problem of performing semantic transformations on strings, which may represent a variety of data types (or their combination) such as a column in a relational table, time, date, currency, etc. Unlike syntactic transformations, which are based on regular expressions and which interpret a string as a sequence of characters, semantic transformations additionally require exploiting the semantics of the data type represented by the string, which may be encoded as a database of relational tables. Manually performing such transformations on a large collection of strings is error prone and cumbersome, while programmatic solutions are beyond the skill-set of end-users. We present a programming by example technology that allows end-users to automate such repetitive tasks. We describe an expressive transformation language for semantic manipulation that combines table lookup operations and syntactic manipulations. We then present a synthesis algorithm that can learn all transformations in the language that are consistent with the user-provided set of input-output examples. We have implemented this technology as an add-in for the Microsoft Excel Spreadsheet system and have evaluated it successfully over several benchmarks picked from various Excel help-forums.

Subfields: Computer Networks and Communications, Information Systems, Management Science and Operations Research, Code Generation & Program Synthesis

How researchers see this paper

The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.

In Computer Networks and Communications

  1. Rishabh Singh
  2. Sumit Gulwani
  3. Mark Marron
  4. Armando Solar-Lezama
  5. Işıl Dillig
  6. Oleksandr Polozov
  7. Michael J. Cafarella
  8. Zhongjun (Mark) Jin

In Information Systems

  1. Rishabh Singh
  2. Armando Solar-Lezama
  3. Josh Tenenbaum
  4. Kevin Ellis
  5. Oleksandr Polozov
  6. Sumit Gulwani
  7. Yuepeng Wang
  8. Michael J. Cafarella

In Management Science and Operations Research

  1. Sumit Gulwani
  2. Rishabh Singh
  3. Armando Solar-Lezama
  4. Mark Marron
  5. Oleksandr Polozov
  6. Hosagrahar Visvesvaraya Jagadish
  7. Zhongjun (Mark) Jin
  8. Michael R. Anderson

In Code Generation & Program Synthesis

  1. Armando Solar-Lezama
  2. Rishabh Singh
  3. Oleksandr Polozov
  4. Sumit Gulwani
  5. Josh Tenenbaum
  6. Kevin Ellis
  7. Michael J. Cafarella
  8. Hosagrahar Visvesvaraya Jagadish

Citations in the corpus