Compiling and Verifying DNA-Based Chemical Reaction Network Implementations

One goal of molecular programming and synthetic biology is to build chemical circuits that can control chemical processes at the molecular level. Remarkably, it has been shown that synthesized DNA molecules can be used to construct complex chemical circuits that operate without any enzyme or cellular component. However, designing DNA molecules at the individual nucleotide base level is often difficult and laborious, and thus chemical reaction networks (CRNs) have been proposed as a higher-level programming language. So far, several general-purpose schemes have been described for designing synthetic DNA molecules that simulate the behavior of arbitrary CRNs, and many more are being actively investigated. Here, we solve two problems related to this topic. First, we present a general-purpose CRN-to-DNA compiler that can apply user-defined compilation schemes for translating formal CRNs to domain-level specifications for DNA molecules. In doing so, we develop a language in which such schemes can be concisely and precisely described. This compiler can greatly reduce the amount of tedious manual labor faced by researchers working in the field. Second, we present a general method for the formal verification of the correctness of such compilation. We first show that this problem reduces to testing a notion of behavioral equivalence between two CRNs, and then we construct a mathematical formalism in which that notion can be precisely defined. Finally, we provide algorithms for testing that notion. This verification process can be thought of as an equivalent of model checking in molecular computation, and we hope that the generality of our verification techniques will eventually allow us to apply them not only to DNA-based CRN implementations but to a wider class of molecular programs.

[1]  Erik Winfree,et al.  Molecular robots guided by prescriptive landscapes , 2010, Nature.

[2]  Kazuo Tanaka,et al.  DNA logic gates. , 2004, Journal of the American Chemical Society.

[3]  G. Seelig,et al.  DNA as a universal substrate for chemical kinetics , 2010, Proceedings of the National Academy of Sciences.

[4]  Luca Cardelli,et al.  Abstractions for DNA circuit design , 2011, Journal of The Royal Society Interface.

[5]  Lila Kari,et al.  Scalable, Time-Responsive, Digital, Energy-Efficient Molecular Circuits Using DNA Strand Displacement , 2010, DNA.

[6]  Jehoshua Bruck,et al.  Programmability of Chemical Reaction Networks , 2009, Algorithmic Bioprocesses.

[7]  Luca Cardelli,et al.  Strand algebras for DNA computing , 2009, Natural Computing.

[8]  Chrisantha Fernando,et al.  Turing Complete Catalytic Particle Computers , 2007, ECAL.

[9]  D. Y. Zhang,et al.  Engineering Entropy-Driven Reactions and Networks Catalyzed by DNA , 2007, Science.

[10]  Andrew Hinton,et al.  PRISM: A Tool for Automatic Verification of Probabilistic Systems , 2006, TACAS.

[11]  Paul W. K. Rothemund,et al.  A DNA and restriction enzyme implementation of Turing machines , 1995, DNA Based Computers.

[12]  Tom Quirk,et al.  There’s Plenty of Room at the Bottom , 2006, Size Really Does Matter.

[13]  Lulu Qian,et al.  Efficient Turing-Universal Computation with DNA Polymers , 2010, DNA.

[14]  Robert M. Dirks,et al.  An autonomous polymerization motor powered by DNA hybridization , 2007, Nature Nanotechnology.

[15]  Harry M. T. Choi,et al.  Programming DNA Tube Circumferences , 2008, Science.

[16]  Walter Fontana,et al.  Fast folding and comparison of RNA secondary structures , 1994 .

[17]  Luca Cardelli,et al.  A programming language for composable DNA circuits , 2009, Journal of The Royal Society Interface.

[18]  Marc D. Riedel,et al.  Rate-Independent Constructs for Chemical Computation , 2011, Pacific Symposium on Biocomputing.

[19]  R. Feynman There's plenty of room at the bottom , 1999 .

[20]  P. Rothemund Folding DNA to create nanoscale shapes and patterns , 2006, Nature.

[21]  David R. Gilbert,et al.  Analysis of Signalling Pathways Using Continuous Time Markov Chains , 2006, Trans. Comp. Sys. Biology.

[22]  G. Seelig,et al.  Enzyme-Free Nucleic Acid Logic Circuits , 2022 .

[23]  J. Reif,et al.  A unidirectional DNA walker that moves autonomously along a track. , 2004, Angewandte Chemie.

[24]  Harry M. T. Choi,et al.  Programming biomolecular self-assembly pathways , 2008, Nature.

[25]  E. Winfree,et al.  Algorithmic Self-Assembly of DNA Sierpinski Triangles , 2004, PLoS biology.

[26]  E. Winfree,et al.  Synthetic in vitro transcriptional oscillators , 2011, Molecular systems biology.

[27]  Matthew Cook,et al.  Computation with finite stochastic chemical reaction networks , 2008, Natural Computing.

[28]  Keshab K. Parhi,et al.  Writing and Compiling Code into Biochemistry , 2010, Pacific Symposium on Biocomputing.

[29]  Hao Yan,et al.  DNA tile based self-assembly: building complex nanoarchitectures. , 2006, Chemphyschem : a European journal of chemical physics and physical chemistry.

[30]  Jongmin Kim,et al.  In vitro synthetic transcriptional networks , 2007 .

[31]  M. Sahani,et al.  Algorithmic Self-Assembly of DNA , 2006 .

[32]  P. Yin,et al.  A DNAzyme that walks processively and autonomously along a one-dimensional track. , 2005, Angewandte Chemie.

[33]  Matthew R. Lakin,et al.  Bioinformatics Applications Note Systems Biology Visual Dsd: a Design and Analysis Tool for Dna Strand Displacement Systems , 2022 .

[34]  Philippe Schnoebelen,et al.  Bisimulation and the Reduction of Petri Nets , 2000, ICATPN.

[35]  Mark Ettinger The complexity of comparing reaction systems , 2002, Bioinform..

[36]  N. Seeman DNA in a material world , 2003, Nature.

[37]  N. Pierce,et al.  A synthetic DNA walker for molecular transport. , 2004, Journal of the American Chemical Society.

[38]  Luca Cardelli Two-domain DNA strand displacement , 2013, Math. Struct. Comput. Sci..

[39]  L M Adleman,et al.  Molecular computation of solutions to combinatorial problems. , 1994, Science.

[40]  David Yu Zhang,et al.  Cooperative hybridization of oligonucleotides. , 2011, Journal of the American Chemical Society.

[41]  Jonathan Bath,et al.  Remote toehold: a mechanism for flexible control of DNA hybridization kinetics. , 2011, Journal of the American Chemical Society.

[42]  Vincent Danos,et al.  Modeling and querying biomolecular interaction networks , 2004, Theor. Comput. Sci..

[43]  Conrad Steenberg,et al.  NUPACK: Analysis and design of nucleic acid systems , 2011, J. Comput. Chem..

[44]  Luca Cardelli,et al.  Exploring DNA Strand-Displacement Computational Elements , 2010 .

[45]  M. F.,et al.  Bibliography , 1985, Experimental Gerontology.

[46]  Luca Cardelli,et al.  Design and Analysis of DNA Circuits using Probabilistic Model Checking , 2022 .

[47]  Lulu Qian,et al.  A Simple DNA Gate Motif for Synthesizing Large-Scale Circuits , 2008, DNA.

[48]  Marta Z. Kwiatkowska,et al.  Probabilistic model checking of complex biological pathways , 2008, Theor. Comput. Sci..

[49]  K Oishi,et al.  Biomolecular implementation of linear I/O systems. , 2011, IET systems biology.