(Note to the reader: Though the first couple paragraphs may seem
to indicate that you have to be a mathematician or computer scientist
to understand this article, read on. You don't.)
I remember way back when ... It was 1967 and I was just barely over 20. I was learning about some of the problems of computational mathematics in my last year of university. The project which I agreed to work on was that of finding the roots of an arbitrary polynomial. In my research I found a transformation which left the roots unchanged yet resulted in a positive valued function with no false valleys over the whole complex plane. I was overjoyed because this meant I could pour some virtual water down the virtual bowl that modelled this transformed polynomial and wherever the water came to rest in the bottom of the bowl there was a root of the polynomial. So I could put in the numbers, turn the computer's crank, let the virtual water find the bottom as water tends to do, and out would come the solutions.
I wrote a computer program to turn the computer's crank (in Fortran, remember it?) and gave my idea a thorough test. It worked with several different polynomials I threw at it. Well, that is, until I threw it a special test. This one was a sixth power polynomial with all its roots at x = 1. I made it specifically as a test case. And a good test it was. The computer wandered all over the place trying to find x = 1. It was staggering about like a drunk! never getting very close to 1, not even within two digits of accuracy.
What was wrong with my method? I thought and thought. I made calculations. I drew pictures. Then suddenly it became clear. The ground in the valley of that virtual bowl near 1 was so flat that the water didn't know where to go. It could not tell which way was down! It was rather like the Waingawa River near Masterton. The local body council tries to keep the river from wandering all around, especially from wandering through Masterton. (They no doubt need to get some Dutch expertise in dike making.) The ground is so flat west of Wim Stolte's farm that the water doesn't know which way to go to find Martinborough and the sea.
This was my first introduction to computer fallibility, or more
precisely, computer limitations. Up until that fateful day I shared
the common misconception that computers could do anything if you
just had the right program. And the right program shouldn't be
too hard to write, at least not for clever computer whizzos. This
is what the scientists were saying and writing.
Asimov and Heinlein, whom I read avidly back in the 60's, wrote tales of robots with positronic brains (whatever they are) which looked and acted just like humans, so much so that it was necessary to program rules into their brains to keep them from being too human (i.e., evil). Thirty years ago such an idea was rather far-fetched, but surely talking computers were just around the corner, and soon after that (by 2001 according to the predictions of Arthur C. Clarke in the movie "2001") we would have computers that could understand human language, could reason, and could even go berserk! Of course it hasn't happened. And I am quite sure that it won't. That is my theological conviction.
But back to my discovery. What had I learned? I learned that lack of precision is a very important computer limitation. A mechanical engineer designing structural steel beams for a new factory is not too concerned for more than 5 digits of precision. A beam of 15 metres length may be required but, if it is closer to 15.001 metres, that doesn't matter. However, if he is designing the structural components for the St. Louis Arch, he may need 7 digits of accuracy, otherwise the last piece in the Arch won't fit.
In my computer project I learned to my dismay that, for 3 digit accuracy in my test case results, I would need to do my computations using 18 digits of accuracy! I wanted 5 to 7 digits of accuracy so that an engineer could use my program with confidence. That would require 30 to 42 digit computations. And back in the late 60's, on the computer I was using, 42 digit computations were out of the question, 15 was the maximum.
It was a shattering lesson. Computers can't do everything, even
when they have a good program. But what are their limitations?
1) Computers are finite. 2) Computers are machines. 3) Computers
not only fail but sometimes make mistakes. 4) Computers must be
programmed by man.
Computers Are Finite
Because computers are finite, no computer will ever find the exact square root of 2. This would require infinite time and infinite memory. Computers will never be able to calculate the weather for even four weeks ahead. This is a finite task but still would require a computer with as many circuits as there are molecules in the atmosphere all working as fast as molecules bump into each other! Another problem totally impossible for any computer would be selecting the viable variations in the DNA molecule. This is a task similar to what evolutionists think happened totally by chance in the primeval soup when life began. It would take only 1040,000 operations (a largish number with 40,000 digits)!
Man, using a computer for calculations and using computer-designed
equipment, can manipulate a few of the pieces in the DNA molecule
and thus change the genetic structure of a cell for good or ill.
God designed the DNA molecule, deciding just which of the zillion
variations would be exactly right for Adam, the head of the human
Computers Are Machines
Since computers are machines, they can't learn. Though there is a field of computer science called artificial intelligence, it is badly named. Artificial intelligence experts are continuing to learn what computers can't do! namely, understand.
Because computers are merely machines they can only follow a sequence of very simple instructions. Those of you who have the latest and greatest Pentium on your desk know that these instructions may cause the stupid machine to do some apparently clever things. One click on the SEND button causes a sequence of instructions to be followed which neatly licks the envelope on your email message and sends it to your missionary friend in Cyprus. The computer doesn't even complain about the taste! Some very clever people wrote that long list of instructions to make that stupid machine do what you wanted. And the total number of instructions in the list may have been well over 1,000,000. That is how stupid the machine is! It takes that many instructions to send an email message.
You also know this long list of instructions may cause the machine to do some very unclever things, like forget all the figures you entered for your end-of-month billing. The machine does (most of the time) as it is instructed, even though what it was instructed to do is not what you wanted. The machine has no understanding. It cannot discern either that you wanted email sent nor that you emphatically did not want your figures forgotten. It doesn't even know what email is, or figures, or what missionaries are, or who you are. It duhn't know nuht'n. And it can't learn anything. It is a machine. It can only perform certain very simple commands. And only because it can do several million of these in a second does it seem to be clever.
Contrary to scientists' and science-fiction writers' dreams,
man alone makes and uses machines because he alone understands.
Understanding will always be missing in the computer. Artists
may shape it to look human. Clever engineers may give it manipulable
hands. Computer whizzos may program it to respond to many different
circumstances. Only God can give understanding. And He has given
that only to man.
Computers Sometimes Make Mistakes
We all know that computers sometimes fail. Who has not been to
the grocery or the bank only to be told that business has stopped
because the computer system has failed? This happens for various
reasons. Sometimes it is merely (merely?? what about Auckland
CBD?) a power failure. When the power goes on again, the machine
will go through its start-up procedures and after a few minutes
be carrying out its assigned duty of feeding prices to cash registers
or storing your cheque amounts.
Sometimes computer failure is a result of a faulty program which, in certain situations (not noticed by the whizzo programmer), does not do what the bank manager wanted (rarely do they fail in your favour, however). This was the case with the so called 'Pentium Bug' a couple years ago. Faulty program data built into the Pentium chip was unnoticed by the Intel chip programmers. And in certain situations it could cause errors in calculations. Thankfully my bank account was not affected.
Sometimes computer failure is a result of the computer itself breaking down, blowing internal circuits. Even though computer hardware is very reliable today, it still fails from time to time. (When computers were first designed using valves instead of semi-conductors, they failed about every 20 minutes. Wouldn't you like one those beasts driving your airplane?)
But not only do computers fail. They sometimes make mistakes. I mean that on a rare occasion a computer may actually do something different than it was instructed to do. This can happen as a result of 'random noise' in the electronics or an electron jumping tracks. For a brief nano-second the noise gets too loud and the computer thinks it was told to do A when really it was told to do B. It does A and, guess what, your pay cheque is reduced to $4.95! But the computer doesn't know it. It doesn't understand that a pay cheque of $4.95 is unreasonable. It doesn't even know that the figure represents your pay cheque.
Of course clever computer designers and programmers try to anticipate problems of computer failure and computer mistakes, but their efforts will always be severely hampered because the computer doesn't understand. A pay cheque of $4.95 is unreasonable so the computer can be instructed to query it. A grocery item for $12345.78 is also unreasonable. But suppose I had accidently inserted the word 'not' in the previous sentence. So it would read, "A grocery item for $12345.78 is also not unreasonable." Any human would see right away that I had made a mistake. But a computer does not have human understanding. For a computer to recognise a mistake like this would require 1) an understanding of grocery prices, 2) an understanding of the way humans reason and 3) an understanding that the grocery item sentence was a follow-on from the previous one.
Man alone understands and therefore is able to discern failure
and recognise mistakes. God gave man such understanding.
Computers Must Be Programmed by Man
Since computers are machines that must be programmed, they have not only the limitations listed above, they also have all the limitations of the humans who program them. Man is finite, he makes mistakes and he is sinful. The computer is a tool in his hands. This tool, like all tools, may be used for good or for ill, for God's glory or to blaspheme, to advance God's kingdom or in an attempt to defy Him.
Much of the effort, money, and theorisation that is done at the so called cutting edge of computer science is done by men who deny the very existence of God, men who consider man the pinnacle of the evolutionary process, and men who believe there is no fundamental difference between man and machine. They imagine the brain, which they think of as a very complex computer, explains all of man's complex functions. They are materialists and so they believe man consists solely of chemicals and cells.
As a result they arrogantly imagine that, when we learn a little more about cells and chemicals, then we will be able to make a computer which is a duplicate or at least an approximation of man. The science-fiction writers dream of making a computer even more capable than man, witness recent movies like Terminator and Heinlein's robot series.
The great advances in computer technology in the last 30 years have not come through speculative computer science research. They have resulted from engineering work which recognises that the computer is a tool and thus seeks to determine its limitations and to improve its usefulness. When the computer has been considered as a way of creating intelligence, then scientists have run smack into the computer's lack of understanding. Computers don't understand anything!
But man does understand. God has made him in his own image. He has set eternity in his heart. The very Breath of God causes him to live, to be human and to understand. In this respect he is different from animals who are also given life by the activity of God's Spirit. But man's life, and thus his understanding, results from his special creation as the image of God.
The attempt to design computers that are intelligent is, I believe,
folly in the Biblical sense of that word, i.e., it is to worship
and serve the creature rather than the Creator. Let us be content
to design useful tools that help us to worship and serve the Creator
of heaven and earth and to praise Him for His most marvellous
creation: man, who is fearfully and wonderfully made. And let
us humbly confess that even the contemplation of making a device
with intelligence is to believe the lie of the Devil, "you
will be like God".
Back to the Article Index
Faith in Focus /NZ Reformed Church / email@example.com / revised July 1998 / Copyright 1998