Home politics Why Computer Scientists Need Magic 8 Ball-Like Oracles

Why Computer Scientists Need Magic 8 Ball-Like Oracles

4
0

The original version of this story appeared in Quanta Magazine.

Pose a question to a Magic 8 Ball, and it’ll answer yes, no, or something annoyingly indecisive. We think of it as a kid’s toy, but theoretical computer scientists employ a similar tool. They often imagine they can consult hypothetical devices called oracles that can instantly, and correctly, answer specific questions. These fanciful thought experiments have inspired new algorithms and helped researchers map the landscape of computation.

The researchers who invoke oracles work in a subfield of computer science called computational complexity theory. They’re concerned with the inherent difficulty of problems such as determining whether a number is prime or finding the shortest path between two points in a network. Some problems are easy to solve, others seem much harder but have solutions that are easy to check, while still others are easy for quantum computers but seemingly hard for ordinary ones.

Complexity theorists want to understand whether these apparent differences in difficulty are fundamental. Is there something intrinsically hard about certain problems, or are we just not clever enough to come up with a good solution? Researchers address such questions by sorting problems into “complexity classes”—all the easy problems go in one class, for example, and all the easy-to-check problems go in another—and proving theorems about the relationships between those classes.

Unfortunately, mapping the landscape of computational difficulty has turned out to be, well, difficult. So in the mid-1970s, some researchers began to study what would happen if the rules of computation were different. That’s where oracles come in.

Like Magic 8 Balls, oracles are devices that immediately answer yes-or-no questions without revealing anything about their inner workings. Unlike Magic 8 Balls, they always say either yes or no, and they’re always correct—an advantage of being fictional. In addition, any given oracle will only answer a specific type of question, such as “Is this number prime?”

What makes these fictional devices useful for understanding the real world? In brief, they can reveal hidden connections between different complexity classes.

Take the two most famous complexity classes. There’s the class of problems that are easy to solve, which researchers call “P,” and the class of problems that are easy to check, which researchers call “NP.” Are all easy-to-check problems also easy to solve? If so, that would mean that NP would equal P, and all encryption would be easy to crack (among other consequences). Complexity theorists suspect that NP does not equal P, but they can’t prove it, even though they’ve been trying to pin down the relationship between the two classes for over 50 years.

Oracles have helped them better understand what they’re working with. Researchers have invented oracles that answer questions that help solve many different problems. In a world where every computer had a hotline to one of these oracles, all easy-to-check problems would also be easy to solve, and P would equal NP. But other, less helpful oracles have the opposite effect. In a world populated by these oracles, P and NP would be provably different.

Fonte

LEAVE A REPLY

Please enter your comment!
Please enter your name here