Syntax-Guided Optimal Synthesis for Chemical Reaction Networks

  • Luca Cardelli
  • Milan Češka
  • Martin Fränzle
  • Marta Kwiatkowska
  • Luca Laurenti
  • Nicola Paoletti
  • Max WhitbyEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10427)


We study the problem of optimal syntax-guided synthesis of stochastic Chemical Reaction Networks (CRNs) that plays a fundamental role in design automation of molecular devices and in the construction of predictive biochemical models. We propose a sketching language for CRNs that concisely captures syntactic constraints on the network topology and allows its under-specification. Given a sketch, a correctness specification, and a cost function defined over the CRN syntax, our goal is to find a CRN that simultaneously meets the constraints, satisfies the specification and minimizes the cost function. To ensure computational feasibility of the synthesis process, we employ the Linear Noise Approximation allowing us to encode the synthesis problem as a satisfiability modulo theories problem over a set of parametric Ordinary Differential Equations (ODEs). We design and implement a novel algorithm for the optimal synthesis of CRNs that employs almost complete refutation procedure for SMT over reals and ODEs, and exploits a meta-sketching abstraction controlling the search strategy. Through relevant case studies we demonstrate that our approach significantly improves the capability of existing methods for synthesis of biochemical systems and paves the way towards their automated and provably-correct design.


  1. 1.
    Alur, R., et al.: Syntax-guided synthesis. Dependable Softw. Syst. Eng. 40, 1–25 (2015)Google Scholar
  2. 2.
    Andreychenko, A., Mikeev, L., Spieler, D., Wolf, V.: Parameter identification for Markov models of biochemical reactions. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 83–98. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-22110-1_8 CrossRefGoogle Scholar
  3. 3.
    Angluin, D., Aspnes, J., Eisenstat, D.: Fast computation by population protocols with a leader. Distrib. Comput. 21(3), 183–199 (2008)CrossRefzbMATHGoogle Scholar
  4. 4.
    Angluin, D., Aspnes, J., Eisenstat, D., Ruppert, E.: The computational power of population protocols. Distrib. Comput. 20(4), 279–304 (2007)CrossRefzbMATHGoogle Scholar
  5. 5.
    Arkin, A., Ross, J., McAdams, H.H.: Stochastic kinetic analysis of developmental pathway bifurcation in phage \(\lambda \)-infected Escherichia coli cells. Genetics 149(4), 1633–1648 (1998)Google Scholar
  6. 6.
    Barnat, J., et al.: On parameter synthesis by parallel model checking. IEEE/ACM Trans. Comput. Biol. Bioinf. 9(3), 693–705 (2012)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Benhamou, F., Goualard, F., Granvilliers, L., Puget, J.F.: Revising hull and box consistency. In: ICLP 1999. MIT Press, pp. 230–244 (1999)Google Scholar
  8. 8.
    Bornholt, J., Torlak, E., Grossman, D., Ceze, L.: Optimizing synthesis with metasketches. In: POPL 2016. ACM, pp. 775–788 (2016)Google Scholar
  9. 9.
    Bortolussi, L., Cardelli, L., Kwiatkowska, M., Laurenti, L.: Approximation of probabilistic reachability for chemical reaction networks using the linear noise approximation. In: Agha, G., Houdt, B. (eds.) QEST 2016. LNCS, vol. 9826, pp. 72–88. Springer, Cham (2016). doi: 10.1007/978-3-319-43425-4_5 CrossRefGoogle Scholar
  10. 10.
    Bortolussi, L., Milios, D., Sanguinetti, G.: Smoothed model checking for uncertain Continuous-Time Markov Chains. Inf. Comput. 247, 235–253 (2016)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Calinescu, R.C., Češka, M., Gerasimou, S., Kwiatkowska, M., Paoletti, N.: Designing robust software systems through parametric markov chain synthesis. In: IEEE International Conference on Software Architecture (ICSA 2017). IEEE (2017)Google Scholar
  12. 12.
    Cardelli, L.: Artificial biochemistry. In: Condon, A., Harel, D., Kok, J.N., Salomaa, A., Winfree, E. (eds.) Algorithmic Bioprocesses, pp. 429–462. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  13. 13.
    Cardelli, L.: Morphisms of reaction networks that couple structure to function. BMC Syst. Biol. 8(1), 84 (2014)CrossRefGoogle Scholar
  14. 14.
    Cardelli, L.: Two-domain DNA strand displacement. Math. Struct. Comput. Sci. 23(02), 247–271 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Cardelli, L., Kwiatkowska, M., Laurenti, L.: Programming discrete distributions with chemical reaction networks. In: Rondelez, Y., Woods, D. (eds.) DNA 2016. LNCS, vol. 9818, pp. 35–51. Springer, Cham (2016). doi: 10.1007/978-3-319-43994-5_3 CrossRefGoogle Scholar
  16. 16.
    Cardelli, L., Kwiatkowska, M., Laurenti, L.: Stochastic analysis of chemical reaction networks using linear noise approximation. Biosystems 149, 26–33 (2016)CrossRefzbMATHGoogle Scholar
  17. 17.
    Cardelli, L., Kwiatkowska, M., Whitby, M.: Chemical reaction network designs for asynchronous logic circuits. In: Rondelez, Y., Woods, D. (eds.) DNA 2016. LNCS, vol. 9818, pp. 67–81. Springer, Cham (2016). doi: 10.1007/978-3-319-43994-5_5 CrossRefGoogle Scholar
  18. 18.
    Cardelli, L., Tribastone, M., Tschaikowski, M., Vandin, A.: Comparing chemical reaction networks: a categorical and algorithmic perspective. In: LICS 2016, pp. 485–494. ACM (2016)Google Scholar
  19. 19.
    Cardelli, L., Tribastone, M., Tschaikowski, M., Vandin, A.: Symbolic computation of differential equivalences. ACM SIGPLAN Notices 51(1), 137–150 (2016). (ACM)CrossRefzbMATHGoogle Scholar
  20. 20.
    Češka, M., Dannenberg, F., Paoletti, N., Kwiatkowska, M., Brim, L.: Precise parameter synthesis for stochastic biochemical systems. Acta Inf. 1–35 (2016)Google Scholar
  21. 21.
    Chen, H.-L., Doty, D., Soloveichik, D.: Rate-independent computation in continuous chemical reaction networks. In: ITCS 2014, pp. 313–326. ACM (2014)Google Scholar
  22. 22.
    Csikász-Nagy, A., Cardelli, L., Soyer, O.S.: Response dynamics of phosphorelays suggest their potential utility in cell signalling. J. R. Soc. Interface 8(57), 480–488 (2011)CrossRefGoogle Scholar
  23. 23.
    Dalchau, N., Murphy, N., Petersen, R., Yordanov, B.: Synthesizing and tuning chemical reaction networks with specified behaviours. In: Phillips, A., Yin, P. (eds.) DNA 2015. LNCS, vol. 9211, pp. 16–33. Springer, Cham (2015). doi: 10.1007/978-3-319-21999-8_2 CrossRefGoogle Scholar
  24. 24.
    Dunn, S.-J., Martello, G., Yordanov, B., Emmott, S., Smith, A.: Defining an essential transcription factor program for naive pluripotency. Science 344(6188), 1156–1160 (2014)CrossRefGoogle Scholar
  25. 25.
    Eggers, A., Fränzle, M., Herde, C.: SAT modulo ODE: a direct SAT approach to hybrid systems. In: Cha, S.S., Choi, J.-Y., Kim, M., Lee, I., Viswanathan, M. (eds.) ATVA 2008. LNCS, vol. 5311, pp. 171–185. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-88387-6_14 CrossRefGoogle Scholar
  26. 26.
    Eggers, A., Ramdani, N., Nedialkov, N.S., Fränzle, M.: Improving the SAT modulo ODE approach to hybrid systems analysis by combining different enclosure methods. Softw. Syst. Model. 14(1), 121–148 (2015)CrossRefzbMATHGoogle Scholar
  27. 27.
    Eldar, A., Elowitz, M.B.: Functional roles for noise in genetic circuits. Nature 467(7312), 167–173 (2010)CrossRefGoogle Scholar
  28. 28.
    Ethier, S.N., Kurtz, T.G.: Markov Processes: Characterization and Convergence, vol. 282. Wiley, Hoboken (2009)zbMATHGoogle Scholar
  29. 29.
    Gao, S., Avigad, J., Clarke, E.M.: \(\delta \)-complete decision procedures for satisfiability over the reals. In: Gramlich, B., Miller, D., Sattler, U. (eds.) IJCAR 2012. LNCS, vol. 7364, pp. 286–300. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-31365-3_23 CrossRefGoogle Scholar
  30. 30.
    Gao, S., Kong, S., Clarke, E.M.: dReal: an SMT solver for nonlinear theories over the reals. In: Bonacina, M.P. (ed.) CADE 2013. LNCS (LNAI), vol. 7898, pp. 208–214. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-38574-2_14 CrossRefGoogle Scholar
  31. 31.
    Gerasimou, S., Tamburrelli, G., Calinescu, R.: Search-based synthesis of probabilistic models for quality-of-service software engineering. In: ASE 2015, pp. 319–330 (2015)Google Scholar
  32. 32.
    Giacobbe, M., Guet, C.C., Gupta, A., Henzinger, T.A., Paixão, T., Petrov, T.: Model checking gene regulatory networks. In: Baier, C., Tinelli, C. (eds.) TACAS 2015. LNCS, vol. 9035, pp. 469–483. Springer, Heidelberg (2015). doi: 10.1007/978-3-662-46681-0_47 Google Scholar
  33. 33.
    Hardy, M.: Combinatorics of partial derivatives. Electron. J. Combin. 13(1), 13 (2006)MathSciNetzbMATHGoogle Scholar
  34. 34.
    Heath, J., Kwiatkowska, M., Norman, G., Parker, D., Tymchyshyn, O.: Probabilistic model checking of complex biological pathways. Theoret. Comput. Sci. 391(3), 239–257 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  35. 35.
    Hoops, S., et al.: COPASI - a complex pathway simulator. Bioinformatics 22(24), 3067–3074 (2006)CrossRefGoogle Scholar
  36. 36.
    Karp, R.M., Miller, R.E.: Parallel program schemata. J. Comput. Syst. Sci. 3(2), 147–195 (1969)MathSciNetCrossRefzbMATHGoogle Scholar
  37. 37.
    Koksal, A.S., Pu, Y., Srivastava, S., Bodik, R., Fisher, J., Piterman, N.: Synthesis of Biological Models from Mutation Experiments. In: POPL 2013, pp. 469–482. ACM (2013)Google Scholar
  38. 38.
    Kwiatkowska, M., Norman, G., Parker, D.: PRISM 4.0: verification of probabilistic real-time systems. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 585–591. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-22110-1_47 CrossRefGoogle Scholar
  39. 39.
    Kwiatkowska, M., Thachuk, C.: Probabilistic model checking for biology. In: Software Systems Safety, vol, 36, p. 165 (2014)Google Scholar
  40. 40.
    Lakin, M.R., Parker, D., Cardelli, L., Kwiatkowska, M., Phillips, A.: Design and analysis of DNA strand displacement devices using probabilistic model checking. J. R. Soc. Interface 9(72), 1470–1485 (2012)CrossRefGoogle Scholar
  41. 41.
    Madsen, C., Shmarov, F., Zuliani, P.: BioPSy: an SMT-based tool for guaranteed parameter set synthesis of biological models. In: Roux, O., Bourdon, J. (eds.) CMSB 2015. LNCS, vol. 9308, pp. 182–194. Springer, Cham (2015). doi: 10.1007/978-3-319-23401-4_16 CrossRefGoogle Scholar
  42. 42.
    Murata, T.: Petri nets: properties, analysis and applications. Proc. IEEE 77(4), 541–580 (1989)CrossRefGoogle Scholar
  43. 43.
    Nori, A.V., Ozair, S., Rajamani, S.K., Vijaykeerthy, D.: Effcient Synthesis of Probabilistic Programs. In: PLDI 2014, pp. 208–217. ACM (2015)Google Scholar
  44. 44.
    Ouaknine, J., Worrell, J.: Some recent results in metric temporal logic. In: Cassez, F., Jard, C. (eds.) FORMATS 2008. LNCS, vol. 5215, pp. 1–13. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-85778-5_1 CrossRefGoogle Scholar
  45. 45.
    Paoletti, N., Yordanov, B., Hamadi, Y., Wintersteiger, C.M., Kugler, H.: Analyzing and Synthesizing genomic logic functions. In: Biere, A., Bloem, R. (eds.) CAV 2014. LNCS, vol. 8559, pp. 343–357. Springer, Cham (2014). doi: 10.1007/978-3-319-08867-9_23 Google Scholar
  46. 46.
    Solar-Lezama, A., Jones, C.G., Bodik, R.: Sketching concurrent data structures. In: PLDI 2008, pp. 136–148. ACM (2008)Google Scholar
  47. 47.
    Solar-Lezama, A., Rabbah, R., Bodík, R., Ebcioğlu, K.: Programming by Sketching for bit-streaming programs. In: PLDI 2005, pp. 281–294. ACM (2005)Google Scholar
  48. 48.
    Solar-Lezama, A., Tancau, L., Bodik, R., Seshia, S., Saraswat, V.: Combinatorial sketching for finite programs. In: ASPLOS 2006, pp. 404–415. ACM (2006)Google Scholar
  49. 49.
    Soloveichik, D., Seelig, G., Winfree, E.: DNA as a universal substrate for chemical kinetics. Proc. Natl. Acad. Sci. U. S. A. 107(12), 5393–5398 (2010)CrossRefGoogle Scholar
  50. 50.
    Tung, V.X., Van Khanh, T., Ogawa, M.: raSAT: an SMT solver for polynomial constraints. In: Olivetti, N., Tiwari, A. (eds.) IJCAR 2016. LNCS (LNAI), vol. 9706, pp. 228–237. Springer, Cham (2016). doi: 10.1007/978-3-319-40229-1_16 Google Scholar
  51. 51.
    Van Kampen, N.G.: Stochastic Processes in Physics and Chemistry, Elsevier, vol. 1 (1992)Google Scholar
  52. 52.
    Yordanov, B., Kim, J., Petersen, R.L., Shudy, A., Kulkarni, V.V., Phillips, A.: Computational design of nucleic acid feedback control circuits. ACS Synth. Biol. 3(8), 600–616 (2014)CrossRefGoogle Scholar
  53. 53.
    Zimmer, C., Sahle, S.: Parameter estimation for stochastic models of biochemical reactions. J. Comput. Sci. Syst. Biol. 6, 011–021 (2012)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Luca Cardelli
    • 1
    • 2
  • Milan Češka
    • 3
  • Martin Fränzle
    • 4
  • Marta Kwiatkowska
    • 2
  • Luca Laurenti
    • 2
  • Nicola Paoletti
    • 5
  • Max Whitby
    • 2
    Email author
  1. 1.Microsoft Research CambridgeCambridgeUK
  2. 2.Department of Computer ScienceUniversity of OxfordOxfordUK
  3. 3.Faculty of Information TechnologyBrno University of TechnologyBrnoCzech Republic
  4. 4.Department of Computer ScienceCarl von Ossietzky Universität OldenburgOldenburgGermany
  5. 5.Department of Computer ScienceStony Brook UniversityStony BrookUSA

Personalised recommendations