*Abstract:* A good model of a biological cell exposes secrets of the cell's signaling
mechanisms, explaining diseases and facilitating drug discovery. Modeling
cells is fundamentally a programming problem --- it's programming because
the model is a concurrent program that simulates the cell, and it's a
problem because it is hard to write a program that reproduces all
experimental observations of the cell faithfully.
In this talk, I will introduce solver-aided programming languages and show
how they ease modeling biology as well as make programming accessible to
non-programmers. Solver-aided languages come with constructs that delegate
part of the programming problem to a constraint solver, which can be guided
to synthesize parts of the program, localize its bugs, or act as a
I will describe our work on synthesis of stem cell models in c. elegans and
then show how our framework called Rosette can rapidly implement a solver
aided language in several domains, from programming by demonstration to
spatial parallel programming.
Ras is a professor of computer science at UC Berkeley. He works on various flavors of program synthesis, from programming by demonstration, to sketching, design of programmer-accessible oracles, and compilers for declarative languages.