Automata, Languages and Programming

While the topic of Molecular Computation would have appeared even a half dozen years ago to be purely conjectural, it now is an emerging subfield of computer science with the development of its theoretical basis and a number of moderate to large-scale experimental demonstrations. This paper focuses on a subarea of Molecular Computation known as DNA self-assembly. Self-assembly is the spontaneous self-ordering of substructures into superstructures driven by the selective affinity of the substructures. DNA provides a molecular scale material for effecting this programmable self-assembly, using the selective affinity of pairs of DNA strands to form DNA nanostructures. DNA self-assembly is the most advanced and versatile system known for programmable construction of patterned systems on the molecular scale. The methodology of DNA self-assembly begins with the synthesis of singlestrand DNA molecules that self-assemble into macromolecular building blocks called DNA tiles. These tiles have sticky ends that match the sticky ends of other DNA tiles, facilitating further assembly into large structures known as DNA tiling lattices. In principal you can make the DNA tiling assemblies form any computable twoor three-dimensional pattern, however complex, with the appropriate choice of the tile’s component DNA. This paper overviews the evolution of DNA self-assembly techniques from pure theory to experimental practice. We describe how some theoretical developments have made a major impact on the design of self-assembly experiments, as well as a number of theoretical challenges remaining in the area of DNA self-assembly. We descuss algorithms and software for the design, simulation and optimization of DNA tiling assemblies. We also describe the first experimental demonstrations of DNA self-assemblies that execute molecular computations and the assembly of patterned objects at the molecular scale. Recent experimental results indicate that this technique is scalable. Molecular imaging devices such as atomic force microscopes and transmission electron microscopes allow visualization of self-assembled two-dimensional DNA tiling lattices composed of hundreds of thousands of tiles. These assemblies can be used as scaffolding on which to position molecular electronics and robotics components with precision and specificity. The programmability lets this scaffolding have the patterning required for fabricating complex devices made of these components. John Reif is supported by DARPA/AFSOR Contract F30602-01-2-0561, NSF ITR Grant EIA-0086015, DARPA/NSF Grant CCR-9725021. P. Widmayer et al. (Eds.): ICALP 2002, LNCS 2380, pp. 1–21, 2002. c © Springer-Verlag Berlin Heidelberg 2002

[1]  Peter Bro Miltersen,et al.  Are bitvectors optimal? , 2000, STOC '00.

[2]  Amnon Ta-Shma,et al.  Loss-less condensers, unbalanced expanders, and extractors , 2001, STOC '01.

[3]  J. B. Wells Typability and type checking in the second-order Λ-calculus are equivalent and undecidable (Preliminary Draft) , 1993 .

[4]  Rasmus Pagh,et al.  On the cell probe complexity of membership and perfect hashing , 2001, STOC '01.

[5]  Simona Ronchi Della Rocca Principal Type Scheme and Unification for Intersection Type Discipline , 1988, Theor. Comput. Sci..

[6]  John C. Reynolds,et al.  Towards a theory of type structure , 1974, Symposium on Programming.

[7]  J. B. Wells Typability is Undecidable for F+Eta , 1996 .

[8]  Amos Fiat,et al.  Implicit O(1) Probe Search , 1993, SIAM J. Comput..

[9]  J. Ian Munro,et al.  Implicit Data Structures for Fast Search and Update , 1980, J. Comput. Syst. Sci..

[10]  Pawel Urzyczyn,et al.  Type reconstruction in Fω , 1997, Mathematical Structures in Computer Science.

[11]  Jitka Stríbrná Hardness results for weak bisimilarity of simple process algebras , 1998, Electron. Notes Theor. Comput. Sci..

[12]  Colin Stirling,et al.  Local model checking games (extended abstract) , 1995 .

[13]  Steffen van Bakel,et al.  Intersection Type Assignment Systems , 1995, Theor. Comput. Sci..

[14]  S. V. Bakel,et al.  Intersection type disciplines in Lambda Calculus and applicative term rewriting systems , 1993 .

[15]  Friedhelm Meyer auf der Heide,et al.  A New Universal Class of Hash Functions and Dynamic Hashing in Real Time , 1990, ICALP.

[16]  James H. Morris,et al.  Lambda-calculus models of programming languages. , 1969 .

[17]  Faith Ellen,et al.  Optimal bounds for the predecessor problem , 1999, STOC '99.

[18]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[19]  Benjamin C. Pierce,et al.  Bounded quantification is undecidable , 1992, POPL '92.

[20]  Simona Ronchi Della Rocca,et al.  Principal Type Schemes for an Extended Type Theory , 1984, Theor. Comput. Sci..

[21]  Gerth Stølting Brodal,et al.  Dynamic Representation of Sparse Graphs , 1999, WADS.

[22]  P. Hall On Representatives of Subsets , 1935 .

[23]  Michael L. Fredman,et al.  Surpassing the Information Theoretic Bound with Fusion Trees , 1993, J. Comput. Syst. Sci..

[24]  Rasmus Pagh A Trade-Off for Worst-Case Efficient Dictionaries , 2000, Nord. J. Comput..