Xeno-nucleic acids and biological computation.

08 September 2012

Disclaimer: I am not a geneticist. If I got some bits wrong let me know and I'll correct my post.

It is a basic fact that DNA (deoxyribonucleic acid) is the fundamental mechanism of complex life on this planet. DNA encodes the structure of every protein used by complex life in much the same way that a Turing machine would use a paper or magnetic tape to store data. The codon (triplet of base pairs) ATG means that the amino acid methionine goes first, the codon TCT means that serine goes next, then histidine, and so on and so forth until a stop codon is reached and a protein has been assembled. There are only four base pairs found in nature on this planet: Adenine, thymine, cytosine, and guanine. The first two only bond with one another, likewise the second two. That doesn't sound like much, there are only four possible states for individual base pairs, but the computer you're using right now to read this post does a lot more with half that (computers use binary numbers for everything internally).

The field of synthetic biology involves the construction of genetic components that are not naturally occurring in nature. Thus far we've used components we already understand to make entire bacterial genomes from scratch, and then fabricate artificial chromosomes in vitro. More recently biotechnology has experimented with xeno-nucleic acids - new compounds that aren't nucleic acids but carry out the same functions to add more characters to the symbol set of DNA. To put it another way, XNA is not limited to four characters. Six xeno-nucleic acids have been developed which increases the possible symbol set to ten characters. A greater number of values can potentially be represented by a single base pair of XNA. This means that new compounds - different proteins or other compounds entirely can be encoded in XNA, and potentially be made a part of brand new forms of life. Even more interesting, it was recently proven that XNA is subject to genetic mutation and the laws of heredity, just like DNA. As if that's not enough, synthetic biologists have engineered enzymes that can synthesize DNA from an XNA template and vice versa, given a sufficient concentration of nucleotides and base pairs.

Around the same time as the publication of that paper, another research paper was published by a research team at Stanford in which they've figured out how to treat DNA like RAM in a computer. While they haven't perfected the technique yet, they figured out how to engineer bacterial DNA where it is possible to snip out a sequence of DNA of arbitrary length and flip it end-over-end. One orientation represents a 0, the other represents a 1. They've figured out how to do this up to sixteen times per sequence, and it places no additional metabolic cost upon the cell so the energy requirements remain the same. Interestingly, the anti-corruption and repair mechanisms inherent in DNA have not yet been detected corrupting the stored data.

I can't be the only person out there wondering what will happen if these two developments are ever implemented in concert. The latter shows that biological computing is certainly possible, the former suggests that it might be made reliable in vivo as well as in vitro. XNA has been determined to be much less fragile than DNA is outside of cell nuclei, which is why great care is taken by researchers studying it. Computational DNA sequences can't be frobbed more than sixteen times yet. So, from where I'm sitting it might be possible to use XNA for biological computation because of its greater resilience. Now, I have no idea what you'd use such a computational mechanism for because Von Neumann architecture computers are much easier to use for crunching numbers, but perhaps that sort of processing power could be leveraged by engineered biological structures on the macro scale (synthetic organs) as part of their basic functioning.