Kurzweil makes an interesting claim—he claims that, because of information theory, the smallest program which can emulate a human brain is likely to be (not much larger than) the compressed size of the human genome. This doesn’t say anything about how easy it would be to actually write this program, or the computing power needed to run it. Also, it assumes that the emulated brain would be exposed to a similar kind of environment that a human would be.
I think that Kurzweil is right here, but I have trouble explaining exactly why I think that. And other people disagree. Any thoughts on this? I may write a LW discussion post on this.
(I don’t know whether this particular claim is in the book as I haven’t read it yet).
I agree with the information theoretical claim, and I think you could prove it with the usual language-to-language argument for Kolmogorov complexity; the gist: the brain is the result of a program written in DNA for a certain extremely complex language known as ‘the human body’, which when run, takes an extremely complex input known as ‘life’ (all of which can be modeled in binary thanks to the universe apparently being computable). We want to translate the program written in DNA to a program written in x86; both are languages, so the translation only requires a certain fixed-length prefix interpreting the DNA for x86.
I take your link as agreeing that it works in theory but disagreeing about the practice: ‘yeah, but all of those parts are extremely extremely complex and that fixed-length prefix is a really big prefix which we aren’t even close to writing, and X and Y and Z; hence, Kurzweil’s forecasts are way off and ridiculously optimistic’. Notice he doesn’t talk in terms of it being impossible, period, but rather of missing parts and explanations of how something will be accomplished:
I presume they understand that if you program a perfect Intel emulator, you don’t suddenly get Halo: Reach for free, as an emergent property of the system. You can buy the code and add it to the system, sure, but in this case, we can’t run down to GameStop and buy a DVD with the human OS in it and install it on our artificial brain. You’re going to have to do the hard work of figuring out how that works and reverse engineering it, as well. And understanding how the processor works is necessary to do that, but not sufficient.
(Having the fixed-length interpreter for the DNA program is necessary but not sufficient; having the input for the program is necessary but not sufficient; etc.)
This is the other case where I think Kurzweil is just in error.
The number of bits that it takes to encode DNA given “the language of the human body” is small, but how many bits to encode the language of the human body, and the language of cells, and the language of chemistry, and the language of the biome?
I can encode wikipedia with one digital bit, if I allow Wikipedia as one of the units in which I am encoding, and keep that complexity off the books. That’s what Ray is doing here—keeping the complexity of atoms and molecules and cells and biomes “off the books”.
You can do that as long as you’re able to deal with the complexity of the final translation from your digitial world to your problem domain yourself. If your problem domain is entirely digital, and you just want a simulated brain to work in your simulated digital world, the information content of intelligence would be less than the information content of your virtual DNA given a digital world with the complexity to simulate atoms and molecules and cells..., but we aren’t given that digital world.
In the meat world, you could create intelligence by fabricating DNA a piece at time, inserting it into a human cell, implanting that in a woman, and waiting for 9 months. Or, you could go the old fashioned manual route of inserting dna into human eggs without any information complexity at all related to human dna. But either method relies on the information content in the world to provide the language that converts our information and intent into an intelligence, and I think the point of an AI is to get beyond the reliance on either of these methods of translation.
I think for the claim to make sense, you need to be able to do it without the “interpreting the DNA for x86” component. It seems very likely that such a thing would be way larger than the genome itself (i.e. the “really big prefix” that you mentioned). So I’m not sure in what sense you agree with the information theoretical claim? We’re talking about a particular genome, not the general trend as genome size → infinity.
I don’t follow. If it’s true for genomes in general, then it’s true for particular genomes. Real-world genomes may be small enough that it is not useful in practice, but the theory is still true.
Kurzweil makes an interesting claim—he claims that, because of information theory, the smallest program which can emulate a human brain is likely to be (not much larger than) the compressed size of the human genome. This doesn’t say anything about how easy it would be to actually write this program, or the computing power needed to run it. Also, it assumes that the emulated brain would be exposed to a similar kind of environment that a human would be.
I think that Kurzweil is right here, but I have trouble explaining exactly why I think that. And other people disagree. Any thoughts on this? I may write a LW discussion post on this.
(I don’t know whether this particular claim is in the book as I haven’t read it yet).
I agree with the information theoretical claim, and I think you could prove it with the usual language-to-language argument for Kolmogorov complexity; the gist: the brain is the result of a program written in DNA for a certain extremely complex language known as ‘the human body’, which when run, takes an extremely complex input known as ‘life’ (all of which can be modeled in binary thanks to the universe apparently being computable). We want to translate the program written in DNA to a program written in x86; both are languages, so the translation only requires a certain fixed-length prefix interpreting the DNA for x86.
I take your link as agreeing that it works in theory but disagreeing about the practice: ‘yeah, but all of those parts are extremely extremely complex and that fixed-length prefix is a really big prefix which we aren’t even close to writing, and X and Y and Z; hence, Kurzweil’s forecasts are way off and ridiculously optimistic’. Notice he doesn’t talk in terms of it being impossible, period, but rather of missing parts and explanations of how something will be accomplished:
(Having the fixed-length interpreter for the DNA program is necessary but not sufficient; having the input for the program is necessary but not sufficient; etc.)
This is the other case where I think Kurzweil is just in error.
The number of bits that it takes to encode DNA given “the language of the human body” is small, but how many bits to encode the language of the human body, and the language of cells, and the language of chemistry, and the language of the biome?
I can encode wikipedia with one digital bit, if I allow Wikipedia as one of the units in which I am encoding, and keep that complexity off the books. That’s what Ray is doing here—keeping the complexity of atoms and molecules and cells and biomes “off the books”.
You can do that as long as you’re able to deal with the complexity of the final translation from your digitial world to your problem domain yourself. If your problem domain is entirely digital, and you just want a simulated brain to work in your simulated digital world, the information content of intelligence would be less than the information content of your virtual DNA given a digital world with the complexity to simulate atoms and molecules and cells..., but we aren’t given that digital world.
In the meat world, you could create intelligence by fabricating DNA a piece at time, inserting it into a human cell, implanting that in a woman, and waiting for 9 months. Or, you could go the old fashioned manual route of inserting dna into human eggs without any information complexity at all related to human dna. But either method relies on the information content in the world to provide the language that converts our information and intent into an intelligence, and I think the point of an AI is to get beyond the reliance on either of these methods of translation.
Like the link, I read you as agreeing the argument is true but not useful.
I think for the claim to make sense, you need to be able to do it without the “interpreting the DNA for x86” component. It seems very likely that such a thing would be way larger than the genome itself (i.e. the “really big prefix” that you mentioned). So I’m not sure in what sense you agree with the information theoretical claim? We’re talking about a particular genome, not the general trend as genome size → infinity.
I don’t follow. If it’s true for genomes in general, then it’s true for particular genomes. Real-world genomes may be small enough that it is not useful in practice, but the theory is still true.