Researchers at New York University’s Courant Institute of Mathematical Sciences have outlined a method for storing programs inside DNA that simplifies nanocomputing—computation at the molecular level. Co-authored by Jessie Chang and Dennis Shasha, Stored Clocked Programs Inside DNA: A Simplifying Framework for Nanocomputing (Morgan and Claypool) describes how to build millions of DNA programs from which instructions can be peeled away one at a time from each program in synchrony.
The motivation for this work is similar to that for stored programs inside your laptop. Before computers, there were mechanical calculators in which individuals would punch keys according to a procedure and a number would eventually appear. Once calculators became faster, it became clear that what needed improving was the punching process, not the rate of calculation. To do this, the first computer designers stored the programs containing “punching” instructions inside machines so they could run on their own. Once these instructions were stored, the entire computation could run at the speed of the machine.
Stored Clocked Programs Inside DNA offers a pathway for doing the same for DNA computing. While computers rely on data stored in strings of 0s and 1s, DNA—the building blocks of life—stores information in the molecules (“bases”) represented by A, T, C, and G. Two single strands of DNA will bind if every A in one strand is aligned with every T in the other and similarly for the Cs and Gs. If only some of the bases of strand s1 are aligned with their favorite partners in s2, then another strand s3 with better alignment will push s1 out of the way. This phenomenon of “displacement” allows researchers to create DNA sculptures and nanorobots. However, like hand-held calculators, DNA computing currently relies on pouring test tubes of DNA into a larger test tube of DNA, hindering its speed and rendering its use delicate.
In their book, Shasha and Chang offer a method to store DNA instructions inside a chemical solution in a way that allows the computation process to run according to a global clock consisting of special strands of DNA called “tick” and “tock.” Each time a “tick” and “tock” enter a DNA tube an instruction strand is released from an instruction stack. This is similar to the way a clock cycle in an electronic computer causes a new instruction to enter a processing unit. As long as there remain strands on the stack, the next cycle will release a new instruction strand. Regardless of the actual strand or component to be released at any particular clock step, the “tick” and “tock” strands remain the same—in effect, serving as an automated input device and doing away with manual data entry.
Aidan Daly, a Harvard undergraduate on a summer internship at NYU, worked with Shasha and Chang to test their construction process in the laboratory of NYU Chemistry Professor Nadrian Seeman, who founded and developed the field of DNA nanotechnology. Seeman’s creations—ranging from three-dimensional DNA structures to a DNA assembly line—allow him to arrange pieces and form specific molecules on a nanoscale with some precision, similar to the way a robotic automobile factory can be told what kind of car to make.
Shasha is a professor at NYU’s Courant Institute of Mathematical Sciences. His previous publications include Natural Computing: DNA, Quantum Bits, and the Future of Smart Machines (W. W. Norton & Company) and Out of Their Minds: The Lives and Discoveries of 15 Great Computer Scientists (Springer), both co-authored with Cathy Lazere. Chang recently obtained her master’s degree in mathematics from the Courant Institute.