DNA Computation

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

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.

If you liked this article, please give it a quick review on ycombinator or StumbleUpon. Thanks

DNA Computation

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

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.

If you liked this article, please give it a quick review on ycombinator or StumbleUpon. Thanks