Skip to main content

A General-Purpose CRN-to-DSD Compiler with Formal Verification, Optimization, and Simulation Capabilities

  • Conference paper
  • First Online:
DNA Computing and Molecular Programming (DNA 2017)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10467))

Included in the following conference series:

Abstract

The mathematical formalism of mass-action chemical reaction networks (CRNs) has been proposed as a mid-level programming language for dynamic molecular systems. Several systematic methods for translating CRNs into domain-level strand displacement (DSD) systems have been developed theoretically, and in some cases demonstrated experimentally. Software that facilitates the simulation of CRNs and DSDs, and that helps automate the construction of DSDs from CRNs, has been instrumental in advancing the field, but as yet has not incorporated the fundamental enabling concept for programming languages and compilers: a rigorous abstraction hierarchy with well-defined semantics at each level, and rigorous correctness proofs establishing the correctness of compilation from a higher level to a lower level. Here, we present a CRN-to-DSD compiler, Nuskell, that makes a first step in this direction. To support the wide range of translation schemes that have already been proposed in the literature, as well as potential new ones that are yet to be proposed, Nuskell provides a domain-specific programming language for translation schemes. A notion of correctness is established on a case-by-case basis using the rate-independent stochastic-level theories of pathway decomposition equivalence and/or CRN bisimulation. The “best” DSD implementation for a given CRN can be found by comparing the molecule size, network size, or simulation behavior for a variety of translation schemes. These features are illustrated with a 3-reaction oscillator CRN and a 32-reaction feedforward boolean circuit CRN.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    www.github.com/DNA-and-Natural-Algorithms-Group/nuskell.

  2. 2.

    www.github.com/DNA-and-Natural-Algorithms-Group/peppercornenumerator.

  3. 3.

    http://www.github.com/DNA-and-Natural-Algorithms-Group/nuskell/schemes.

References

  1. Boyken, S.E., Chen, Z., Groves, B., Langan, R.A., Oberdorfer, G., Ford, A., Gilmore, J.M., Xu, C., DiMaio, F., Pereira, J.H., et al.: De novo design of protein homo-oligomers with modular hydrogen-bond network-mediated specificity. Science 352(6286), 680–687 (2016)

    Article  Google Scholar 

  2. Cardelli, L.: Strand algebras for DNA computing. Nat. Comput. 10(1), 407–428 (2011)

    Article  MathSciNet  MATH  Google Scholar 

  3. Cardelli, L.: Two-domain DNA strand displacement. Math. Struct. Comput. Sci. 23(02), 247–271 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  4. Chen, Y.J., Dalchau, N., Srinivas, N., Phillips, A., Cardelli, L., Soloveichik, D., Seelig, G.: Programmable chemical controllers made from DNA. Nat. Nanotechnol. 8(10), 755–762 (2013)

    Article  Google Scholar 

  5. Cook, M., Soloveichik, D., Winfree, E., Bruck, J.: Programmability of chemical reaction networks. In: Condon, A., Harel, D., Kok, J., Salomaa, A., Winfree, E. (eds.) Algorithmic Bioprocesses. Natural Computing Series, pp. 543–584. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  6. Flamm, C., Fontana, W., Hofacker, I.L., Schuster, P.: RNA folding at elementary step resolution. RNA 6, 325–338 (2000)

    Article  Google Scholar 

  7. Grun, C., Sarma, K., Wolfe, B., Shin, S.W., Winfree, E.: A domain-level DNA strand displacement reaction enumerator allowing arbitrary non-pseudoknotted secondary structures. arXiv:1505.03738 (2014)

  8. Hochrein, L.M., Schwarzkopf, M., Shahgholi, M., Yin, P., Pierce, N.A.: Conditional dicer substrate formation via shape and sequence transduction with small conditional RNAs. J. Am. Chem. Soc. 135(46), 17322–17330 (2013)

    Article  Google Scholar 

  9. Johnson, R.F., Dong, Q., Winfree, E.: Verifying chemical reaction network implementations: a bisimulation approach. In: Rondelez, Y., Woods, D. (eds.) DNA 2016. LNCS, vol. 9818, pp. 114–134. Springer, Cham (2016). doi:10.1007/978-3-319-43994-5_8

    Chapter  Google Scholar 

  10. Lakin, M.R., Parker, D., Cardelli, L., Kwiatkowska, M., Phillips, A.: Design and analysis of DNA strand displacement devices using probabilistic model checking. J. Roy. Soc. Interface 9, 1470–1485 (2012)

    Article  Google Scholar 

  11. Lakin, M.R., Stefanovic, D., Phillips, A.: Modular verification of chemical reaction network encodings via serializability analysis. Theoret. Comput. Sci. 632, 21–42 (2016)

    Article  MathSciNet  MATH  Google Scholar 

  12. Lakin, M.R., Youssef, S., Cardelli, L., Phillips, A.: Abstractions for DNA circuit design. J. Roy. Soc. Interface 9(68), 470–486 (2012)

    Article  Google Scholar 

  13. Qian, L., Soloveichik, D., Winfree, E.: Efficient Turing-universal computation with DNA polymers. In: Sakakibara, Y., Mi, Y. (eds.) DNA 2010. LNCS, vol. 6518, pp. 123–140. Springer, Heidelberg (2011). doi:10.1007/978-3-642-18305-8_12

    Chapter  Google Scholar 

  14. Qian, L., Winfree, E.: Scaling up digital circuit computation with DNA strand displacement cascades. Science 332(6034), 1196–1201 (2011)

    Article  Google Scholar 

  15. Schaeffer, J.M., Thachuk, C., Winfree, E.: Stochastic simulation of the kinetics of multiple interacting nucleic acid strands. In: Phillips, A., Yin, P. (eds.) DNA 2015. LNCS, vol. 9211, pp. 194–211. Springer, Cham (2015). doi:10.1007/978-3-319-21999-8_13

    Chapter  Google Scholar 

  16. Shin, S.W.: Compiling and verifying DNA-based chemical reaction network implementations. Master’s thesis, Caltech (2011)

    Google Scholar 

  17. Soloveichik, D., Cook, M., Winfree, E., Bruck, J.: Computation with finite stochastic chemical reaction networks. Nat. Comput. 7(4), 615–633 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  18. Soloveichik, D., Seelig, G., Winfree, E.: DNA as a universal substrate for chemical kinetics. Proc. Natl. Acad. Sci. 107(12), 5393–5398 (2010)

    Article  Google Scholar 

  19. Srinivas, N.: Programming chemical kinetics: engineering dynamic reaction networks with DNA strand displacement. Ph.D. thesis, Caltech (2015)

    Google Scholar 

  20. Srinivas, N., Parkin, J., Seelig, G., Winfree, E., Soloveichik, D.: Enzyme-free nucleic acid dynamical systems. bioRxiv (2017). http://biorxiv.org/content/early/2017/05/16/138420

  21. Thubagere, A.J., Thachuk, C., Berleant, J., Johnson, R.F., Ardelean, D.A., Cherry, K.M., Qian, L.: Compiler-aided systematic construction of large-scale DNA strand displacement circuits using unpurified components. Nat. Commun. 8, 14373 (2017)

    Article  Google Scholar 

  22. Zhang, D.Y., Seelig, G.: Dynamic DNA nanotechnology using strand-displacement reactions. Nat. Chem. 3(2), 103–113 (2011)

    Article  Google Scholar 

Download references

Acknowledgements

We thank the U.S. National Science Foundation for support: NSF Grant CCF-1213127 and NSF Grant CCF-1317694 (“The Molecular Programming Project”). The Gordon and Betty Moore Foundation’s Programmable Molecular Technology Initiative (PMTI). SB is funded by the Caltech Biology and Biological Engineering Division Fellowship. SWS’s current address is Google, Mountain View, California. QD’s current address is Epic Systems, Madison, Wisconsin.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Stefan Badelt or Erik Winfree .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Badelt, S., Shin, S.W., Johnson, R.F., Dong, Q., Thachuk, C., Winfree, E. (2017). A General-Purpose CRN-to-DSD Compiler with Formal Verification, Optimization, and Simulation Capabilities. In: Brijder, R., Qian, L. (eds) DNA Computing and Molecular Programming. DNA 2017. Lecture Notes in Computer Science(), vol 10467. Springer, Cham. https://doi.org/10.1007/978-3-319-66799-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-66799-7_15

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-66798-0

  • Online ISBN: 978-3-319-66799-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics