7 citations · 13 across the 9 of their papers we have counts for
10 papers
StaticFixer: From Static Analysis to Static Repair
Naman Jain, Shubham Gandhi, Atharv Sonwane +5
Static analysis tools are traditionally used to detect and flag programs that violate properties. We show that static analysis tools can also be used to perturb programs that satis…
Jigsaw: Large Language Models meet Program Synthesis
Naman Jain, Skanda Vaidyanath, Arun Iyer +4
Large pre-trained language models such as GPT-3, Codex, and Google's language model are now capable of generating code from natural language specifications of programmer intent. We…
MAFIA: Machine Learning Acceleration on FPGAs for IoT Applications
Nikhil Pratap Ghanathe, Vivek Seshadri, Rahul Sharma +2
Recent breakthroughs in ML have produced new classes of models that allow ML inference to run directly on milliwatt-powered IoT devices. On one hand, existing ML-to-FPGA compilers…
On Scaling Data-Driven Loop Invariant Inference
Sahil Bhatia, Saswat Padhi, Nagarajan Natarajan +2
Automated synthesis of inductive invariants is an important problem in software verification. Once all the invariants have been specified, software verification reduces to checking…
Overfitting in Synthesis: Theory and Practice (Extended Version)
Saswat Padhi, Todd Millstein, Aditya Nori +1
In syntax-guided synthesis (SyGuS), a synthesizer's goal is to automatically generate a program belonging to a grammar of possible implementations that meets a logical specificatio…
Eventually Sound Points-To Analysis with Missing Code
Osbert Bastani, Lazaro Clapp, Saswat Anand +2
Static analyses make the increasingly tenuous assumption that all source code is available for analysis; for example, large libraries often call into native code that cannot be ana…
Active Learning of Points-To Specifications
Osbert Bastani, Rahul Sharma, Alex Aiken +1
When analyzing programs, large libraries pose significant challenges to static points-to analysis. A popular solution is to have a human analyst provide points-to specifications th…
LoopInvGen: A Loop Invariant Generator based on Precondition Inference
Saswat Padhi, Rahul Sharma, Todd Millstein
We describe the LoopInvGen tool for generating loop invariants that can provably guarantee correctness of a program with respect to a given specification. LoopInvGen is an efficien…
Synthesizing Program Input Grammars
Osbert Bastani, Rahul Sharma, Alex Aiken +1
We present an algorithm for synthesizing a context-free grammar encoding the language of valid program inputs from a set of input examples and blackbox access to the program. Our a…
Stochastic Superoptimization
Eric Schkufza, Rahul Sharma, Alex Aiken
We formulate the loop-free, binary superoptimization task as a stochastic search problem. The competing constraints of transformation correctness and performance improvement are en…