Roopsha Samanta

Verifies, repairs, and synthesizes code @ Purdue University

Roopsha Samanta is an Assistant Professor the Department of Computer Science at Purdue University. She leads the Purdue Formal Methods (PurForM) group and is a member of the Purdue Programming Languages (PurPL) group. Before joining Purdue in 2016, she completed her PhD at UT Austin in 2013, advised by E. Allen Emerson and Vijay K. Garg, and was a postdoctoral researcher at IST Austria from 2014-2016 with Thomas A. Henzinger. She is a recipient of the 2019 NSF CAREER award.

Her research interests are in program verification, program synthesis, and concurrency. She likes to work at the intersection of formal methods and programming languages to develop frameworks to assist programmers write reliable programs. Her current research agenda is centered around two themes—formal reasoning about distributed systems and semantics-driven inductive program synthesis and repair.

Past Activities

Roopsha Samanta
Code Mesh V
06 Nov 2020
19.45 - 20.25

MANTIS: Semantics-driven Inductive Program Synthesis

The dream of classical program synthesis is to generate programs from complete, formal specifications of their expected behavior. An increasingly favored paradigm of synthesis is inductive program synthesis, where specifications of program behavior are provided in the form of examples. Inductive program synthesis not only helps make program synthesis more tractable, but also has the potential to democratize programming!

Unfortunately, inductive synthesis engines encounter challenges like overfitting, ambiguity, and brittleness, similar to other inductive reasoning engines such as AI-based systems. PL researchers have typically attacked these problems by applying syntactic biases to the search space in the form of tailored DSLs, grammars and ranking functions. In this talk, I will show how one can further enhance the generalizability and robustness of such synthesis engines by applying semantic biases to the search space.

1. Augmented Example-based Synthesis using Relational Perturbation Properties.
S. An, R. Singh, S. Misailovic and R. Samanta. POPL 2020.
2. SemCluster: Clustering of Imperative Programming Assignments Based on Quantitative Semantic Features.
D. M. Perry, D. Kim, R. Samanta and X. Zhang. PLDI 2019.
3. Qlose: Program Repair with Quantitative Objectives.
L. D'Antoni, R. Samanta and R. Singh. CAV 2016.