Evolution by natural selection: as fundamental as 2 + 2 = 4

Suppose someone handed you five random playing cards and you wanted to sort them in numerical order. What would you do? Why, you would use the Shell Straight Insertion method of course. Which means you take out the i_th (1st, 2nd, so on) card and place it in order relative to the card next to it. You repeat this until all your cards are in order. It always works. If you follow this procedure, you will have sorted cards in your hand in no time. If you doubt me try it. You’ve probably done it unconsciously if you play cards and you wanted them ordered in your hand. It always works, not because it is a law, but because it’s something even more fundamental. It’s an a priori principle. One can imagine a universe where different laws held, but one cannot imagine a universe where this did not work. This algorithm is based only the properties of integers and what it means to order them. Like sufficient reason, it underlies logic, not the physical facts of the universe. You can imagine a universe where gravity did not exist, but it would be hard to find one in which 2 + 2 did not equal 4.

If you do the sorting algorithm its success is based upon the same coherence principles that structure all logical relationships. Things can go wrong with sorting, certainly, but the problem will be in the application not in the principles that underlie the algorithm.

Evolution by natural selection is also a sorting algorithm based on a priori principles. As philosopher Christian Illies points out and that it is not just a law, it is a deep principle of reason. Let’s be specific. Natural selection requires three things:

1) Variation in traits
2) Selection on trait differences
3) Trait attributes that are inherited by ‘offspring’ from ‘parents’

I’m using quotes because this works whether these are chemicals, digital computer programs, or beans in a jar—anything. Evolution by natural selection is not really in dispute. It is obviously just a sorting algorithm that sorts things based on some selection criteria, usually determined by some environment where the traits vary on how well they reproduce in that environment.

Claims of evolution by natural selection for a population of things are really making the claim that they are just the sort of thing that fits the three criteria above. The algorithm is not in question.

Are the biological creatures of the earth the sort of thing for which the three criteria hold? That is the only empirical fact in question that bears on a demonstration that evolution by natural selection obtains in the natural world. Biologically the answer is a resounding yes. Life on Earth meets all of the criteria for this algorithm to work. The next few posts will explore this in more detail with special attention to the failure of the Creationist stealth move, so called Intelligent Design, to be a science.

Illies, Christian. 2005. Darwin’s a priori insight: The structure and status of the principle of natural selection. In Hösle, V. and Illies, C. Darwin and Philosophy. University of Notre Dame Press. Notre Dame, Indiana.

Bookmark Evolution by natural selection: as fundamental as 2 + 2 = 4

This entry was posted in Evolution, Philosophy of Science. Bookmark the permalink.

66 Responses to Evolution by natural selection: as fundamental as 2 + 2 = 4

  1. Allen says:

    Rob, I would like to know your opinion about software known as Avida. The link I’ve given is to a simplified description of Avida. At the end of the article are links to more detailed explanations.

    Keep in mind that Avida is not a simulation. Avida, digital organisms, is actual random changes to the binary code of the organisms. Avida does not simulate actual physical organisms. Avida does not answer the question how does life begin. Avida has one purpose: to show that random mutations can lead, after many generations have occurred, to complex organisms that perform intelligent functions.

    I would like to know your opinion of Avida and your answer to it.

  2. Rob Osborn says:


    Good link! Very impressive study…however, It is a program that is repest to a desired intent of standards. For instance, Lets say that we ran the program the same and yet opposite. Lets say that we run it in different theory where rewarding the digital critters for not mutating gives them a better chance of survival and reproduction. After time, it would show that critters with mutations were shunned from society while correct genetics was rewarded. Of coarse, over time we would see the small influx of mutations which would eventually lead to smaller generation numbers being reproduced. Let’s also say that mutations are represented by a loss of computer power resembling such things as cancer, disease, etc. Now certainly we could run the program this way, after all anything is achievable with the right programming.

    If we ran that program it very well might show how mutations actually lead not to new species but a corrupt species riddled with disease, plague, and reduced numbers in offspring. Now, if we were to take the Bible for what it is worth and plug that data into the history of the earth and mankind we would find a close resemblance, namely-

    Man has de-evolved in the sense that he doesn’t live as long. He doesn’t have as many offspring. This is probably due to the fact of mutations causing mans DNA to become corrupt. Yes, variation still exists in the DNA, but the mutations have not caused new information, rather a loss of information, or misinformation that is not as good as the old information.

    In reality, computer programs can mimick any scenerio we give with the desired results. Sure, it can mimick a hypothesized natural selection leading to new species just as well as it could also mimick mutations leading to a general loss of information and finally having the species die off never turning into a new species.

    What does all this prove? It proves that scientists and computer programmers are very clever and can create scenerios to their likening that do not necessarily mean anything in the real world.

    From the other angle of computer programming, scientists will never actually develop a model using real intelligence which is required because in the real world intelligence is involved in species perpetuation, at both the micro level (DNA, cell) and at the cognative (mind, think) level.

    I hardly believe that DNA information could actually mutate and over time replace itself with a higher form of working intelligence- a better code, a new length of DNA that is both more complex and better functioning. That is what evolutionary science believes. And yet, mutations in living species have really only been shown to destroy needed information leading in the opposite direction- from complex to simple, and when it gets simple in this fashion it leads to disease, and other non-life promoting phenomenon. We proved that with the years of extensive fly experiments hitting them with radiation.

  3. Rob Osborn says:

    One test I would like to perform goes as follows-

    Let’s take two separate population groups of humans and put them on two separate Islands and on one we will bombard them with radiation so that their DNA mutates faster while on the other island we will keep them from mutating by giving them special care and treatment always making sure they eat and sleep right, aren’t stressed etc.

    Now, according to evolutionary theory, a faster mutation rate in population should lead to a better species right? What is their model- something like- Intelligent complex life = mutation x selection + chance.

    Oh wait, we already did that experiment…my bad. Remeber all the nuke testing in the Pacific Islands during the 1940’s-60’s. It seems their population rates and disease leading to premature death, and birth defects are greater. It appears that the scientific experiment showed that complex life actually means- gene replication purity + repair of bad genetic information.

  4. SteveP says:

    Rob look up the definition of Troll. And if you love science do some reading on evolution. Especially the books I recommended. Nothing drives me crazier than people going on and on about something about which they know nothing about. Learn something about it and then make informed criticisms. Your diatribes from the perspective of ignorance about the subject are unappreciated.

  5. Rob Osborn says:


    I am just addressing the problems I see with computer simulated programs directed towards a hypothetical evolution model.

    I know plenty about evolution, I have been studying it for a long time. I am not an expert in the field but I do know enough to realize that there are some serious issues with it- it just isn’t as simple as 2 + 2 = 4.

    Computer programs set up to mimick a hypothesis does not prove the hypothesis, it’s just a different way of putting forth the hypothesis.

    Tell me if I am wrong here- Evolutionary theory holds that DNA coded information changes through varios factors including different types of mutations. It is through these mutations that information is both lost, changed or new information comes about. It is a known fact that changes to DNA rarely have any benefit to the species and also that changes to DNA are rare.

    If everyone is so into substitution analogies, let me give you one.

    Let’s take the song “Mary had a Little Lamb” and start randomly taking notes out and adding new random notes in place. How long would it take to create a new song that is understandable from an intelligent perspective (more complex song)? Mathematically speaking, the odds are so slim that you would be better off letting a two year old pound randomly on the keys of the piano until eventually the kid could rattle off Rachmaninov’s “Second piano concerto”. We all know that the mathematical odds of that happening are like “one in never”!

    And yet we say that cells which are way more complex than the piano recital mentioned above have randomly evolved without an intelligent guidance all on it’s own.

    Ya, it’s that mindset that drives me crazy.

  6. SteveP says:

    Rob you aren’t even paying attention. David Bailey just did more than that with his simultion. I refute the randomness thing in my second post, but I know you won’t look at it. If you arn’t going to bother looking at what people are asking you go why are you bothering with us?

  7. SteveP says:

    And “I know plenty about evolution.” No you don’t.

  8. Stan says:

    “Let’s take the song “Mary had a Little Lamb” and start randomly taking notes out and adding new random notes in place. How long would it take to create a new song that is understandable from an intelligent perspective”

    You forgot to add a selective element in there. That’s the most important part. And don’t expect all the mutated songs to be beautiful. If this is a correlation with nature you’ll get a lot ugly awkward songs that don’t make sense, but they can survive and reproduce. That’s all they need to do.

  9. Jared* says:

    Well, if nothing else we’ve had a nice demonstration of the Dunning-Kruger effect.

  10. SteveP says:

    Jared* where do you find this stuff! The Dunning-Kruger effect! I love it. This is becoming a permanent addition to my vocabulary. Thanks! And yes that describes it pretty well.

  11. Allen says:


    “In reality, computer programs can mimick any scenerio we give with the desired results.”

    Avida doesn’t mimick anything. It is not a simulation program. It is actual evolution of digital organisms due to mutations in the binary code and data of the organisms.

    If you already understand the machine language world of programs, please bear with me while I explain it to those who don’t know what machine language is.

    Programmers write programs using a symbolic language, but the machine itself doesn’t see the symbols when it executes the programs. It sees the binary code that results from the compilation or assembly and linking of the symbols. I retired after 40 years as a programmer, and about half of my career was writing code on the assembler level. During the early days, we didn’t have a symbolic debugger, and all of our debugging was with binary machine code. Also, I did a lot of diagnostic work when I repaired computers for 18 months, and I input binary code directly into the machine, bypassing the assembly of symbols. For example, a MOV instruction on the PDP11 computer might look like the following in the binary machine language of the computer.


    That is just a single instruction. Other instructions had different combinations of “0” and “1” integers. A small program might have quite a few instructions, and a large program might have thousands of instructions. Some of the binary bits in the instruction define the OPCODE or type of instruction. Other bits tell where data is to be obtained from or deposited to. Some bits tell how the data should be manipulated.

    In addition to instructions, a program has data, and the data are just strings of 0 and 1 digits.

    An Avida “run” begins with a small program that knows only one thing: how to spawn or duplicate itself. It doesn’t even know that it is being “fed” input numbers or data. In addition, the program has several instructions that do nothing. Such NOP instructions on the PDP11 are 0101100100000000 in binary.

    A mutation can occur in an instruction itself or it can occur in data. If the bit being mutated is a “1” it will become a “0”, and vice versa. If the mutation occurs in an instruction, it will affect the instruction in a way that depends on the particular bit being mutated.

    For example, if the bit is in the OPCODE of the instruction, the mutation will change the instruction to be a different instruction. If the bit is in data, the mutation will change the nature of the data. A random selection is made between having a mutation in an instruction or in data, and a random selection is made of the particular bit to be mutated. Through evolution via mutations, digital organisms become aware they are being “fed” input data, and through additional mutations the organisms learn they can “use” the data in some way.

    As you pointed out, Rob, some mutations might give the digital organism an advantage, and other mutations might cause the instruction to fetch distorted data, or to retrieve data from the wrong place in memory, or to deposit data in the wrong place.

    Mutations in the NOP instructions will eventually change the instructions from NOP to something else, then from the something else to something still different, and so on. In this way, the simple digital organism that knew only how to replicate itself through spawning learns to do other functions. Thus, the basic principle of evolution, that mutations in organisms can lead to more complex organisms is performed. If I remember the number correctly from my reading about this a few years ago, in approximately 50,000 generations of digital organisms replicating themselves, a complex organism came into existence.

    It is important to understand, Rob, that in this process, there is no influence of any kind from a programmer or anyone else to affect the mutations that occur in Avida. The mutations are made randomly. Avida begins with simple organisms and ends up with complex organisms, along with many organisms that “died” because the mutations created programs that wouldn’t run on the computer. The mutations actually change the organisms to be organisms with different functionality.

    Let me repeat: Avida is not a simulation. Avida does not try to mimic real life. Avida is real evolution of digital organisms through real mutations of the binary numbers that comprise the organisms and the data given to and processed by the organisms.

    Avida does not show that evolution did occur in real life. Avida does show that one of the basic principles of evolution, the transformation of simple organisms to complex organisms is a true principle, at least in the world of digital organisms.

  12. SteveP says:

    Thanks Allen. This is a great example of the three conditions mentioned in the post providing evolution by natural selection. Another good evolution example is framsticks which places them in a world with a particular physics and they evolve things to move in simulated gravity fields, fluids and other physical systems.

  13. David H Bailey says:

    Allen: Your description of the Avida program is very interesting. Where can I learn more about this program?

  14. Allen says:

    David, here is an article I wrote about Avida for my blog. At the end are links to the details. Read the Discover article first. Those articles are several years old, and you might try Google to find more recent articles.

  15. Jeff G says:

    Hahahaha! This thread is cracking me up. I can’t be sure, but one of Rob’s first blog experiences was a few years back on an evolution thread at Times and Seasons. That was back when I blogged A LOT about evolution and Mormonism and I couldn’t for the life of me believe that Rob was for real. I was thoroughly convinced that he was a pseudonym for Aaron Brown or something.

    But no, he’s for real all right. Have fun guys!

  16. G.Antuan says:

    there is actually a mathematical formula for intelligence. It defines intelligence as the capacity to obtain the desired result with the least effort. Mathematically that is:

    Thus, for example, war usually demonstrates a lack of intelligence (which includes understanding) resulting in an excessive use of force to accomplish some goal.

    Also, if we were to program intelligence into a robot, we would simply do so by programming this formula in the robot so that it would recognize when it is having too much trouble with some issue so that it could start randomly trying other solutions that would require less effort or force.

    The original publication of this formula is on Spanish, and you can find it at:



Leave a Reply

Your email address will not be published. Required fields are marked *