From the synthetic biologist’s point of view, living cells are biological computers, and the ultimate code isn’t binary, but tertiary, a stream of A’s, T’s, C’s, and G’s. But tinkering with this code, so as to generate alternative or supplementary biological circuitry, has been tedious and time-intensive, requiring the manual assembly of parts and the trial-and-error balancing of potentially conflicting functions. In the programming of life’s code, unlike the programming of computer code, nothing like application programming interfaces, application generators, or even programming languages have been available—until now.
Biological engineers based at Massachusetts Institute of Technology (MIT) report that they have created a programming language that allows even biology’s newbies to rapidly design complex, DNA-encoded circuits that give new functions to living cells. These engineers, under the leadership of MIT’s Christopher Voigt, Ph.D., based their language on Verilog, which is commonly used to program computer chips.
After the Verilog code is generated in a design environment called Cello (Cellular Logic), it is automatically transformed to a DNA sequence. Algorithms build a circuit diagram, assign and connect gates, and stimulate performance. Additional details appeared April 1 in the journal Science, in an article entitled, “Genetic Circuit Design Automation.”
Dr. Voigt and colleagues at Boston University and the National Institute of Standards and Technology have used this language to build circuits that can detect up to three inputs and respond in different ways. Future applications for this kind of programming include designing bacterial cells that can produce a cancer drug when they detect a tumor or creating yeast cells that can halt their own fermentation process if too many toxic byproducts build up.
“We used Cello to design 60 circuits for Escherichia coli (880,000 base pairs of DNA), for which each DNA sequence was built as predicted by the software with no additional tuning,” wrote the article’s authors. “Of these, 45 circuits performed correctly in every output state (up to 10 regulators and 55 parts), and across all circuits 92% of the output states functioned as predicted.”
Many of the circuits were designed to measure one or more environmental conditions, such as oxygen level or glucose concentration, and respond accordingly. Another circuit was designed to rank three different inputs and then respond based on the priority of each one. Finally, one of the new circuits is the largest biological circuit ever built, containing seven logic gates and about 12,000 base pairs of DNA.
The biggest challenge, Dr. Voigt said, was designing the logic gates used in the circuits so that they wouldn’t interfere with each other once placed in the complex environment of a living cell.
“Reliable circuit design requires the insulation of gates from genetic context, so that they function identically when used in different circuits,” the article’s authors explained. “Design automation simplifies the incorporation of genetic circuits into biotechnology projects that require decision-making, control, sensing, or spatial organization.”
In the current version of the programming language, these genetic parts are optimized for E. coli, but the researchers are working on expanding the language for other strains of bacteria, including Bacteroides, commonly found in the human gut, and Pseudomonas, which often lives in plant roots, as well as the yeast Saccharomyces cerevisiae. This would allow users to write a single program and then compile it for different organisms to get the right DNA sequence for each one.
Dr. Voigt’s team plans to work on several different applications using this approach—bacteria that can be swallowed to aid in digestion of lactose; bacteria that can live on plant roots and produce insecticide if they sense the plant is under attack; and yeast that can be engineered to shut off when they are producing too many toxic byproducts in a fermentation reactor.