Biomolecular computation and synthetic biology are the main disciplines in the design and implementation of biological computing devices. This article examines some of the key works concerning this type of logical devices processing biological information. Their design and construction follow two main approaches. The first approach builds computing devices based on the properties of nucleic acids, whereas the second approach focuses on genetic regulatory networks. Examples of the nucleic acid based approach are DNA self-assembly, DNA automata based on restriction enzymes or deoxyribozymes and logic circuits based on DNA strand displacement. Examples of the use of genetic networks are NOT, AND and OR logic gates, a genetic toggle switch that works like a biological memory unit, and several genetic oscillators that work as biological clocks.
Keywords: DNA computing, biomolecular computation, synthetic biology, genetic circuit, strand displacement, molecular automata, nucleic acids, enzymes, DNA molecules, Genetic Oscillators