The goal of my research is to control the structure and dynamics of molecular systems at the nanoscale and to determine the fundamental limitations of this endeavor. A major unanswered challenge is to design molecular-scale systems with arbitrary structure and dynamics that consist of millions of simple interacting components and yet are robust to erroneous interactions, fluctuations in temperature, fluid flows and other uncontrolled factors. DNA is a versatile and programmable material that can meet these daunting criteria. The kinetics and thermodynamics of DNA are reasonably well-understood, and through straightforward Watson-Crick base-pairing interactions we can program this material to create complicated shapes and patterns, and to have intricate, even algorithmic, chemical dynamics, all at nanometer spatial resolution. The theory of computation will be a necessity to design and analyze the capabilities of such systems.
In this talk I will highlight some of my recent work on the theory and practice of programming molecules. Ongoing experimental work in the wet-lab includes building a DNA-based self-replicator capable of multiple generations of replication. Theoretical work involves developing a framework, or a complexity theory, for comparing self-assembly systems and knowing when one system is better than another. The talk will show how computer science and biology can inspire our molecular designs, and how we can use mathematical and algorithmic tools to control a cacophony of interacting molecules by simply letting them interact in a hands-off self-assembling fashion.