Iowa State University computer science researchers are translating programming design methods from computers to molecules.
When computer scientists start their programming with a plan for detecting and correcting potential errors, computer software becomes more dependable and secure. Computer scientists Robyn Lutz, Jack Lutz, Jim Lathrop and others in the Laboratory for Molecular Programming (LAMP) are working to implement this same planning approach into the design of machines made of DNA.
"Here, the computational system is molecular," said Robyn Lutz, a professor of computer science.
A decade ago, Paul Rothemund, a computer scientist at California Institute of Technology, showed how with careful design adding many little pieces of DNA to one big piece would fold the large piece into a desired shape. He called such directed self-assembly DNA origami.
"Because DNA has this capability, I call it an engineering code, you can mix all the right little pieces and they will find their partners and stick together like magic Velcro to build anything you want," said Eric Henderson, a professor of genetics, development, and cell biology and member of the LAMP team.
Because of this characteristic of DNA, combining the right selection of the DNA pieces allows for a self-assembling structure.
"It's like taking all the atoms that built this table, throwing them in a room, and there's a table there," Henderson said. "The atoms knew to build a table and not an automobile or a telephone or something else."
As DNA machines have become more sophisticated, potential uses have become more safety-critical. Henderson and his former grad student, Divita Mathur, published an article in the peer-reviewed Nature Scientific Reports, describing their design for an autonomous DNA nanomachine that could detect Ebola.
“First do no harm,” has long been a concept in medicine. The critical nature of medical applications that molecular programming will be used for motivates Iowa State’s unique partnership. LAMP’s research brings together molecular biology and computer science to design dependability into molecular programs from the start.
One example of a safety-monitoring concept that LAMP has translated to DNA usage is the "watchdog." In computer systems, a watchdog monitors whether a computer is still working, receiving a signal like a heartbeat. The watchdog listens for this signal. If the signal doesn't come on time, the watchdog "barks," sending an alert that something is wrong with the system it is monitoring.
Funded by the National Science Foundation, computer scientists in the LAMP team at Iowa State, including Ph.D. student Samuel Ellis and former Ph.D. student Titus Klinge, have designed a watchdog that can perform this same function in molecular systems. The molecular watchdog enables the safety of nanomachines to be monitored externally.
To do molecular programming, computer scientists must understand the behavior of the molecules and the environment in which they operate. While a computer programmer might use SQL, Java, or C++, Robyn Lutz and other molecular programmers use a chemical reaction network (CRN), a mathematical model of chemical reactions, as a high-level language for molecular programming. Code 'written' in this chemical reaction network language, can be automatically translated into DNA that builds desired structures and performs desired computations.
"It is sometimes called 'computing in soup' because the DNA strands float around in the test tube, binding only when matching strands bump into each other," Lutz said.
In a sense, these computer scientists are learning to do what our body already does. Inflammation, for example, happens when immune cells respond to signals of tissue injury by releasing substances that cause inflammatory responses.
"All the machinery in your body is already nanotechnology," Henderson said. "All the molecules in your body are precision, autonomous nanoscale machines doing very specific functions that are modulated by their environment, from the nanoscale to the whole organism."