Pioneering work of Seeman, Winfree, and Rothemund has raised the prospect of engineering useful structures and devices that autonomously assemble themselves from molecular components. Developing this capability will have transformative benefits for medicine, information technology, manufacturing, energy production, and other enterprises of twenty-first century society. In this project a team of scientists with expertise in self-assembly, software engineering, formal verification, programming languages, theory of computing, biochemistry, and molecular biology will explore the power and limitations of this "programming of matter" at the nanoscale.
The central thesis of this project is that methods that software engineers and theoretical computer scientists have developed for creating, controlling, and reasoning about software, hardware, networks, and environments of immense complexity will be an essential starting point for dealing with the greater challenges that nanotechnology will confront. The project will investigate applications of computational modeling, algorithmic randomness, requirements engineering, product lines, software verification, and software safety to DNA tile assembly, DNA origami, and DNA strand-displacement reactions. The project will conclude with a clear assessment--hopefully a compelling proof of concept--of the applicability and adaptability of software engineering methods in molecular programming and nanoscale self-assembly.
The project will contribute to a rigorously reasoned, verification- and safety-oriented approach to the social benefits of nanoscale self-assembly. It will strengthen software engineering methods as it adapts them to challenging new domains. It will enhance interdisciplinary science education at Iowa State University and nearby Simpson College, and it will provide web-accessible educational materials for such activities elsewhere.
Nanotechnology, the control of matter at atomic and molecular scales, promises transformative benefits for medicine, information technology, manufacturing, energy production, and other enterprises of twenty-first century society. A promising method for such control is algorithmic self-assembly, which programs molecular components to autonomously assemble themselves into useful structures and devices. The research and educational activities in this project had three intertwined components: 1. The research developed and investigated mathematical models of molecular programming and self-assembly, focusing on models of DNA tile assembly, DNA origami, and DNA strand-displacement reactions. The power and limitations of these models were studied using methods from the theory of computing, and their correspondence with molecular reality assessed. 2. The methods that software engineers have developed for creating, controlling, and reasoning about software, hardware, networks, and environments of immense complexity provide a natural starting point for dealing with some of the challenges of molecular programming. The project investigated the use of of requirements engineering and software verification methods to make DNA nanodevices more productive and predictable. The project provided a proof of concept of the applicability and adaptability of requirements engineering methods to assist understanding of DNA nanodevices. It defined an approach for demonstrating that the algorithmic self-assembly model used to build the nanoscale structures satisfies its key requirements. It also showed that product-line techniques improved the modeling and analysis of requirements for a new nanodevice in a product family by supporting reuse. The research activities also strengthened software engineering methods as it adapted them to the challenges of this new domain. 3. The project had a substantial educational component, cross-training graduate and undergraduate students in computer science and molecular programming. The Iowa State University team held joint meetings and workshops with faculty and students at nearby Simpson College, an undergraduate institution, to discuss research progress and curricular materials, including tutorials on self-assembly and strand displacement simulators.