For some time, I’ve been looking for a way of communicating to Darwinists, in their own language, just how problematic the whole idea of neo-Darwinian evolution is. A couple of months ago, I had the good fortune to listen to a talk posted on Youtube, entitled, Life as Evolving Software. The talk was given by Professor Gregory Chaitin, a world-famous mathematician and computer scientist, at PPGC UFRGS (Portal do Programa de Pos-Graduacao em Computacao da Universidade Federal do Rio Grande do Sul.Mestrado), in Brazil, on 2 May 2011. I was profoundly impressed by Professor Chaitin’s talk, because he was very honest and up-front about the mathematical shortcomings of the theory of evolution in its current form. As a mathematician who is committed to Darwinism, Chaitin is trying to create a new mathematical version of Darwin’s theory which proves that evolution can really work. Next year, Professor Chaitin will be publishing a book entitled, Proving Darwin: Making Biology Mathematical (Pantheon, forthcoming May 2012, ISBN: 978-0-375-42314-7), which I would strongly urge Uncommon Descent readers to go out and buy, as I’m sure it will contain plenty of food for thought.
In September 2011, Professor Chaitin wrote an online paper with the same title as the talk he gave in May, but written for people with a strong mathematical background. In today’s post, I won’t be discussing Chaitin’s mathematical paper. I’d prefer to focus on the non-technical presentation which Chaitin gave in his talk in May. However, I was struck by the fact that in his paper, Chaitin candidly admits that “there is no fundamental mathematical theory inspired by Darwin’s theory of evolution.” He then cites no less than nine references to back up this assertion, the first of which is The Devil’s Delusion by Dr. David Berlinski, a man who surely needs no introduction to regular readers of this blog. Clearly, Gregory Chaitin is a man who reads widely and is not afraid to confront the problems raised by the critics of neo-Darwinian evolution.
For people who don’t like reading long posts, here is a short nine-point summary of what Professor Chaitin said in his talk, concerning Darwinism and Intelligent Design.
1. DNA really is a kind of programming language. In fact, Professor Chaitin believes it’s a universal programming language.
2. Building on the work on John Maynard Smith, Chaitin claims that life itself is evolving software, and that biology can be defined as the study of ancient software – software archaeology, if you like.
3. At the present time, there is no adequate mathematical theory of Darwinian evolution. In fact, even the possibility of evolution being able to continue indefinitely without grinding to a halt (which is absolutely fundamental to Darwin’s theory) had not been mathematically demonstrated before Chaitin did his research.
4. Unfortunately, the genes of modern organisms are too complicated and too messy to use, if you want to create a mathematical model which rigorously demonstrates the possibility of evolution. Instead, a simplified “toy model” is required in order to rigorously demonstrate that evolution can go on forever, without grinding to a halt.
5. Of necessity, this “toy model” of evolution is extremely unrealistic. For example, in Chaitin’s toy model, life itself isn’t even embodied (it’s purely software), there’s no population, there’s only one organism and there’s no sex. As a mathematician, Chaitin believes that if you try to make his toy model much more realistic and true to life, you won’t be able to prove anything with it, mathematically, so there’s a trade-off.
6. Even Chaitin’s toy model requires something called a Turing oracle to make evolution work. A Turing oracle means that the model is being directed by an outside intelligent source answering Yes-No questions which enable the model to proceed. So Chaitin’s work fails to show that an Intelligent Being is not required for evolution to work.
7. Chaitin looks at three kinds of evolution in his toy model: exhaustive search (which stupidly performs a search of all possibilities in its search for a mutation that would make the organism fitter, without even looking at what the organism has already accomplished), Darwinian evolution (which is random but also cumulative, building on what has been accomplished to date) and Intelligent Design (where an Intelligent Being selects the best possible mutation at each step in the evolution of life). All of these – even exhaustive search – require a Turing oracle for them to work – in other words, outside direction by an Intelligent Being. In Chaitin’s own words, “You’re allowed to ask God or someone to give you the answer to some question where you can’t compute the answer, and the oracle will immediately give you the answer, and you go on ahead.”
8. Of the three kinds of evolution examined by Turing, Intelligent Design is the only one guaranteed to get the job done on time. Darwinian evolution is much better than performing an exhaustive search of all possibilities, but it still seems to take too long to come up with an improved mutation.
9. Even if Chaitin could prove that Darwinian evolution can work in the time available, his model still says nothing about the evolution of life. It simply takes life for granted.
In what follows, I’ve transcribed brief excerpts from Professor Chaitin’s talk, given in May 2011, under several headings, so that readers can follow the logic of his argument. (Note: The excerpts below broadly follow the sequence of Chaitin’s talk, but not always.)
A. The mathematical inadequacy of Darwin’s theory
[W]hat I want to do is make a theory about randomly evolving, mutating and evolving software – a little toy model of evolution where I can prove theorems, because I love Darwin’s theory, I have nothing against it, but, you know, it’s just an empirical theory. As a pure mathematician, that’s not good enough.
B. What Chaitin is trying to do
I’m trying to create a new field, and I’d like to invite you all to leap in, join [me] if you feel like it. I think we have a remarkable opportunity to create a kind of a theoretical mathematical biology…
So let me tell you a little bit about this viewpoint … of biology which I think may enable us to create a new … mathematical version of Darwin’s theory, maybe even prove that evolution works for the skeptics who don’t believe it …
I don’t want evolution to stagnate, because as a pure mathematician, if the system evolves and it stops evolving, that’s like it never evolved at all…I want to prove that evolution can go on forever.
C. Living things really do contain software
[P]eople often talk about DNA as a kind of programming language, and they mean it sort of loosely, as some kind of metaphor, and we all know about that metaphor. It’s especially used a lot, I think, in evo-devo. But it’s a very natural metaphor, because there are lots of analogies. For example, people talk about computer viruses. And another analogy is: there is this sort of principle in biology as well as in the software world that you don’t start over. If you have a very large software project, and it’s years old, then the software tends to get complicated. You start having the whole history of the software project in the software, because you can’t start over… You … can try adding new stuff on top…
So the point is that now there is a well-known analogy between the software in the natural world and the software that we create in technology. But what I’m saying is, it’s not just an analogy. You can actually take advantage of that, to develop a mathematical theory of biology, at some fundamental level.
D. DNA really is a kind of programming language
Here’s basically the idea. We all know about computer programming languages, and they’re relatively recent, right? Fifty or sixty years, maybe, I don’t know. So … this is artificial digital software – artificial because it’s man-made: we came up with it. Now there is natural digital software, meanwhile, … by which I mean DNA, and this is much, much older – three or four billion years. And the interesting thing about this software is that it’s been there all along, in every cell, in every living being on this planet, except that we didn’t realize that … there was software there until we invented software on our own, and after that, we could see that we were surrounded by software.
E. DNA is a universal programming language
So this is the main idea, I think: I’m sort of postulating that DNA is a universal programming language. I see no reason to suppose that it’s less powerful than that. So it’s sort of a shocking thing that we have this very very old software around…
F. Life is evolving software
So here’s the way I’m looking at biology now, in this viewpoint. Life is evolving software. Bodies are unimportant, right? The hardware is unimportant. The software is important….
So let me mention by the way that in case some of you like bodies and metabolism, to justify throwing the body away, metabolism away – as a theoretician, of course, it’s easy to justify, you know, “Consider a spherical elephant” is a typical beginning of a math paper that doesn’t exist, but that’s the spirit of pure mathematics sometimes. Anyway, the idea is, there is a discussion by John Maynard Smith, a wonderful population geneticist, in 1986, in a book called “The Problems of Biology”, of a whole chapter. He’s saying, “What is life? How can we define life?” And he says, well the obvious definition is: a living being has a metabolism. Chemicals go in, chemicals go out, the organism maintains its structure – and that’s the metabolism.Plus, it reproduces itself. And he says, “Well, that’s the obvious definition, right?” and he says, “But it’s not a good definition.”… And he gives the example of a flame. A flame will reproduce itself – it has oxygen and stuff going in … but it’s not alive and it won’t evolve, because it has no heredity. A flame doesn’t remember if it was started with a match, with a cigarette lighter, from a forest fire – it has no heredity and therefore it will not evolve. So he says, Maynard Smith, a deeper definition of life is a system which has heredity and mutations and can evolve. In other words it may sound a little bit circular, but basically, John Maynard Smith is saying that we define life as something that evolves according to Darwin’s theory of evolution. Now this may seem that it’s totally circular reasoning, but it’s not. It’s not that kind of reasoning, because the whole point, as a pure mathematician, is to prove that there is something in the world of pure math that satisfies this definition – you know, to invent a mathematical life-form in the Pythagorean world that I can prove actually does evolve according to Darwin’s theory, and to prove that there is something which satisfies this definition of being alive. And that will be at least a proof that in some toy model, Darwin’s theory of evolution works – which I regard as the first step in developing this as a theory, this viewpoint of life as evolving software.
G. Biology is software archaeology
And biology would then be a kind of a field of looking at very very old software and trying to figure out what’s there. So it’s software archaeology, in my opinion. You’re looking at this very old software, this very complicated messed up software… And there’s a field that does this, called evo-devo – evolutionary developmental biology – which is the question of how the embryo develops, and the software, the DNA that is for this. And let me recommend a very nice book by Neil Shubin about this. There’s an article in “Scientific American” [about it]. It’s a book [called] “Your Inner Fish”…
There’s a lot of things in a human being which are basically left-over from when we were fish, as Neil Shubin points out in his book, and you sort of make the minimum changes to turn a fish into a mammal, and if you could start over the design would be a lot better. There are a lot of strange things in designs, things that make people sick… They can have problems that come from the fact that you couldn’t throw all the software away and start over from scratch. You can’t do that in the world of software technology either…
We have things that come from sponges, some of the first multicellular organisms, and we have stuff that comes from amphibia, and we’ve got a lot of stuff that comes from fish… And this is why I’m saying that biology is software archaeology.
H. The relevance of computational theory to understanding how life works: a brief history
I’ll just mention briefly a little bit of history… So I’m referring to events that we all know. So basically Turing in 1936, … he’s a logician who sort of creates a trillion-dollar industry as a mathematical idea. He’s been working on the foundations of mathematics, on the Hilbert program, and for a philosophical reason he has a paper where the Turing Machine is invented, and the Universal Turing Machine appears in it.
The Universal Turing Machine is a general purpose computer. It’s a flexible machine. It’s a notion of hardware and software. It’s a machine that can simulate being any other digital machine, if you insert the right software. So this is a very powerful idea, and I learned by reading von Neumann as a student. Von Neumann credits Turing with founding the computer industry as a concept. Now it’s true that actually building these things … requires engineering techniques and stuff like that, and Turing wasn’t really involved with that. But as a mathematical idea, … it’s all there in Turing’s 1936 paper, very clearly….
If you look at it from the point of view of biology, … I’ll give you a revisionist version of this. Turing fumbles the ball. He’s surrounded by software everywhere, in the natural world, in the biosphere. There’s software everywhere, he’s just finally realized what it is that makes biology work, but he doesn’t get it… He’s too trapped in the pre-Turing viewpoint….
So it’s von Neumann, … who did not come up with the original idea that Turing did, but who appreciated infinitely better than Turing the full scope and implications of this new viewpoint. And this is sort of typical of von Neumann. He’s a wonderful mathematician, he’s my hero….
So von Neumann looked at this work of Turing and said, “This applies not just to artificial automata, Turing machines, which are computers, it applies in the biological world. And von Neumann has a paper published in 1951, … called … “The General and Logical Theory of Automata”, and he’s talking about natural automata and artificial automata. Artificial automata are computers; natural automata are biological organisms. And von Neumann makes a self-reproducing automaton, and this is before Watson and Crick discovered the molecular basis for DNA, for heredity. And in this paper by von Neumann, he has something that looks like DNA, and it has this software on it. These are the instructions for … building an organism. And he sees the pattern, which is that you follow the instructions first, to build a copy of the organism, then you copy the instructions. You have that, and then you have … self-reproduction.
This… wonderful paper inspired Sydney Brenner, a Nobel Prize winner, … and he took the idea to Francis Crick. So this idea – actually, I’ve uncovered evidence that it was very influential. Most molecular biologists were inspired by a little book by Schrodinger, “What is Life?” But Sydney Brenner says in his case it was von Neumann’s work. And Sydney Brenner was the invisible half of Francis Crick. Francis Crick couldn’t work on his own. First he worked with Watson – they shared an office – and then he worked for many years with Sydney Brenner, who didn’t get much of the credit perhaps, but he was half of Crick. And Brenner took this idea to Crick. And Brenner says about von Neumann that it’s an amazing piece of mathematical … prognostication, seeing the future, that von Neumann sees this idea, which it took ten years to fully verify was the way that DNA works. But inspired by this, you see, Brenner talked to Crick all the time, … and Crick was sort of the leader of the beginning of molecular biology. He was the theorist. He was the person who sort of told the troops in which direction to go. And so this was very … influential, but it’s a forgotten piece of history that I found out by reading Sydney Brenner’s autobiography.
OK, so this is this revisionist history of the discovery of software in computer technology, in here, where there’s much more of it, which is everywhere in the biological world – a fact that is not appreciated. OK, so software is everywhere there, and what I want to do is make a theory about randomly evolving, mutating and evolving software – a little toy model of evolution where I can prove theorems, because I love Darwin’s theory, I have nothing against it, but, you know, it’s just an empirical theory. As a pure mathematician, that’s not good enough,
I. Modern organisms are too messy to use if you want a mathematical model which rigorously demonstrates the possibility of evolution
Biology is too much of a mess. DNA is a programming language which is billions of years old and which has grown by accretion, and … we know a little bit about it, but it’s just a catastrophe. So instead of working with randomly mutating DNA, let’s work with randomly mutating computer programs, where we invented the language, and we can keep it a theoretical computer program, one that a theoretician would make, so you know, you specify the semantics, you know the rules of the game.
And … I’m proposing that as a more tractable question to work on… So I propose to call this new field metabiology, and you’re all welcome to get involved in it. So far there’s just me and my wife Virginia working on this. It’s wide open. And the idea is to exploit this analogy between artificial software – computer programs – and natural programs, DNA.
[I]nstead of trying to prove theorems about what happens with random mutations on DNA, we’re going to try to prove theorems about random mutations on computer programs. OK. This is the proposal – to make a field like that.
J. A toy model is required to rigorously demonstrate the possibility of evolution
So, my organisms are software organisms. They are only software. My organisms are programs. You pick some language, and the space of all possible organisms is the space of all possible programs in that language. And this is a very rich space. So that’s the idea… So let me mention by the way that in case some of you like bodies and metabolism, to justify throwing the body away, metabolism away – as a theoretician, of course, it’s easy to justify, you know, “Consider a spherical elephant” is a typical beginning of a math paper that doesn’t exist, but that’s the spirit of pure mathematics sometimes. Anyway, the idea is, there is a discussion by John Maynard Smith, a wonderful population geneticist, in 1986, in a book called “The Problems of Biology”, of a whole chapter. He’s saying, “What is life? How can we define life?” And he says, well the obvious definition is: a living being has a metabolism. Chemicals go in, chemicals go out, the organism maintains its structure – and that’s the metabolism. Plus, it reproduces itself. And he says, “Well, that’s the obvious definition, right?” and he says, “But it’s not a good definition.”… And he gives the example of a flame. A flame will reproduce itself – it has oxygen and stuff going in … but it’s not alive and it won’t evolve, because it has no heredity. A flame doesn’t remember if it was started with a match, with a cigarette lighter, from a forest fire – it has no heredity and therefore it will not evolve. So he says, Maynard Smith, a deeper definition of life is a system which has heredity and mutations and can evolve. In other words it may sound a little bit circular, but basically, John Maynard Smith is saying that we define life as something that evolves according to Darwin’s theory of evolution. Now this may seem that it’s totally circular reasoning, but it’s not. It’s not that kind of reasoning, because the whole point, as a pure mathematician, is to prove that there is something in the world of pure math that satisfies this definition – you know, to invent a mathematical life-form in the Pythagorean world that I can prove actually does evolve according to Darwin’s theory, and to prove that there is something which satisfies this definition of being alive. And that will be at least a proof that in some toy model, Darwin’s theory of evolution works – which I regard as the first step in developing this as a theory, this viewpoint of life as evolving software….
…I want to know what is the simplest thing I need mathematically to show that evolution by natural selection works on it? You see, so this will be the simplest possible life form that I can come up with.
K. Toy models are extremely unrealistic
So, my organisms are software organisms. They are only software. My organisms are programs. You pick some language, and the space of all possible organisms is the space of all possible programs in that language. And this is a very rich space. So that’s the idea…
So how do we make a toy model of evolution? What is this artificial life that I’m going to create? Well, it’s very very simple… In fact, it’s so simple that you’ll say, “It’s not very realistic biologically.” And really it’s not, but in fact physicists would call this a toy model, which in Portuguese sounds bad, but they say is great. The idea is, first of all you want to forget about the things which are not so important, to concentrate on the important things so you can get some mathematical understanding. And the other thing is, I want to know what is the simplest thing I need mathematically to show that evolution by natural selection works on it? You see, so this will be the simplest possible life form that I can come up with. It’s true we are very complicated life, but I would like to look at the sort of pure case, at the simplest thing that provably evolves according to Darwin’s theory.
OK, here comes the toy model…. So the model is very simple. There’s only one organism. Not only there’s no bodies, it’s a program… There is no population, there is no environment, there is no competition… [but] it’ll evolve anyway. Let me tell you what there is. So it’s a single software organism, it’s a program, and it will be mutated and evolving … What does this program do? Well, I’m interested in programs that calculate a single positive whole number, and then they halt… So my organism is really a pure mathematician or a computer scientist. And the reason that I’m going to get them to evolve is that I’m going to give them something challenging to do, something which can use an unlimited amount of creativity. So what is the goal of this organism? … How do I decide if an organism has become more fit? What is the notion of fitness … for this organism? What is its goal in life? Well its goal is … the Busy Beaver problem. It’s a very simple problem … and it’s just the idea of: name a very big positive integer. And this might sound like a trivial, stupid thing, but it’s not. It’s sort of the simplest problem which requires an unlimited amount of creativity, which means that in a way, Godel’s incompleteness theorem applies to it. There is no general method… No closed system will give you the best possible answer. There are always better and better ways to do it. So the reason is basically that this problem is equivalent to Turing’s halting problem. So that’s the theoretical basis of why this problem is so fundamental and can utilize an unlimited amount of mathematical creativity. OK, so the fitness of this organism, which comes from the program, is the number it calculates. The bigger the number, the better the organism. So that’s their goal in life. ..These are mathematicians and their aim is to calculate enormously big numbers. The bigger, the better.
Now the other thing I should tell you is: how do I do mutations? And that’s a very crucial thing. At first I tried to do what … biologists think is a natural kind of mutation, and the most natural one for biologists is I think what’s called a point mutation, which means you change one base in the DNA, or maybe you change a few continuous bases, or you remove them, or insert them. It’s a local change in a strand of DNA. And I worked for two years with that kind of a notion of mutation, and I didn’t get very far. I stumbled around… and I got a feeling for what was going on, but it was a mess, and I couldn’t really prove what I wanted to prove, which was that evolution works.
So there was a breakthrough. The breakthrough was using mathematics from the 1970s. The breakthrough is to allow algorithmic mutations – very powerful mutational mechanisms which, as far as I know, are not the case in biology, but nobody really knows all the mutational mechanisms in biology. So this is a very high-level kind of mutation. An algorithmic mutation means: I will take a program – my mutation will be a program – that I give the current organism as input and it produces a mutated organism as output. So that’s a function. It’s a computable function. That’s a very powerful notion of mutation. And the crucial thing is: what is the probability going to be? How do you distribute probability on the space of all possible mutations? That’s a very important decision, and from algorithmic information theory, we know how to do that. The notion is that if the program M that maps you from the original organism to the mutated organism is a K-bit program, you give this a probability of 2 to the minus K…
OK, so this is the idea. If the algorithmic mutation M which is a function basically, a computable function which takes the organism and maps it into the mutated organism. If that’s a K-bit program then this will have a probability of 1 over 2 to the K. That’s a very natural measure, and for those of you who have heard of the halting probability, which was mentioned in the very nice introduction, which is the probability that a Turing machine halts, which is my version of Turing’s halting problem. You see this field knows how to associate probabilities with algorithms in a natural way. … Those of us who work in this field are convinced that this is a natural way – we can give various reasons – for associating probabilities on computer programs. OK?
So from a mathematical view this is now a very natural way to assign a probability to a mutation. And so this is how I did my mutations. Now let me point out how different this is from point mutations, even ones which can affect an arbitrarily large number of bits, which is presumably a probability which decreases exponentially with the number of bits. There is a very simple mutation which flips every bit. Right? That’s a very small program. You take the organism and you just change 0 to 1, and 1 to 0. So that’s a very probable mutation…. This mutation will be tried a fixed percentage of the time. It’ll be a very common mutation to try, because it’s a very simple transformation of the program, algorithmically. But you see, from the point of view of point mutations, this is an extremely violent and infinitesimally… extremely unlikely mutation. Because in point mutations the probability of affecting the number of bits you change … as that grows bigger, the probability of the point mutation drops exponentially. You’re most likely to change just one bit in the program. You know, changing two bits is going to be a lot less likely, and changing all the bits in the program is possible but it’s extremely unlikely. But with this approach, this is a very probable mutation.
L. Even toy models of evolution require a Turing oracle in order to work properly
So … we have, only a single organism at a time, which is trying to be a better mathematician, to improve him or her or itself, and this gives us a random walk in software space, which is calculating bigger and bigger numbers…
Now one important thing to say is that there’s a little problem with this: we need something which Turing invented, not in his famous paper of 1936, but in a less well-known but pretty wonderful paper of 1938, which are called oracles. And [for] those of you who have done theoretical computer science or at least computability theory, which … I’d say is theoretical theoretical computer science, which is even more theoretical than normal computer science, because there are no time bounds on computations … this notion of an oracle is a wonderful idea.
And basically what an oracle is, it’s something you add to a normal computer, to a normal Turing machine, that enables the machine to do things that are uncomputable. You’re allowed to ask God or someone to give you the answer to some question where you can’t compute the answer, and the oracle will immediately give you the answer, and you go on ahead. So I need an oracle to enable me to carry out this random walk. Why? The reason is as follows. If you pick at random a mutation, an algorithm, a mapping from the organism to the mutated organism with these probabilities, some of the time, the algorithm you pick never produces any output. You don’t get a mutated organism. Another possibility is that you get a mutated organism, but it’s something that never finishes calculating. It never … calculates an integer, and maybe it never halts. So you can get stuck waiting for the mutation to finish and give you a new organism, or you can get stuck running the new organism to see what it calculates, you see, and you’ll go on forever, and it’ll never calculate anything, so you’re just stuck there and the random walk dies. So we’ve got to keep that from happening. And if you actually want to do that, as a thought experiment, you would need an oracle.….
The first thing I … want to see is: how fast will this system evolve? How big will the fitness be? How big will the number be that these organisms name? How quickly will they name the really big numbers? So how can we measure the rate of evolutionary progress, or mathematical creativity of my little mathematicians, these programs? Well, the way to measure the rate of progress, or creativity, in this model, is to define a thing called the Busy Beaver function. One way to define it is the largest fitness of any program of N bits in size. It’s the biggest whole number without a sign that can be calculated if you could name it, with a program of N bits in size. This is a slightly different version from the original Busy Beaver function, [where] you know, people chalk up the number of states in a Turing machine. Anyway, this is a better measurement than the original one. OK, so this is the highest possible fitness of any program up to N bits on size. This will be among all the programs up to N bits in size. It’s like, the fittest one. It succeeds in naming the biggest integer … You name an integer by calculating it and evolving it. OK, so that’s the best mathematician among the N-bit programs in my competition.
Now, this number is highly uncomputable … and the reason is, one way to put it, is that it grows faster than any computable function of N. And another way to put it is: it’s sort of the N bits of inspiration to be able to calculate the Busy Beaver function of N. This is sort of the number of Yes-No questions you’d have to ask an oracle in order to be able to calculate, if you’re only allowed to ask “Yes-No” questions. So this is the meaning of creativity when it talks about inspiration. You see, my model … has an algorithmic part, but it’s going to do better than any mechanical procedure. Where is the inspiration, where is the non-algorithmic stuff coming from? It’s coming from the use of an oracle to see if one organism is fitter or not than another. You see I need an oracle. It’s part of the process of seeing if my mutated organism is fitter than the original one, because of the problem that the mutated organism may not ever stop running.
So this is where the inspiration comes from. This is where we’re getting non-algorithmic information.
[He then talks about his worst possible case scenario for evolution: exhaustive search, which is much, much slower than Darwinian evolution.]
OK, so this is the worst possible [model of evolution] and this already has fitness increasing faster than a computable function. So there’s something non-mechanical, non-algorithmic happening here…
And this is the worst case of an evolution model. So what I need to point out is: … already … there is a kind of creativity going on, even with this stupid regime, because, you see, if you take organisms and you improve them mechanically, algorithmically, there is no oracle, no inspiration, then you have a … you’ve got a sequence of organisms that are computable, and you don’t need any oracles any more. There’s no inspiration, there’s no creativity. Then the fitness can only grow as a computable function of the time. If you mechanically improve, if you have an algorithm and given one organism that gives you the next one, and you keep always using that sort of mechanical way of improving organisms, then the fitness will only grow as a computable function of the time. So even this scheme is doing better, it’s growing faster than any computable function of the time. But the reason it’s doing this is that, remember, we have an oracle that we’re allowed to use in a very constrained way. I mean if you’re allowed an oracle in general, you can use it any way you like. You can just calculate the Busy Beaver function of N from N. But I’m only allowed to use the oracle to see if a mutated organism is better than the original organism…. This is where the creativity … in this model is coming from – the biological and mathematical creativity. In this model they’re sort of the same.
M. There are three kinds of evolution: Intelligent Design is the smartest possible kind, followed by Darwinian evolution; exhaustive search is much slower than both
So anyway, let me tell you about three different evolutionary regimes you can have with this model. This is the one I’m really interested in. This is cumulative random evolution. OK? But first I want to tell you about two extremes, two sort of evolutionary regimes, because we want to get a feeling for how well this model does, when you’re picking the mutations at random, in the way I’ve just described. So to get that sort of bracket, the sort of best and worst possibilities, to see how this kind of model behaves, you need to look at two extremes which are not normal cumulative evolution in the way I’ve described. So one extreme is total stupidity. You don’t look at the current organism. For the next organism, you pick an organism at random. In other words, the mutation isn’t told of the current organism. It just gives you a new organism at random without being able to use any information from the current organism. It’s stupid. So what this does, this basically amounts to exhaustive search, in the space of all possible programs with a probability measure that comes from algorithmic information theory. And if you do that, this is the stupidest possible way to evolve… your organism will reach fitness – the Busy Beaver function of N – in time exponential of N. Why? Because basically that’s the amount of time it takes to try every possible N-bit program, and it’ll find the one that is the most fit, and that one has this fitness. You see, so this is, sort of, the worst case. But notice that time 2 to the N is what? You’ve tried 2 to the N mutations. That’s the timing in here. Every time you try, you generate a mutation at random and try it, to see if that gives you a bigger integer, and that counts as one clock.
Now, what is the smartest possible way, the best possible way to get evolution to take place? This is not Darwinian. This is if I pick the sequence of mutations. It has to be a computable sequence of mutations, but I get to pick the best mutations, the best order, you know, do the best possible mutations, one after the other, that will drive the evolution – the mutations you try – … as fast as possible. But it has to be done in a computable manner with the mutations. So that you could sort of call Intelligent Design. I’m the one that’s designing that, right? In my model, …in this space, I get to pick the sequence, I get to indicate the sequence of mutations that you try, that will really drive the fitness up very fast. So that’s sort of the best you can do, and what that does, it reaches Busy Beaver function of N in time N, because basically in time N it got to go to the oracle N times, and each time, you’re getting one bit of creativity, so this is clearly the best you can do, and you can do it in this model. So this is the fastest possible regime.
So this [here he points to exhaustive search] of course is very stupid, and this [here he points to Intelligent Design] requires Divine Inspiration or something. You know, [in Darwinian evolution] you’re not allowed to pick your mutations in the best possible order. And mutations are picked at random. That’s how Darwinian evolution works.
So what happens if we do that, which is sort of cumulative random evolution, the real thing? Well, here’s the result. You’re going to reach Busy Beaver function N in a time that is – you can estimate it to be between order of N squared and order of N cubed. Actually this is an upper bound. I don’t have a lower bound on this. This is a piece of research which I would like to see somebody do – or myself for that matter – but for now it’s just an upper bound.
N. Only Intelligent Design is guaranteed to evolve living things in the four billion years available. It seems that Darwinian evolution would take too much time
So what happens if we do that, which is sort of cumulative random evolution, the real thing? Well, here’s the result. You’re going to reach Busy Beaver function N in a time that is – you can estimate it to be between order of N squared and order of N cubed. Actually this is an upper bound. I don’t have a lower bound on this. This is a piece of research which I would like to see somebody do – or myself for that matter – but for now it’s just an upper bound. OK, so what does this mean? This means, I will put it this way. I was very pleased initially with this.
Exhaustive search reaches fitness BB(N) in time 2^N.
Intelligent Design reaches fitness BB(N) in time N. (That’s the fastest possible regime.)
Random evolution reaches fitness BB(N) in time between N^2 and N^3.
This means that picking the mutations at random is almost as good as picking them the best possible way. It’s doing a hell of a lot better than exhaustive search. This is BB(N) at time N and this is between N squared and N cubed. So I was delighted with this result, and I would only be more delighted if I could prove that in fact this [here he points to Darwinian evolution] will be slower than this [here he points to Intelligent Design]. I’d like to separate these three possibilities. But I don’t have that yet.
But I told a friend of mine … about this result. He doesn’t like Darwinian evolution, and he told me, “Well, you can look at this the other way if you want. This is actually much too slow to justify Darwinian evolution on planet Earth. And if you think about it, he’s right… If you make an estimate, the human genome is something on the order of a gigabyte of bits. So it’s … let’s say a billion bits – actually 6 x 10^9 bits, I think it is, roughly – … so we’re looking at programs up to about that size [here he points to N^2 on the slide] in bits, and N is about of the order of a billion, 10^9, and the time, he said … that’s a very big number, and you would need this to be linear, for this to have happened on planet Earth, because if you take something of the order of 10^9 and you square it or you cube it, well … forget it. There isn’t enough time in the history of the Earth … Even though it’s fast theoretically, it’s too slow to work. He said, “You really need something more or less linear.” And he has a point….
O. More realistic models of evolution won’t allow you to rigorously prove anything about evolution
But what happens if you try to make things a little more realistic? You know, no oracles, a limited run time, you know, all kinds of things. Well, my general feeling is that it would sort of be a trade-off. The more realistic your model is – this is a very abstract fantasy world. That’s why I’m able to prove these results. So if it’s … more realistic, my general guess will be that it’ll be harder to carry out proofs. And it may be that you can’t really prove what’s going on, with more realistic situations….
Let’s say for example that we limit the run time, or we limit the kind of programming language to a language which is not universal, a more restricted programming language. Now let’s say we do a computer experiment, you know, … so then, if you limit the run time, and you have, say, a more restricted programming language, not a universal programming language – if you have programs in some sub-recursive language – so… you could actually carry out simulations of this random walk, on a computer, and then you could get experimental evidence of how this kind of evolution behaves, which I think would be fun. But I think you might need to run a computer experiment, because I suspect it’ll be a trade-off. Either you’re going to prove beautiful theorems because your model is very much in the fantasy world of pure math, of if you make it more realistic, I suspect it would be very difficult or impossible to prove theorems, but you may be able to do massive computer experiments and accumulate suggestive empirical data, so to speak, from big computer runs, looking at typically how these random walks behave.. So there are a number of possibilities for going forward with this kind of research.
P. Chaitin’s model is the first mathematical model that actually demonstrates evolution can continue indefinitely
Now, I did ask some physicists at the Santa Fe Institute, in January, I gave a talk on this there. And that’s a place which is very well known for their work on complexity, complex systems. So I asked some of the people there: “Is there a model of evolution, a toy model, that is run on a computer in which evolution seems to go on forever?” And they said, “No. All the models up to now … maybe they go for a while and then they stagnate. So we don’t have empirical evidence that some model of evolution is going on. That’s the problem of the stagnation. And I asked them, “Is there a theoretical model? And they told me that their feeling was that this was probably the first case where somebody can prove that you get evolution to continue.
Q. Chaitin’s model does not address the origin of life
Now let me mention, by the way, that this model has life in it from the beginning. This model does not talk about the origin of life, because I already have a universal programming language here at the beginning. The origin of life is how you pick your programming language, where that comes from. So that’s an interesting question, but this is not discussed here. I have some thoughts about that, but that’s not in this model. In this model, you start off with life there – DNA there – and then you just see what happens afterward.
Well, that’s all, folks! May I suggest that readers now go and listen to Professor Chaitin’s talk for themselves, and form their own judgment. At any rate, I for one will be looking forward to the upcoming release of Gregory Chaitin’s book, Proving Darwin: Making Biology Mathematical (Pantheon, forthcoming, ISBN: 978-0-375-42314-7), in May 2012.
Let me close with a final thought. There is excellent evidence that evolution has occurred, if one simply defines “evolution” as the process by which the first living cell developed into the various existing life-forms we find on Earth today. However, the assertion that evolution is a Darwinian process is very poorly supported, from a mathematical standpoint. Darwinian evolution is by definition an unguided process, but Professor Chaitin had to make use of a Turing oracle to make his Darwinian model of evolution work – and even then, it seems it would still take far too long to generate the diversity of life-forms currently found on Earth. At the present time, Intelligent Design is the only version of evolution which is known to be capable of generating the diversity of life-forms on Earth today, within a four-billion-year time span.
May I suggest that in future, when engaging with Darwinists, we force them to confront these two questions:
1. Why do you scoff at the notion of an Intelligent Designer, when even your own brand of evolution relies on a Turing Oracle to make it work, in current mathematical models? Isn’t that a Designer smuggled in via the back door?
2. Where’s your evidence that Darwinian evolution can generate the diversity of life-forms we find on Earth today, in the time available? Current modeling suggests that it cannot.
Original article: Mathematical Objection to Evolution