Estimated Reading Time: 5-6 minutes
You've heard about calculators, computers, and even supercomputers that can solve complex equations in a jiffy. But have you ever wondered how they know what to calculate? Let's dive into a revolutionary paper by A.M. Turing that explored the universe of "computable numbers" and in the process, gave birth to the idea of a "universal computing machine"—the granddaddy of today’s computers.
What Are Computable Numbers?
To start, let's understand what "computable numbers" are. Imagine you're at a fair, and there's a machine that can write down numbers like Pi (3.14159...) or e (2.71828...) in decimal form. Computable numbers are simply numbers that this machine can successfully write down. Turing was clever enough to include not just whole numbers or fractions but also numbers like Pi, which go on forever without repeating.
How Does the Machine Work?
Now, let's look at the machine that makes this possible. Turing called it a "computing machine." This machine has a tape, like a long strip of paper, divided into squares. Each square can have a symbol, like a number or letter, written on it. The machine has a "state of mind," or configuration, that determines what it should do next—write a symbol, erase one, or move to another square.
Defining Computability
Turing describes different types of machines. Some keep running forever, writing or erasing symbols indefinitely—Turing called these "circle-free machines." Others eventually loop back and start repeating their actions—these are "circular machines." For a sequence (like the string of digits in Pi) to be "computable," it has to be producible by a circle-free machine. So, if the machine can keep going and write the entire sequence, it's computable!
The Universal Computing Machine
Here's where things get even more interesting. Turing introduced the concept of a "universal computing machine," a machine that can compute any computable sequence. This machine has a tape with special instructions, broken up by semicolons, that tell it how to behave. It reads the instructions and can print specific symbols, effectively becoming any computing machine you want it to be!
The Entscheidungsproblem Connection
One fascinating application of this is to a math problem known as the "Entscheidungsproblem," which essentially asks if there's a method to determine the truth of mathematical statements. Turing showed that no, there isn't a general method for this. Why is that groundbreaking? Well, this not only answered an important question in mathematics but also laid the foundation for computer science, helping us understand what computers can and cannot solve.
So, What Does It Mean for You?
The principles laid out by Turing provide the building blocks for modern computing. Every time you search on Google, stream a video, or even make a phone call, remember that at the heart of those technologies is a machine running on principles first described by Turing. While it’s exciting to know that computers can solve a vast array of problems, it’s equally important to know their limits—there are some questions even the most advanced computer can't answer.
The Big Picture
We've just scratched the surface of Turing's groundbreaking work. He showed us the limits of what machines can compute, setting the stage for all of modern computer science. Not only did Turing answer complex questions about numbers and computation, but he also laid the foundation for virtually every device that computes—impacting our lives daily, whether we realize it or not.
And there you have it—the extraordinary world of computable numbers and universal machines, all courtesy of A.M. Turing. The next time you use your smartphone or laptop, you'll know a little more about the genius that made it all possible.
Source Paper: https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf
Turing, A. M. (1936-37). On Computable Numbers, with an Application to the Entscheidungsproblem. Proceedings of the London Mathematical Society, s2-42(1), 230-265.