25 March 2019

A new programming language

The first DNA-based programmable computer

Anatoly Alizar, Habr

Scientists have been experimenting with storing information in DNA and processing this information for a long time. For example, scientists from the University of Washington and Microsoft recently built the world's first "DNA hard drive". This design is capable of providing for the first time the recording and reading of information in DNA storage without human intervention. A very significant achievement, considering that DNA can record information with a density of 2.2 petabytes per gram. DNA is a compact container with a recording density thousands of times greater than that of existing media.

However, all existing DNA systems have a problem: all these are unique proprietary developments that completely lack any flexibility. If we compare it with silicon technology, then each group of researchers develops a new computer architecture from scratch, for which you need to write new software. But the situation may change thanks to the first programmable DNA computer developed at the University of California at Davis (UC Davis), the California Institute of Technology and the University of Maynooth.

reprogrammable_DNA1.jpeg

Experimental protocol and implementation of the sorting algorithm on a programmable DNA computer 

The first programmable computer based on DNA is described in a scientific article published on March 20, 2019 in the journal Nature (Woods et al., Diverse and robust molecular algorithms using reprogrammable DNA self-assembly). The authors have shown that using a simple trigger, the same basic set of DNA molecules is able to implement many different algorithms. Although the study is a purely laboratory experiment, programmable molecular algorithms can be used in the future, for example, to program DNA robots that have already successfully delivered drugs to cancer cells.

"This is one of the landmark works in this field," he says Torsten is Lars Schmidt, an associate professor of experimental biophysics at Kent State University, who was not involved in the research. "Algorithmic self—assembly has already been demonstrated before, but not to such a degree of complexity."

In electronic computers, bits are binary units of information. They represent a discrete physical state of the underlying equipment, for example, the presence or absence of an electric current. These bits, or rather electrical signals, are passed through circuits consisting of logic gates that perform an operation on one or more input bits and produce one bit as an output.

By combining these simple building blocks over and over again, computers can run surprisingly complex programs. The idea of DNA computing is to replace electrical signals with chemical bonds, and silicon with nucleic acids to create biomolecular software. 

reprogrammable_DNA2.png

Abstract hierarchy of architecture and practical implementation of the complete 6-bit IBC logic circuit (Iterated Boolean Circuit)

According to Eric Winfrey, a scientist at the California Institute of Technology and co-author of the article, molecular algorithms use the natural possibilities of processing information in DNA, but instead of allowing nature to take the reins in their own hands, calculations in DNA are made in accordance with a program written by a person.

Over the past 20 years, several successful experiments have been conducted with molecular algorithms, for example, for playing tic-tac-toe or assembling molecules of various shapes. In each case, careful development of the DNA sequence was required in order to execute one specific algorithm that would generate the DNA structure. In this case, the difference is that the researchers have developed a system in which the same basic DNA fragments can be ordered to create completely different algorithms — and, consequently, to obtain completely different results.

The process begins with the DNA origami technique, that is, folding a long chain of DNA into the desired shape. This folded piece works like a seed that runs an algorithmic assembly line. Seed remains virtually unchanged, regardless of the algorithm. For each experiment, only small changes are made to it in several sequences.

reprogrammable_DNA3.png

Reprogramming the logic circuit

After the "seed" is created, it is added to the solution with hundreds of other strands of DNA, known as DNA tiles. Scientists have developed 355 such tiles. Each has a unique arrangement of nitrogenous bases. Accordingly, for each algorithm, the researchers simply choose a different set of starting tiles. Since these DNA fragments are connected during assembly, they form a circuit that implements the selected molecular algorithm on the input bits provided by the "seed". Using this system, the researchers developed and tested 21 algorithms to perform tasks such as division by three recognition, leader selection, pattern generation and counting from 0 to 63. All these algorithms are implemented using different combinations of the same 355 DNA tiles.

Of course, it's not easy to write code by dumping DNA fragments into a test tube, but if you automate the process, future molecular programmers won't even have to think about biomechanics, as today's programmers don't necessarily need to understand the physics of transistors to write good programs.

Portal "Eternal youth" http://vechnayamolodost.ru


Found a typo? Select it and press ctrl + enter Print version