Analyzing and Synthesizing Genomic Logic Functions

Deciphering the developmental program of an embryo is a fundamental question in biology. Landmark papers [9,10] have recently shown how computational models of gene regulatory networks provide system-level causal understanding of the developmental processes of the sea urchin, and enable powerful predictive capabilities. A crucial aspect of the work is empirically deriving plausible models that explain all the known experimental data, a task that becomes infeasible in practice due to the inherent complexity of the biological systems. We present a generic Satisfiability Modulo Theories based approach to analyze and synthesize data constrained models. We apply our approach to the sea urchin embryo, and successfully improve the state-of-the-art by synthesizing, for the first time, models that explain all the experimental observations in [10]. A strength of the proposed approach is the combination of accurate synthesis procedures for deriving biologically plausible models with the ability to prove inconsistency results, showing that for a given set of experiments and possible class of models no solution exists, and thus enabling practical refutation of biological models.

[1]  Ezio Bartocci,et al.  A Temporal Logic Approach to Modular Design of Synthetic Biological Circuits , 2013, CMSB.

[2]  Swarat Chaudhuri,et al.  Bridging boolean and quantitative synthesis using smoothed proof search , 2014, POPL.

[3]  Sumit Gulwani,et al.  From program verification to program synthesis , 2010, POPL '10.

[4]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[5]  Isabelle S. Peter,et al.  Predictive computation of genomic logic processing functions in embryonic development , 2012, Proceedings of the National Academy of Sciences.

[6]  Calin Belta,et al.  Robustness analysis and tuning of synthetic gene networks , 2007, Bioinform..

[7]  Amir Pnueli,et al.  "Don't Care" Modeling: A Logical Framework for Developing Predictive System Models , 2007, TACAS.

[8]  Hillel Kugler,et al.  Synthesizing Biological Theories , 2011, CAV.

[9]  Armando Solar-Lezama,et al.  Programming by sketching for bit-streaming programs , 2005, PLDI '05.

[10]  Rastislav Bodík,et al.  Synthesis of biological models from mutation experiments , 2013, POPL.

[11]  Philippe Schnoebelen,et al.  Temporal logic with forgettable past , 2002, Proceedings 17th Annual IEEE Symposium on Logic in Computer Science.

[12]  Ian Stark,et al.  The Continuous pi-Calculus: A Process Algebra for Biochemical Modelling , 2008, CMSB.

[13]  Hillel Kugler,et al.  Compositional Synthesis of Reactive Systems from Live Sequence Chart Specifications , 2009, TACAS.

[14]  Hillel Kugler,et al.  Symbolic Approximation of the Bounded Reachability Probability in Large Markov Chains , 2014, QEST.

[15]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[16]  Hillel Kugler,et al.  SMT-Based Analysis of Biological Computation , 2013, NASA Formal Methods.

[17]  Hillel Kugler,et al.  Z34Bio: An SMT-based Framework for Analyzing Biological Computation , 2013 .

[18]  Eric H. Davidson,et al.  A gene regulatory network controlling the embryonic specification of endoderm , 2011, Nature.