SEMS 16 Keynote

Sumit Gulwani of Microsoft will be the keynote speaker for SEMS’16.

Title: Spreadsheet Programming Using Examples

Slides: sems16_keynote_pptx | sems16_keynote_PDF


99% of spreadsheet users do not know programming, and struggle with repetitive data wrangling tasks such as extracting tabular data from text files, string transformations, and table re-formatting. Programming by Examples (PBE) can revolutionize this landscape by enabling users to synthesize intended programs from example-based specifications.

A key technical challenge in PBE is to search for programs that are consistent with the examples provided by the user. Our efficient search methodology is based on two key ideas: (i) Restriction of the search space to an appropriate domain-specific language that offers balanced expressivity and readability (ii) A divide-and-conquer based deductive search paradigm that inductively reduces the problem of synthesizing a program of a certain kind that satisfies a given specification into sub-problems that refer to sub-programs or sub-specifications.

Another challenge in PBE is to resolve the ambiguity in the example based specification. We will discuss two complementary approaches: (a) machine learning based ranking techniques that can pick an intended program from among those that satisfy the specification, and (b) active-learning based user interaction models.

The above concepts will be illustrated using various PBE technologies including FlashFill, FlashExtract, and FlashRelate. These technologies have been released inside various Microsoft products including Excel. The Microsoft PROSE SDK allows easy construction of such technologies.


Sumit Gulwani is a Research manager and a Principal researcher at Microsoft, and an affiliate faculty in the Computer Science Department at University of Washington (USA). He has expertise in formal methods and automated program analysis and synthesis techniques. His recent research interests lie in the cross-disciplinary areas of automating end-user programming, and building intelligent tutoring systems (for various subject domains including programming, math, logic, and automata). His programming-by-example work led to the Flash Fill feature of Microsoft Excel 2013 that is used by hundreds of millions of people. He was awarded the ACM SIGPLAN Robin Milner Young Researcher Award in 2014. He obtained his PhD in Computer Science from UC-Berkeley in 2005, and was awarded the ACM SIGPLAN Outstanding Doctoral Dissertation Award. He obtained his BTech in Computer Science and Engineering from IIT Kanpur (India) in 2000, and was awarded the President’s Gold Medal.