Hacker News new | ask | show | jobs
by sowbug 859 days ago
Stuff like this makes me believe that the entirety of life really could be encoded in DNA. I've read that if you gzipped the human genome, the file would be about 4MB, which intuitively seems too small to represent a human. But if this behavior can emerge from 256 bytes, then clearly my intuition is off.
5 comments

4MB are enough to discriminate between 2^(3.2 * 10^7) possible states. Suppose you have a decompressor that can interpret a percent of a percent of a percent of a percent of those states as functional lifeforms. There are about a trillion species on the planet[1]; let's say there are a trillion times as many potential species that don't currently exist and a trillion variations within each. And then let's multiply by another trillion for good measure. Wolfram Alpha tells me[2] we've left a margin of error of roughly* ten to the ten million.

[1]https://www.nsf.gov/news/news_summ.jsp?cntn_id=138446

[2]https://www.wolframalpha.com/input?i2d=true&i=Divide%5BPower...

*'roughly' in the sense that a mountain range is roughly coarse sandpaper, but too round not to round to

Even a SHA-256 hash would leave 10^31 margin of error. The "percent of a percent of a percent of a percent" part is sweeping a lot under the proverbial rug here ;)
Is a misconception that DNA is enough by itself to replicate a living being, there are biological bases in the embryon that need to be pass down from the parent as biological infraestructure for the new being to form.
You're absolutely correct, just as you'd be correct to observe that these 256 bytes require a fairly complex software platform running on fairly complex hardware.

And all these things, including us, operate within the fabric of the universe, whose complexity is only beginning to be understood.

But in theory, would it be possible to genetically engineer a simple life form, like a bacteria, to eventually produce a human, in a process similar to the kind of metamorphosis you see in insects. Of course, this the bootstrapping code would take quite some space, but if we could do that (at least in theory), it essentially means that all you need to make practically any living being is a single generic cell and a few megabytes worth of data encoded as DNA.

I mean, when we get infected by a virus, our cells are able to produce a completely different life form (if you consider viruses life forms), so why not going from a bacteria (which can also be infected by viruses) to a mammal. It will obviously take a lot more code, and evolution can't get us there, but the idea is similar.

You may be interested in an article posted to HN a few days ago that argues against the conception of DNA as code and of cells as computers or machines.

https://www.nature.com/articles/d41586-024-00327-x

Life generated from DNA in a vacuum would probably be pretty boring. The entirety of life requires some surroundings to interact with, and as it stands there is but one of those, and singular things don't compress well.

Also, have a look at the Mandelbrot set again. There's quite a lot of information in, arguably, a very modest process.

And finally, to suggest that these 256 bytes are less impressive than they are, consider what hardware and software is needed to support it. These 256 bytes would not lead to the same illusion on a C64.

> There's quite a lot of information in, arguably, a very modest process.

But quite low in Kolmogorov complexity.

It could be a 4 megabyte-long seed for a random generator.