Work
- Consequent AI: Reasoning intelligence for better program synthesis
- Warpdrive by Synthetic Minds (YC S’18): Build automations from screen recordings
- 20n (YC W’15): Designing new genetically engineered organisms.
- PhD: Software that writes code.
New
-
Our POPL 2010 paper was awarded the most influential paper award for the 10 years prior at POPL’20.
-
Synthetic Minds organized the first ever conference on the State-of-the-art in Program Synthesis.
Background
-
Founder Synthetic Minds (2018-)
We went through YC S’18 and are currently in stealth. Contact info@ or jobs@ to reach us.
-
Founder/CEO, 20n (2014-17): Backed by DARPA, Y Combinator and Khosla Ventures.
We engineered a yeast to eat sugar and make acetaminophen (Tylenol). Acetaminophen comes from petroleum. This was the first organism on the planet to make it sustainably. We open-sourced 20n/act, a platform for predicting synthetic biology DNA edits. We built 40+ next-generation organisms for DARPA, and two Fortune 500 companies.
-
Postdoc, UC Berkeley (2010-14): Program synthesis and synthetic biology.
We showed that software can predict useful genetic engineering. Specifically for industrial biotech, it can predict all viable constructs worth engineering given current knowledge of biology. Exhaustively enumerating this space leads to between 10,000-20,000 products, with millions of total DNA designs.
-
PhD, University of Maryland, College Park (2006-10): Program synthesis.
We showed that if you can verify (i.e., algorithmically read) a program then you can synthesize (i.e., algorithmically write) it as well. PhD thesis: Chapter 4. Worked for small programs. Could produce provably correct programs where you could write down their required specification precisely.
Press
- Y Combinator: Hard Tech Startups (Sep’16)
- Military Aerospace: DARPA works with six organizations on biological materials for military applications (Oct’15)
- Techcrunch: The Top 10 Startups Of Y Combinator Winter ’15 Demo Day 2 (Mar’15)
- Motherboard: Software is designing useful microbes that don’t exist in nature (Mar’15)
- 20n, A YC Synthetic Biology Startup, Uses Software To Engineer Microbes For Chemical-Making (Feb’15)
Patents
-
Program analysis as constraint solving
Granted, US8402439 B2, Mar 19, 2013, USPTO -
Template based approach to discovering disjunctive and quantified invariants over predicate abstraction
Granted, US8271404 B2, Sep 18, 2012, USPTO -
Method for Biosynthesis of Acetaminophen
Pending, US 20170260555 A1, Sep 14, 2017, USPTO -
Biosynthetic production of Carnosine and Beta-Alanine
Pending, US 20170211105 A1, Jul 27, 2017, USPTO -
Biosynthetic production of acetaminophen, p-aminophenol, and p-aminobenzoic acid
Pending, US 20170211104 A1, Jul 27, 2017, USPTO -
Biosynthetic production of choline, ethanolamine, phosphoethanolamine, and phosphocholine
Pending, US 20170211103 A1, Jul 27, 2017, USPTO
Publications
-
Satisfiability-based Program Reasoning and Program Synthesis [ pdf ]
PhD dissertation, May 2010, University of Maryland, College Park -
Synthesis of Biological Models from Mutation Experiments [ acm | pdf ]
Ali Sinan Köksal, Yewen Pu, Saurabh Srivastava, Rastislav Bodík, Jasmin Fisher, Nir Piterman
40th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL’13) -
Template-based Program Verification and Program Synthesis [ springer | pdf ]
Saurabh Srivastava and Sumit Gulwani and Jeffrey S. Foster
Journal on Software Tools for Technology Transfer 2012 (STTT’12) -
Synthesis of first-order dynamic programming algorithms [ acm | pdf ]
Yewen Pu, Rastislav Bodik, Saurabh Srivastava
Object Oriented Programming, Systems, Languages, and Applications 2011 (OOPSLA’11) -
Parallel Programming with Inductive Synthesis [ acm | pdf ]
Shaon Barman, Rastislav Bodik, Sagar Jain, Yewen Pu, Saurabh Srivastava, Nicholas Tung
Hot Topics in Parallel Computing 2011 (HotPar’11) -
Path-based Inductive Synthesis for Program Inversion [ acm | pdf ]
Saurabh Srivastava and Sumit Gulwani and Swarat Chaudhuri and Jeffrey S. Foster
Programming Languages Design and Implementation 2011 (PLDI’11) -
From Program Verification to Program Synthesis [ acm | pdf ]
Saurabh Srivastava and Sumit Gulwani and Jeffrey S. Foster
Principles of Programming Languages 2010 (POPL’10) -
VS3: SMT Solvers for Program Verification [ pdf ]
Saurabh Srivastava and Sumit Gulwani and Jeffrey S. Foster
Computer Aided Verification 2009 (CAV’09: Tools Paper) -
Program Verification using Templates over Predicate Abstraction [ acm | pdf ]
Saurabh Srivastava and Sumit Gulwani
Programming Languages Design and Implementation 2009 (PLDI’09) -
Constraint-based Invariant Inference over Predicate Abstraction [ acm | pdf ]
Sumit Gulwani and Saurabh Srivastava and Ramarathnam Venkatesan
Verification Model Checking and Abstract Interpretation 2009 (VMCAI’09) -
Program Analysis as Constraint Solving [ acm | pdf ]
Sumit Gulwani and Saurabh Srivastava and Ramarathnam Venkatesan
Programming Languages Design and Implementation 2008 (PLDI’08) -
Modular Information Hiding and Type Safe Linking for C [ acm | pdf ]
Saurabh Srivastava and Mike Hicks and Jeffrey S. Foster and Patrick Jenkins
IEEE Transactions on Software Engineering 2008 (TSE’08) -
Modular Information Hiding and Type Safe Linking for C [ acm | pdf ]
Saurabh Srivastava and Mike Hicks and Jeffrey S. Foster
Types in Language Design and Implementation 2007 (TLDI’07) -
Distributed Algorithms for Finding and Maintaining a k-Tree Core in a Dynamic Network [ acm | pdf ]
Saurabh Srivastava and R. K. Ghosh
Information Processing Letters 2003 (IPL’03) -
A Code Allocation Protocol for Maximizing Throughput in CDMA based Ad-hoc Networks
Saurabh Srivastava and S. Tripathi and A. K. Chaturvedi and D. Sanghi
IEEE Wireless Communications and Networking Conference 2003 (WCNC’03) -
Cluster based Routing using a k-Tree Core Backbone for Mobile Ad-hoc Networks
Saurabh Srivastava and R. K. Ghosh
6th International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communications 2002 (DialM’02) -
Approximating the Range Sum of a Graph on a CREW PRAM
Saurabh Srivastava and P. Gupta
4th Intl. Workshop on Distributed Computing 2002 (IWDC’02) -
Performance Evaluation of Combining Techniques for a Multicarrier CDMA System
S. Tripathi and Saurabh Srivastava and A. K. Chaturvedi and D. Sanghi
8th National Conference on Communications 2002 (NCC’02)
Source code
- Platform for computational synthetic biology: 20n/act
- Program synthesis over linear arithmetic: sources
- Program synthesis using symbolic traces: sources, binaries, inverse mining, archived page