Moore designed his pinball machine to finish the analogy to the Turing machine. The beginning place of the pinball represents the information on the tape being fed into the Turing machine. Crucially (and unrealistically), the participant should be capable to alter the ball’s beginning location with infinite precision, that means that specifying the ball’s location requires a quantity with an infinite procession of numerals after the decimal level. Solely in such a quantity may Moore encode the information of an infinitely lengthy Turing tape.
Then the association of bumpers steers the ball to new positions in a means that corresponds to studying and writing on some Turing machine’s tape. Sure curved bumpers shift the tape a method, making the information saved in distant decimal locations extra important in a means harking back to chaotic techniques, whereas oppositely curved bumpers do the reverse. The ball’s exit from the underside of the field marks the top of the computation, with the ultimate location because the outcome.
Moore outfitted his pinball machine setup with the flexibleness of a pc—one association of bumpers would possibly calculate the primary thousand digits of pi, and one other would possibly compute the perfect subsequent transfer in a sport of chess. However in doing so, he additionally infused it with an attribute that we would not usually affiliate with computer systems: unpredictability.
Some algorithms cease, outputting a outcome. However others run without end. (Take into account a program tasked with printing the ultimate digit of pi.) Is there a process, Turing requested, that may look at any program and decide whether or not it would cease? This query turned often called the halting downside.
Turing confirmed that no such process exists by contemplating what it could imply if it did. If one machine may predict the habits of one other, you can simply modify the primary machine—the one which predicts habits—to run without end when the opposite machine halts. And vice versa: It halts when the opposite machine runs without end. Then—and right here’s the mind-bending half—Turing imagined feeding an outline of this tweaked prediction machine into itself. If the machine stops, it additionally runs without end. And if it runs without end, it additionally stops. Since neither choice may very well be, Turing concluded, the prediction machine itself should not exist.
(His discovering was intimately associated to a groundbreaking outcome from 1931, when the logician Kurt Gödel developed an analogous means of feeding a self-referential paradox right into a rigorous mathematical framework. Gödel proved that mathematical statements exist whose reality can’t be established.)
In brief, Turing proved that fixing the halting downside was unattainable. The one common option to know if an algorithm stops is to run it for so long as you may. If it stops, you could have your reply. But when it doesn’t, you’ll by no means know whether or not it actually runs without end, or whether or not it could have stopped should you’d simply waited a bit longer.
“We all know that there are these sorts of preliminary states that we can’t predict forward of time what it’s going to do,” Wolpert mentioned.
Since Moore had designed his field to imitate any Turing machine, it too may behave in unpredictable methods. The exit of the ball marks the top of a calculation, so the query of whether or not any specific association of bumpers will entice the ball or steer it to the exit should even be undecidable. “Actually, any query concerning the long-term dynamics of those extra elaborate maps is undecidable,” Moore mentioned.