Abstract
Computation via biological devices has been the subject of close scrutiny since von Neumann’s early work some 60 years ago. In spite of the many relevant works in this field, the notion of programming biological devices seems to be, at best, ill-defined. While many devices are claimed or proved to be computationally universal in some sense, the full step to a bona fide programming language is rarely taken, and one question is noticeable by its absence: If the device is universal, where are the programs?
We begin with an extensive review of the literature on programming-related biocomputing; and briefly identify some strengths and shortcomings from a programming perspective. To show concretely what one could see as programming in biocomputing, we outline (from recent work) a computation model and a small programming language that are biologically more plausible than existing silicon-inspired models. Whether or not the model is biologically plausible in an absolute sense, we believe it sets a standard for a biological device that can be both universal and programmable.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Adleman, L.M.: Molecular computation of solutions to combinatorial problems. Science 266(11), 1021–1024 (1994)
Adleman, L.M.: On constructing a molecular computer. In: DIMACS: series in Discrete Mathematics and Theoretical Computer Science, pp. 1–21. American Mathematical Society (1996)
Amos, M., Paun, G., Rozenberg, G., Salomaa, A.: Topics in the theory of DNA computing. Theor. Comput. Sci. 287(1), 3–38 (2002)
Backofen, R., Clote, P.: Evolution as a computational engine. In: Proceedings of the Annual Conference of the European Association for Computer Science Logic, pp. 35–55. Springer, Heidelberg (1996)
Beaver, D.: Computing with dna. Journal of Computational Biology 2(1), 1–7 (1995)
Beaver, D.: Computing with DNA. Journal of Computational Biology 2(1), 1–7 (1995)
Benenson, Y., Adar, R., Paz-Elizur, T., Livneh, Z., Shapiro, E.: Dna molecule provides a computing machine with both data and fuel. Proc. Natl. Acad. Sci. U S A 100(5), 2191–2196 (2003), http://dx.doi.org/10.1073/pnas.0535624100 , doi:10.1073/pnas.0535624100
Benenson, Y., Adar, R., Paz-Elizur, T., Livneh, Z., Shapiro, E.: DNA molecule provides a computing machine with both data and fuel. In: Noltemeier, H. (ed.) WG 1980. LNCS, vol. 100, pp. 2191–2196. Springer, Heidelberg (1981)
Benenson, Y., Paz-Elizur, T., Adar, R., Keinan, E., Livneh, Z., Shapiro, E.: Programmable and autonomous computing machine made of biomolecules. Nature 414(1), 430–434 (2001), http://www.nature.com/nature/links/011122/011122-2.html
Benenson, Y.: Biocomputers: from test tubes to live cells. Molecular BioSystems 5(7), 675–685 (2009), http://dx.doi.org/10.1039/b902484k , doi:10.1039/b902484k
Benenson, Y.: RNA-based computation in live cells (Protein technologies / Systems and synthetic biology). Current Opinion in Biotechnology 20(4), 471 (2009), http://www.sciencedirect.com/science/article/B6VRV-4X4BR27-2/2/0133dc1fc3a23441b6aa9bab4115fc11 , doi:10.1016/j.copbio.2009.08.002
Bennett, C.H.: Logical reversibility of computation. IBM Journal of Research and Development 17(6), 525–532 (1973)
Bennett, C.H.: The thermodynamics of computation – a review. International Journal of Theoretical Physics 21(12), 905–940 (1982), http://dx.doi.org/10.1007/BF02084158 , doi:10.1007/BF02084158
Berger, R.: The undecidability of the domino problem. Memoirs American Mathematical Society 66 (1966)
Berlekamp, E.R., Conway, J.H., Guy, R.K.: Winning Ways for your Mathematical Plays (chapter 25), vol. 2. Academic Press, ISBN 0-12-091152-3 (1982)
Bohringer, K.-F., Paulisch, Newbery, F.: Using constraints to achieve stability in automatic graph layout algorithms. In: Proceedings of ACM CHI’90 Conference on Human Factors in Computing Systems. pp. 43–51. Constraint Based UI Tools (1990)
Boneh, D., Dunworth, C., Lipton, R.J.: Breaking DES using a molecular computer. In: Lipton, E.B.B.R.J. (ed.) DNA based computers. DIMACS: Series in Discrete Mathematics and Theoretical Computer Science, vol. 27, pp. 37–66. American Mathematical Society (1995)
Braich, R.S., Chelyapov, N., Johnson, C., Rothemund, P.W.K., Adleman, L.: Solution of a 20-variable 3-sat problem on a dna computer. Science 296, 499–502 (2002)
Cardelli, Paun: An universality result for a (mem)brane calculus based on mate/drip operations. IJFCS: International Journal of Foundations of Computer Science 17 (2006)
Cardelli, L.: Brane calculi. In: Danos, V., Schachter, V. (eds.) CMSB 2004. LNCS (LNBI), vol. 3082, pp. 257–278. Springer, Heidelberg (2005)
Cardelli, L.: Abstract machines of systems biology. Transactions on Computational Systems Biology 3737, 145–168 (2005)
Cardelli, L.: Strand algebras for DNA computing. In: DNA, pp. 12–24 (2009)
Cardelli, L.: Molecular programming tutorial, microsoft research, cambridge (feb 2010), http://lucacardelli.name/Talks/2010-02-11utorial.pdf
Cardelli, L.: Biocomputers is not a good idea of solving np complete problems. said during presentation of strand algebra (CS2Bio,Amsterdam, 2010)
Cardelli, L., Zavattaro, G.: On the computational power of biochemistry. In: Horimoto, K., Regensburger, G., Rosenkranz, M., Yoshida, H. (eds.) AB 2008. LNCS, vol. 5147, pp. 65–80. Springer, Heidelberg (2008)
Cardelli, L., Zavattaro, G.: Turing universality of the biochemical ground form. Mathematical Structures in Computer Science 19 (2009)
Chang, W.-L., Ho, M.-H., Guo, M.: Molecular solutions for the subset-sum problem on DNA-based supercomputing. Biosystems 73, 117–130, http://www.ingentaconnect.com/content/els/03032647/2004/00000073/00000002/art00225 , doi:10.1016/j.biosystems.2003.11.001
Chapman, P.: Life universal computer. http://www.igblan.free-online.co.uk/igblan/ca/ (November) (2002)
Chiniforooshan, E., Doty, D., Kari, L., Seki, S.: Scalable, time-responsive, digital, energy-efficient molecular circuits using DNA strand displacement. CoRR abs/1003.3275 (2010)
Ciocchetta, F., Hillston, J.: Bio-PEPA: An extension of the process algebra PEPA for biochemical networks. Electr. Notes Theor. Comput. Sci 194(3), 103–117 (2008), http://dx.doi.org/10.1016/j.entcs.2007.12.008
Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Bevilacqua, V., Talcott, C.: All About Maude - A High-Performance Logical Framework. LNCS, vol. 4350. Springer, Heidelberg (2007)
Condon, A., Rozenberg, G. (eds.): DNA 2000. LNCS, vol. 2054. Springer, Heidelberg (2001)
Conrad, M.: On design principles for a molecular computer. Commun. ACM 28(5), 464–480 (1985), doi:10.1145/3532.3533
Conrad, M.: Quantum molecular computing: The self-assembly model. International Journal of Quantum Chemistry. Quantum Biology Symposium: Proceedings of the International Symposium on Quantum Biology and Quantum Pharmacology. 19, 125 (1992)
Danchin, A.: Bacteria as computers making computers. FEMS Microbiology Reviews 33(1), 3 (2008)
Danos, V., Feret, J., Fontana, W., Krivine, J.: Abstract interpretation of cellular signalling networks. In: vmcai, pp. 83–97 (2008)
Danos, V., Feret, J., Fontana, W., Krivine, J.: Abstract interpretation of cellular signalling networks. In: Logozzo, F., Peled, D.A., Zuck, L.D. (eds.) VMCAI 2008. LNCS, vol. 4905, pp. 83–97. Springer, Heidelberg (2008)
Danos, V., Krivine, J.: Formal molecular biology done in CCS-R. Electr. Notes Theor. Comput. Sci 180(3), 31–49 (2007), http://dx.doi.org/10.1016/j.entcs.2004.01.040
Danos, V., Laneve, C.: Formal molecular biology. Theor. Comput. Sci. 325(1), 69–110 (2004), doi:10.1016/j.tcs.2004.03.065
Danos, V., Laneve, C.: Formal molecular biology. Theor. Comp. Science 325, 69–110 (2004)
Danos, V., Schachter, V. (eds.): CMSB 2004. LNCS (LNBI), vol. 3082. Springer, Heidelberg (2005)
Deaton, R., Suyama, A. (eds.): DNA 15. LNCS, vol. 5877. Springer, Heidelberg (2009)
Degano, P., Gorrieri, R. (eds.): CMSB 2009. LNCS, vol. 5688. Springer, Heidelberg (2009)
Delzanno, G., Giusto, C.D., Gabbrielli, M., Laneve, C., Zavattaro, G.: The kappa-lattice: Decidability boundaries for qualitative analysis in biological languages. In: cmsb, pp. 158–172 (2009)
Doty, D., Patitz, M.J.: A Domain-Specific Language for Programming in the Tile Assembly Model. In: pp. 25–34. Springer, Heidelberg (2009)
Eades, P.: A heuristic for graph drawing. Congressus Numerantium 42, 149–160 (1984)
Eades, P., Lai, W., Misue, K., Sugiyama, K.: Preserving the mental map of a diagram. In: COMPUGRAPHICS ’91, vol. I, pp. 34–43 (1991)
Elbaz, J., Lioubashevski, O., Wang, F.: DNA computing circuits using libraries of DNAzyme subunits. Nat Nanotechnol 5(6), 417–422 (2010), http://dx.doi.org/10.1038/nnano.2010.88 , doi:10.1038/nnano.2010.88
Fisher, J., Henzinger, T.A.: Executable cell biology. Nature biotechnology 25(11), 1239–1249 (2007), http://dx.doi.org/10.1038/nbt1356 , doi:10.1038/nbt1356
Fleischer, R., Hirsch, C.: Graph drawing and its applications (chapter 1). In: Kaufmann, M., Wagner, D. (eds.) Drawing Graphs. LNCS, vol. 2025, pp. 1–22. Springer, Heidelberg (2001), http://link.springer.de/link/service/series/0558/papers/2025/20250001.pdf
Frick, A., Ludwig, A., Mehldau, H.: A fast adaptive layout algorithm for undirected graphs. In: Tamassia, R., Tollis, I.G. (eds.) GD 1994. LNCS, vol. 894, pp. 388–403. Springer, Heidelberg (1995), http://dblp.uni-trier.de/db/conf/gd/gd94.html#FrickLM94
Fontana, W., Buss, L.: The barrier of objects: From dynamical systems to bounded organizations. Working Papers wp96027, International Institute for Applied Systems Analysis (Mar 1996), http://ideas.repec.org/p/wop/iasawp/wp96027.html
Fruchterman, T.M.J., Reingold, E.M.: Graph drawing by force-directed placement. Software: Practice and Experience 21(11), 1129–1164 (1991), citeseer.ist.psu.edu/fruchterman91graph.html
Fu, P.: Biomolecular computing: Is it ready to take off? Biotechnology Journal 2(1), 91–101 (2007), http://dx.doi.org/10.1002/biot.200600134 , doi:10.1002/biot.200600134
Gardner, M.: The fantastic combinations of John Conway’s new solitaire game “life”. Scientific American 223, 120–123 (1970)
Gardner, M.: Mathematical recreations. Scientific American (1970)
Garzon, M.H., Deaton, R.J.: Biomolecular computing and programming. IEEE Trans. Evolutionary Computation 3(3), 236–250 (1999)
Gilmore, S., Hillston, J.: The PEPA Workbench: A Tool to Support a Process Algebra-based Approach to Performance Modelling. In: Haring, G., Kotsis, G. (eds.) TOOLS 1994. LNCS, vol. 794, pp. 353–368. Springer, Heidelberg (1994)
: A compound graph layout algorithm for biological pathways. In: Graph Drawing. LNCS, vol. 3383, pp. 442–447. Springer, Heidelberg (2004), http://dblp.uni-trier.de/db/conf/gd/gd2004.html#DogrusozGCCD04
Goel, A., Ibrahimi, M.: Renewable, time-responsive DNA logic gates for scalable digital circuits. In: DNA, pp. 67–77 (2009)
Goel, A., Simmel, F.C., Sosík, P. (eds.): DNA Computing. LNCS, vol. 5347. Springer, Heidelberg (2009)
Guarnieri, F., Fliss, M., Bancroft, C.: Making DNA add. Science 273(5272), 220–223 (1996)
Guerriero, M.L., Prandi, D., Priami, C., Quaglia, P.: Process calculi abstractions for biology. Tech. rep., CoSBi (Center for Computational and Systems Biology) , University of Trento (Jan 01 2006), http://eprints.biblio.unitn.it/archive/00001704/ http://eprints.biblio.unitn.it/archive/00001704/01/TR-13-2006.pdf
Guerriero, M.L., Prandi, D., Priami, C., Quaglia, P.: Process calculi abstractions for biology. Tech. rep., University of Trento, Italy (Jan 01, 2006), http://eprints.biblio.unitn.it/archive/00001704/; http://eprints.biblio.unitn.it/archive/00001704/01/TR-13-2006.pdf
Hagiya, M.: From molecular computing to molecular programming. In: Condon, A., Rozenberg, G. (eds.) dna. LNCS, vol. 2054, pp. 89–102. Springer, Heidelberg (2000), http://link.springer.de/link/service/series/0558/bibs/2054/20540089.htm
Hagiya, M.: Designing chemical and biological systems. New Generation Comput. 26(3), 295 (2008)
Hartmann, L., Jones, N.D., Simonsen, J.G.: Programming in biomolecular computation. In: CS2BIO ’09: Proceedings of the 1st International Workshop on Interactions between Computer Science and Biology. Electronic Notes on Theoretical Computer Science series, Elsevier, Amsterdam (2010), http://dx.doi.org/10.1016/j.entcs.2010.12.008 , doi:10.1016/j.entcs.2010.12.008
Hartmann, L., Jones, N.D., Simonsen, J.G., Vrist, S.B.: Programming in biomolecular computation: Programs, self-interpretation and visualisation. to appear in Scientific Annals of Computer Science (?), http://dk.diku.blob.blobvis.s3.amazonaws.com/blobiasi.pdf
Heer, J.: Prefuse: a software framework for interactive information visualization. Master’s thesis, University of California, Berkeley (2004), http://jheer.org/publications/2004-Heer-prefuse-MastersApp.pdf
Hoare, C.A.R.: Communicating sequential processes. Communications of the ACM 21(8), 666–677 (1978)
Hug, H., Schuler, R.: Strategies for the development of a peptide computer. Bioinformatics 17(4), 364–368 (2001), http://bioinformatics.oxfordjournals.org/content/17/4/364.abstract
Jones, J.E.: On the determination of molecular fields. ii. from the equation of state of a gas. Proceedings of the Royal Society of London. Series A 106(738), 463–477 (1924), http://dx.doi.org/10.1098/rspa.1924.0082 , doi:10.1098/rspa.1924.0082
Jones, N.D., Gomard, C.K., Sestoft, P.: Partial Evaluation and Automatic Program Generation. Prentice Hall International Series in Computer Science. Prentice-Hall, Englewood Cliffs (1993)
Jones, N.D.: Computability and complexity: from a programming perspective. MIT Press, Cambridge, MA, USA (1997)
Kamada, T., Kawai, S.: An algorithm for drawing general undirected graphs. Information Processing Letters 31(1), 7–15 (1989)
Kari, J.: Theory of cellular automata: A survey. Theoretical Computer Science 334(1-3), 3 (2005), http://www.sciencedirect.com/science/article/B6V1G-4FDS8HM-2/2/7bdf589f505353432c8447e06f491ceb , doi:10.1016/j.tcs.2004.11.021
Kari, L.: Biological computation: How does nature compute? Tech. rep., University of Western Ontario (2009)
Kari, L., Rozenberg, G.: The many facets of natural computing. Commun. ACM 51(10), 72–83 (2008), doi:10.1145/1400181.1400200
Khodor, J.: DNA-based string rewrite computational systems. Ph.D. thesis, Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science (2002), http://hdl.handle.net/1721.1/8339
Khodor, J., Gifford, D.K.: Programmed mutagenesis is universal. Theory Comput. Syst. 35(5), 483–500 (2002), http://dblp.uni-trier.de/db/journals/mst/mst35.html#KhodorG02
mer, M.K., Pita, M., Zhou, J., Ornatska, M., Poghossian, A., ning, M.J.S., Katz, E.: Coupling of biocomputing systems with electronic chips: Electronic interface for transduction of biochemical information. The Journal of Physical Chemistry C 113(6), 2573–2579 (2009), http://pubs.acs.org/doi/abs/10.1021/jp808320s , doi:10.1021/jp808320s
Lipton, R.J.: Using DNA to solve NP-complete problems. Science 268, 542–545 (1995)
Logozzo, F., Peled, D.A., Zuck, L.D. (eds.): VMCAI 2008. LNCS, vol. 4905. Springer, Heidelberg (2008)
Lund, K., Manzo, A.J., Dabby, N., Michelotti, N., Johnson-Buck, A., Nangreave, J., Taylor, S., Pei, R., Stojanovic, M.N., Walter, N.G., Winfree, E., Yan, H.: Molecular robots guided by prescriptive landscapes. Nature 465(7295), 206–210 (2010), http://dx.doi.org/10.1038/nature09012
Mao, C., Labean, T.H., Reif, J.H., Seeman, N.C.: Logical computation using algorithmic self-assembly of DNA triple-crossover molecules. Nature 407, 493–496 (2000)
Milner, R.: Communication and concurrency. Prentice-Hall, Inc., Upper Saddle River, NJ, USA (1989)
Milner, R.: Functions as processes. Research Report 1154, INRIA (1990)
Minsky, M.: Computation: finite and infinite machines. Prentice-Hall, Englewood Cliffs (1967)
Misue, K., Eades, P., Lai, W., Sugiyama, K.: Layout adjustment and the mental map. Journal of Visual Languages and Computing 6(2), 183 (1995), http://www.sciencedirect.com/science/article/B6WMM-45PVMS3-13/2/0f1f0f6cf4f49a7892fb6064751b128c , doi:10.1006/jvlc.1995.1010
Stojanovic, M.N., Stefanovic, D.: A deoxyribozyme-based molecular automaton. Nature Biotechnol 21(9), 1069–1074 (2003)
Nehaniv, C.L.: Asynchronous automata networks can emulate any synchronous automata network. International Journal of Algebra and Computation 14(5-6), 719–739 (2004)
Murata, S., Stojanovic, M.N.: DNA-based nanosystems. New Generation Comput. 26(3), 297–312 (2008)
Neumann, J.v., Burks, A.W.: Theory of Self-Reproducing Automata. Univ. Illinois Press (1966)
Pach, J. (ed.): GD 2004. LNCS, vol. 3383. Springer, Heidelberg (2005)
Parker, J.: Computing with DNA. EMBO Rep. 4(7), 7–10 (2003)
Phillips, A., Cardelli, L.: A programming language for composable DNA circuits. Journal of the Royal Society Interface 6(S4) (2009)
Qian, L., Winfree, E.: A simple DNA gate motif for synthesizing large-scale circuits. In: DNA, pp. 70–89 (2008)
Ran, T., Kaplan, S., Shapiro, E.: Molecular implementation of simple logic programs. Nat Nano 4(10), 642–648 (2009), http://dx.doi.org/10.1038/nnano.2009.203 , doi:10.1038/nnano.2009.203
Regev, A., Shapiro, E.Y.: Cells as computation. In: Priami, C. (ed.) CMSB 2003. LNCS, vol. 2602, pp. 1–3. Springer, Heidelberg (2003), http://link.springer.de/link/service/series/0558/bibs/2602/26020001.htm
Regev, A., Panina, E.M., Silverman, W., Cardelli, L., Shapiro, E.: Bioambients: An abstraction for biological compartments. TCS: Theoretical Computer Science 325 (2004)
Regev, A., Silverman, W., Shapiro, E.Y.: Representation and simulation of biochemical processes using the pi-calculus process algebra. In: Pacific Symposium on Biocomputing, pp. 459–470 (2001), http://helix-web.stanford.edu/psb01/regev.pdf
Reif, J.H., LaBean, T.H.: Autonomous programmable biomolecular devices using self-assembled DNA nanostructures. Commun. ACM 50(9), 46–53 (2007), http://dblp.uni-trier.de/db/journals/cacm/cacm50.html#ReifL07
Robinson, R.M.: Undecidability and nonperiodicity for tilings of the plane. Inv. Math 12, 117–209 (1971)
Rothemund, P.W.K.: A DNA and restriction enzyme implementation of Turing machines. In: Lipton, E.B.B.R.J. (ed.) DNA based computers. DIMACS: Series in Discrete Mathematics and Theoretical Computer Science, vol. 27, pp. 75–120. American Mathematical Society (1995)
Rothemund, P.W.K.: Using lateral capillary forces to compute by self-assembly. Proceedings of the National Academy of Sciences of the United States of America 97(3), 984–989 (2000), http://www.pnas.org/content/97/3/984.abstract
Rothemund, P.W.K.: Folding DNA to create nanoscale shapes and patterns. Nature 440, 297–302 (2006), doi:10.1038/nature04586
Roweis, S., Winfree, E., Burgoyne, R., Chelyapov, N.V., Goodman, M.F., Rothemund, P.W.K., Adleman, L.M.: A sticker based model for DNA computation. In: Landweber, L., Baum, E. (eds.) DNA Based Computers II. DIMACS: Series in Discrete Mathematics and Theoretical Computer Science, vol. 44, American Mathematical Society (1996), ftp://hope.caltech.edu/pub/roweis/DIMACS/stickers.ps
Roweis, S.T., Winfree, E., Burgoyne, R., Chelyapov, N.V., Goodman, M.F., Rothemund, P.W.K., Adleman, L.M.: A sticker-based model for DNA computation. Journal of Computational Biology 5(4), 615–630 (1998)
Sander, G.: Graph layout for applications in compiler construction. Theor. Comput. Sci. 217(2), 175–214 (1999), http://dblp.uni-trier.de/db/journals/tcs/tcs217.html#Sander99
Sangiorgi, D., Walker, D.: The π-calculus: a Theory of Mobile Processes. Cambridge University Press, Cambridge (2001)
Seelig, G., Soloveichik, D.: Time-Complexity of Multilayered DNA Strand Displacement Circuits. In: pp. 144–153. Springer, Heidelberg (2009)
Seelig, G., Soloveichik, D., Zhang, D.Y., Winfree, E.: Enzyme-Free Nucleic Acid Logic Circuits. Science 314(5805), 1585–1588 (2006), http://www.sciencemag.org/cgi/content/abstract/314/5805/1585 , doi:10.1126/science.1132493
Shapiro, Benenson: Bringing DNA computers to life. SCIAM: Scientific American 294 (2006)
Shapiro, E.: Mechanical Turing machine: Blueprint for a biomolecular computer. Tech. rep., Weizmann Institute of Science (1999)
Shapiro, E.: Mechanical Turing machine: Blueprint for a biomolecular computer. Tech. rep., Weizmann Institute of Science (1999)
Shapiro, E., Benenson, Y.: Bringing DNA computers to life. Scientific American 294, 44–51 (2006)
Shlyahovsky, B., Li, Y., Lioubashevski, O., Elbaz, J., Willner, I.: Logic gates and antisense DNA devices operating on a translator nucleic acid scaffold. ACS Nano 3(7), 1831–1843 (2009), http://dx.doi.org/10.1021/nn900085x
Simpson, M.L., Sayler, G.S., Fleming, J.T., Applegate, B.: Whole-cell biocomputing. Trends Biotechnol 19(8), 317–23 (2001), http://www.biomedsearch.com/nih/Whole-cell-biocomputing/11451474.html
Smith, W.D.: DNA computers in vitro and vivo. In: Lipton, E.B.B.R.J. (ed.) DNA based computers. DIMACS: Series in Discrete Mathematics and Theoretical Computer Science, vol. 27, pp. 121–186. American Mathematical Society (1995)
Soloveichik, D., Seelig, G., Winfree, E.: DNA as a universal substrate for chemical kinetics. In: DNA, pp. 57–69 (2008)
Stefansen, C.: SMAWL: A SMAll workflow language based on CCS. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, Springer, Heidelberg (2005), http://www.ceur-ws.org/Vol-161/FORUM_10.pdf
Talcott, C.: Pathway logic (8th International School on Formal Methods for the Design of Computer, Communication, and Software Systems). In: Bernardo, M., Degano, P., Tennenholtz, M. (eds.) SFM 2008. LNCS, vol. 5016, pp. 21–53. Springer, Heidelberg (2008)
Storey, M.A.D., Fracchia, F., Müller, H.: Customizing a Fisheye View Algorithm to Preserve the Mental Map. Journal of Visual Languages and Computing 10(3), 245–267 (1999)
Wang, H.: Proving theorems by pattern recognition ii. Bell System Technical Journal 40, 1–40 (1961)
Turing, A.M.: On computable numbers with an application to the Entscheidungsproblem. Proceedings of the London Mathematical Society 42(2), 230–265 (1936)
Wang, S., Yang, A.: DNA solution of integer linear programming. Applied Mathematics and Computation 170(1), 626–632 (2005)
Winfree, E.: Toward molecular programming with DNA. SIGOPS Oper. Syst. Rev. 42(2), 1–1 (2008), doi:10.1145/1353535.1346282
Winfree, E., Eng, T., Rozenberg, G.: String tile models for DNA computing by self-assembly. In: DNA ’00: Revised Papers from the 6th International Workshop on DNA-Based Computers, London, UK, pp. 63–88. Springer, Heidelberg (2001)
Winfree, E., Yang, X., Seeman, N.C.: Universal computation via self-assembly of DNA: Some theory and experiments. In: DNA Based Computers II, volume 44 of DIMACS, pp. 191–213. American Mathematical Society (1996)
Wolfram, S.: A New Kind of Science, p. 1197. Wolfram Media (2002)
Winfree, E., Yang, X., Seeman, N.C.: Universal computation via self-assembly of DNA: Some theory and experiments. In: DNA Based Computers II, volume 44 of DIMACS, pp. 191–213. American Mathematical Society (1996)
Yan, H., Park, S.H., Finkelstein, G., Reif, J.H., Labean, T.H.: DNA-templated self-assembly of protein arrays and highly conductive nanowires. Science 301(5641), 1882–1884 (2003), http://dx.doi.org/10.1126/science.1089389 , doi:10.1126/science.1089389
Yin, P., Choi, H.M.T., Calvert, C.R., Pierce, N.A.: Programming biomolecular self-assembly pathways. Nature 451(7176), 318–322 (2008), http://dx.doi.org/10.1038/nature06451 , doi:10.1038/nature06451
Yin, P., Turberfield, A.J., Reif, J.H.: Design of an autonomous DNA nanomechanical device capable of universal computation and universal translational motion. In: Ferretti, C., Mauri, G., Zandron, C. (eds.) DNA 2004. LNCS, vol. 3384, pp. 426–444. Springer, Heidelberg (2005)
Yokomori, T., Kobayashi, S., Ferretti, C.: On the power of circular splicing systems and DNA computability. In: IEEE International Conference on Evolutionary Computation (1997), http://ylab-gw.cs.uec.ac.jp/./Papers/yokomori/cssfinal.ps.gz
Zhang, D.Y.: Dynamic DNA strand displacement circuits. Ph.D. thesis, California Institute of Technology (2010), http://resolver.caltech.edu/CaltechTHESIS:05262010-173410602
Zhu, Y., Ding, Y., Li, W., Kemp, G.: A proposed modularized dna computer, based on biochips. In: GEC ’09: Proceedings of the first ACM/SIGEVO Summit on Genetic and Evolutionary Computation, Shanghai, China, pp. 773–780. ACM, New York, NY, USA (2009), doi:10.1145/1543834.1543940
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Hartmann, L., Jones, N.D., Simonsen, J.G., Vrist, S.B. (2011). Computational Biology: A Programming Perspective. In: Agha, G., Danvy, O., Meseguer, J. (eds) Formal Modeling: Actors, Open Systems, Biological Systems. Lecture Notes in Computer Science, vol 7000. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24933-4_20
Download citation
DOI: https://doi.org/10.1007/978-3-642-24933-4_20
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-24932-7
Online ISBN: 978-3-642-24933-4
eBook Packages: Computer ScienceComputer Science (R0)