Kurzweil snipes "It is an argument from information theory, which Myers obviously does not understand." With some delight, I would like to explain how Kurzweil incorrectly uses information theory and arrives at a false conclusion.

In fairness, I'll also explain why Kurzweil's main thesis appears to be unassailably correct - albeit mainly because, in the end, he makes only quite weak and uncontroversial claims.

(For biological criticisms of Kurzweil, see "knowtheory"'s comment.)

Kurzweil seeks to establish an upper bound on a quantity he calls "the amount of information in the brain prior to the brain’s interaction with its environment."

He is not terribly precise about how that quantity is to be defined. He does tell us that his upper bound will show that the "design" of the brain isn't very complicated and that it will not require "trillions of lines of code to create a comparable system".

To establish his "amount of information" upper bound he looks at the number of "bits" in a complete human genome. A human genome contains about three billion base pairs. Each base pair position can have one of four possible values (e.g., contains two bits of information). Thus he comes up 6 billion bits overall, around 715 Megabytes (he says 800), and he points out that genomes are far from random and asserts that the whole thing can be compressed down to, perhaps, 50 Megabytes.

Apparently we are to believe that the amount of "code" needed to build a system "comparable" to the brain can not possibly be "trillions of lines" because the genome does it in less than 50 megabytes.

A zygote, in other words is a machine. It runs the code in the DNA. The code tells how to build a brain. Our simulator will be some kind of programmable system. We'll supply it with code. The code will tell it how to make or simulate a brain-like thing. If a zygote does it with a mere 50MB of code, our machine will as well.

It is just there, in that last step, that Kurzweil invokes a fallacy. In general, if you have two different kinds of machines, and you want to program each to compute the same result -- upper bounds on the program size on machine tell you nothing about the the upper bounds on the other machine.

That is why, for example, when Chaitin lectures about Omega he is always mumbling "relative to some choice of turing machine" (at least initially, until it is then understood to apply throughout the talk).

If all you know is that the zygote machine and our simulator machine are two machines - program size on the zygote tells you nothing about program size on the simulator.

There is, in other words, no abstract quantity that describes "the complexity of the design of the brain". Information theory does not recognize any such concept. There is no such thing as the irreducible complexity of a program other than relative to a particular machine.

The upper bound from the zygote could actually translate to our simulation machine if we agree that the simulator will operate on principles essentially the same as the zygote. Alas, Kurzweil says the opposite: "I did not present studying the genome as even part of the strategy for reverse-engineering the brain. [....] It is not a proposed strategy for accomplishing reverse-engineering [....]"

Kurzweil has to give up either the relevancy of the size of the genome, or his denial that we'll build a machine that operates on similar principles to a zygote (or on principles that can be proved computationally similar to a zygote). Either way, he should not be looking down at Myers' understanding of information theory.

All of that said, if you strip out his hype his only substantial claims seem to be that we'll build hardware that can run neural network software very efficiently (perhaps in real time for brain-scale networks) and that we'll get clues about useful network topologies from looking at brains.

That, my friends, is a perfect message for a "futurist" to deliver to a dazzled audience because, well, to many of us it is what you call "very old, somewhat boringly obvious news".