SMT-Based Analysis of Biological Computation
Synthetic biology focuses on the re-engineering of living organisms for useful purposes while DNA computing targets the construction of therapeutics and computational circuits directly from DNA strands. The complexity of biological systems is a major engineering challenge and their modeling relies on a number of diverse formalisms. Moreover, many applications are “mission-critical” (e.g. as recognized by NASA’s Synthetic Biology Initiative) and require robustness which is difficult to obtain. The ability to formally specify desired behavior and perform automated computational analysis of system models can help address these challenges, but today there are no unifying scalable analysis frameworks capable of dealing with this complexity.
In this work, we study pertinent problems and modeling formalisms for DNA computing and synthetic biology and describe how they can be formalized and encoded to allow analysis using Satisfiability Modulo Theories (SMT). This work highlights biological engineering as a domain that can benefit extensively from the application of formal methods. It provides a step towards the use of such methods in computational design frameworks for biology and is part of a more general effort towards the formalization of biology and the study of biological computation.
Unable to display preview. Download preview PDF.
- 1.Satisfiability modulo theories competition, http://www.smtcomp.org/2012/
- 2.Z34bio at rise4fun - software engineering tools from MSR (2012), http://rise4fun.com/z34biology
- 12.Horn, F., Jackson, R.: General mass action kinetics. Archive for Rational Mechanics and Analysis 47(2) (1972)Google Scholar
- 17.Langhoff, S., Rothschild, L., Cumbers, J., Paavola, C., Worden, P.: Workshop Report on What are the Potential Roles for Synthetic Biology in NASA’s Mission? Technical report (2012)Google Scholar
- 19.Pedersen, M., Phillips, A.: Towards programming languages for genetic engineering of living cells. J. R. Soc. Interface 6(suppl. 4), S437–S450 (2009)Google Scholar
- 20.Phillips, A., Cardelli, L.: A programming language for composable DNA circuits. Journal of the Royal Society, Interface 6(suppl. 4), S419–S436 (2009)Google Scholar
- 21.Pnueli, A.: The temporal logic of programs. In: 18th Annual Symposium on Foundations of Computer Science (FOCS 1977), pp. 46–57. IEEE (1977)Google Scholar
- 22.Purnick, P.E., Weiss, R.: The second wave of synthetic biology: from modules to systems. Nature Reviews. Molecular Cell Biology 10(6) (2009)Google Scholar
- 26.Soliman, S.: Finding minimal P/T-invariants as a CSP. In: Proceedings of the fourth Workshop on Constraint Based Methods for Bioinformatics WCB, vol. 8 (2008)Google Scholar
- 28.Wintersteiger, C., Hamadi, Y., de Moura, L.: Efficiently solving quantified bit-vector formulas. In: FMCAD, pp. 239–246 (2010)Google Scholar
- 30.Yordanov, B., Belta, C.: A formal verification approach to the design of synthetic gene networks. In: IEEE Conference on Decision and Control and European Control Conference, pp. 4873–4878. IEEE (2011)Google Scholar