search
HomeTechnology peripheralsAIRevisit Turing's principle and feel the power of proof by contradiction

Algorithms have become ubiquitous, and it seems that for every problem that can be expressed in precise mathematical terms, there is a corresponding algorithm. However, this is not the case. In fact, some seemingly simple problems can never be solved by algorithms. Alan Turing, a pioneer among computer scientists, proved this in a paper nearly a century ago. Because of the existence of such "uncomputable" problems, he proposed the computational mathematical model that launched modern computer science.

Turing demonstrated this groundbreaking result using a counterintuitive strategy: He defined a problem that resisted all attempts to solve it. "For example, if I ask you what you are doing, no matter what your answer is, I will say, 'What I am going to do is different from what you said,'" said Rahul Ilango, a graduate student at MIT studying theoretical computer science. Rewritten content: Turing demonstrated this groundbreaking result with a counterintuitive strategy: he defined a problem that resisted all attempts to solve it. "For example, if I ask you what you are doing, no matter what your answer is, I will say, 'What I am going to do is different from what you said.'" said Rahul Ilango, a graduate student at MIT studying theoretical computer science

Turing's strategy is based on a long-standing mathematical method called the "diagonal proof." The following is a simplified explanation of the logic behind his proof

String

The diagonal proof comes from a clever trick to solve a problem about strings. The value of each bit can be 0 or 1. The description of the problem is: Given a list of strings, all strings in the list are the same length, how can you generate a new string that is not in the list?

Rewritten content: One of the most straightforward strategies is to consider every possible string in order. Suppose there are five strings, each with five bits. First iterate over to check if 00000 exists in the list. If it doesn't exist, the problem is solved; if it exists, go to 00001 and repeat the process. This method is simple, but slow for long lists resulting from long strings

Diagonal turns out to be a viable alternative for incrementally building non-existent strings. Starting with the first bit of the first string in the list, reverse it and this will become the first bit of the new string. Then reverse the second bit of the second string and use it as the second bit of the new string, repeat this until you reach the end of the list. By reversing the bit operations, you ensure that the new string is different from every string in the original list by at least one position. (They also form a diagonal line in the list of strings, so it is called a diagonal proof.)

Revisit Turings principle and feel the power of proof by contradictionThe diagonal proof simply requires checking each item in the list in turn. one bit in a string, so it's usually much faster than other methods, but its real power lies in how well it handles infinitely long string problems.

Ryan Williams, a theoretical computer scientist at MIT, said: "Although strings and lists can be infinite, the diagonalization method is still effective."

George Cantor Erl was the first to harness this power and was the founder of the mathematical field of set theory. In 1873, he used diagonals to show that some infinite values ​​are larger than others. Sixty years later, Turing applied this version of the diagonal proof to the theory of computation

Restrictions of Algorithms

In order to prove that there is a class of mathematical problems that are impossible Solved by any algorithm, Turing proposed a theory. This type of problem has well-defined inputs and outputs, but no defined process to convert the inputs into outputs. Turing focused primarily on decision-making problems and sought to better concretize this nebulous task. In a decision problem, the input can be any string consisting of 0 and 1, and the output can be 0 or 1

Determining whether a number is prime (divisible only by 1 and itself) is a decision An example of the problem - given an input string representing a number, the correct output is 1 if the number is prime and 0 if it is not prime. Another example is checking computer programs for syntax errors. The input strings represent code for different programs - all programs can be represented this way because that's how they are stored and executed on the computer - the rule is that if the code contains a syntax error, output 1, if not, Then output 0.

Only if an algorithm produces the correct output for every possible input, it can be said to solve the problem - if it fails even once, it is not a general algorithm for solving the problem. Typically, one specifies a problem that one wants to solve and then tries to find an algorithm to solve it. Turing turned this logic on its head when looking for unsolvable problems - he imagined an infinite list of all possible algorithms and used diagonalization to construct a puzzle that was opposed to every algorithm on the list .

Please imagine a new question consisting of 20 questions. Instead of starting from a specific concept, the answerer comes up with an example of dissatisfaction for each question in turn. When the game is over, the answerer has described a proposition consisting entirely of opposites of the question

Turing's diagonal proof process is to perform each algorithm in an infinitely long list of algorithms. Thinking: "Can this algorithm solve the problem we want to prove to be uncomputable?", like a game competition. Williams said: "This method transforms the original problem into an 'infinite problem.'"

To win the game, Turing needs to design a question in which the answer given by each algorithm is no. of. This means finding the specific input that made the first algorithm output the wrong answer, another input that made the second algorithm fail, and so on. He found that these special inputs used a method similar to that used by Kurt Gödel not long ago when he showed that self-referential assertions like "This proposition is not provable" can cause trouble in the foundation of mathematics. skills.

The key here is that every algorithm (or program) can be represented as a string of 0s and 1s. This means that, just like in the error checker example, an algorithm can take as input the encoding of another algorithm. In principle, the algorithm could even take its own encoding as input.

In this way, we can define a non-computable problem, just like the problem mentioned in Turing's proof: "Given an input string representing the code of an algorithm, when the code of the algorithm itself As input, if the algorithm outputs 0, let it output 1, otherwise it outputs 0." Every algorithm that attempts to solve this problem will produce incorrect output on at least one input, namely the input that corresponds to its own code. This means that this anomalous problem cannot be solved by any algorithm

What cannot be proved is proof by contradiction

The use of diagonal proofs by computer scientists does not end here. Finish. In 1965, Juris Hartmanis and Richard Stearns adapted Turing's argument to show that not all computable problems are equal—some are inherently more difficult than others. This result launched the field of computational complexity theory, the study of the difficulty of computational problems.

The development of complexity theory reveals the limitations of Turing's diagonal proof. In 1975, Baker, Gill, and Solovy showed that many unsolved problems in complexity theory could not be solved by diagonalization alone. The most important of them is the famous P/NP problem, which is simply a question about whether the correctness of the solution can be verified in polynomial time and whether it can be solved in polynomial time

Diagonal proof The limitations of are a direct result of the high level of abstraction that makes it so powerful. Turing's proof did not address any of the non-computable problems that might arise in practice - instead, problems tend to be abstract. Other diagonals prove equally far removed from the real world, so they cannot solve real-world problems.

Williams said: "The diagonal proof does not directly touch the problem itself, just like doing an experiment with a glove box."

The declining trend of the diagonal proof shows that solving P The /NP problem is going to be a long journey. Despite its limitations, diagonal proofs remain one of the key tools in the complexity theorist's arsenal. In 2011, Williams combined it with a range of other techniques to demonstrate that a restricted computational model was incapable of solving some incredibly difficult problems—a result that solved a problem that had vexed researchers for 25 years. While this is far from solving the P/NP problem, it still represents significant progress.

If you want to prove something is impossible, don’t underestimate the power of denial

Original link:

Needs rewriting The content is: https://www.quantamagazine.org/alan-turing-and-the-power-of-negative-thinking-20230905/

The above is the detailed content of Revisit Turing's principle and feel the power of proof by contradiction. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:机器之心. If there is any infringement, please contact admin@php.cn delete
Can't use ChatGPT! Explaining the causes and solutions that can be tested immediately [Latest 2025]Can't use ChatGPT! Explaining the causes and solutions that can be tested immediately [Latest 2025]May 14, 2025 am 05:04 AM

ChatGPT is not accessible? This article provides a variety of practical solutions! Many users may encounter problems such as inaccessibility or slow response when using ChatGPT on a daily basis. This article will guide you to solve these problems step by step based on different situations. Causes of ChatGPT's inaccessibility and preliminary troubleshooting First, we need to determine whether the problem lies in the OpenAI server side, or the user's own network or device problems. Please follow the steps below to troubleshoot: Step 1: Check the official status of OpenAI Visit the OpenAI Status page (status.openai.com) to see if the ChatGPT service is running normally. If a red or yellow alarm is displayed, it means Open

Calculating The Risk Of ASI Starts With Human MindsCalculating The Risk Of ASI Starts With Human MindsMay 14, 2025 am 05:02 AM

On 10 May 2025, MIT physicist Max Tegmark told The Guardian that AI labs should emulate Oppenheimer’s Trinity-test calculus before releasing Artificial Super-Intelligence. “My assessment is that the 'Compton constant', the probability that a race to

An easy-to-understand explanation of how to write and compose lyrics and recommended tools in ChatGPTAn easy-to-understand explanation of how to write and compose lyrics and recommended tools in ChatGPTMay 14, 2025 am 05:01 AM

AI music creation technology is changing with each passing day. This article will use AI models such as ChatGPT as an example to explain in detail how to use AI to assist music creation, and explain it with actual cases. We will introduce how to create music through SunoAI, AI jukebox on Hugging Face, and Python's Music21 library. Through these technologies, everyone can easily create original music. However, it should be noted that the copyright issue of AI-generated content cannot be ignored, and you must be cautious when using it. Let’s explore the infinite possibilities of AI in the music field together! OpenAI's latest AI agent "OpenAI Deep Research" introduces: [ChatGPT]Ope

What is ChatGPT-4? A thorough explanation of what you can do, the pricing, and the differences from GPT-3.5!What is ChatGPT-4? A thorough explanation of what you can do, the pricing, and the differences from GPT-3.5!May 14, 2025 am 05:00 AM

The emergence of ChatGPT-4 has greatly expanded the possibility of AI applications. Compared with GPT-3.5, ChatGPT-4 has significantly improved. It has powerful context comprehension capabilities and can also recognize and generate images. It is a universal AI assistant. It has shown great potential in many fields such as improving business efficiency and assisting creation. However, at the same time, we must also pay attention to the precautions in its use. This article will explain the characteristics of ChatGPT-4 in detail and introduce effective usage methods for different scenarios. The article contains skills to make full use of the latest AI technologies, please refer to it. OpenAI's latest AI agent, please click the link below for details of "OpenAI Deep Research"

Explaining how to use the ChatGPT app! Japanese support and voice conversation functionExplaining how to use the ChatGPT app! Japanese support and voice conversation functionMay 14, 2025 am 04:59 AM

ChatGPT App: Unleash your creativity with the AI ​​assistant! Beginner's Guide The ChatGPT app is an innovative AI assistant that handles a wide range of tasks, including writing, translation, and question answering. It is a tool with endless possibilities that is useful for creative activities and information gathering. In this article, we will explain in an easy-to-understand way for beginners, from how to install the ChatGPT smartphone app, to the features unique to apps such as voice input functions and plugins, as well as the points to keep in mind when using the app. We'll also be taking a closer look at plugin restrictions and device-to-device configuration synchronization

How do I use the Chinese version of ChatGPT? Explanation of registration procedures and feesHow do I use the Chinese version of ChatGPT? Explanation of registration procedures and feesMay 14, 2025 am 04:56 AM

ChatGPT Chinese version: Unlock new experience of Chinese AI dialogue ChatGPT is popular all over the world, did you know it also offers a Chinese version? This powerful AI tool not only supports daily conversations, but also handles professional content and is compatible with Simplified and Traditional Chinese. Whether it is a user in China or a friend who is learning Chinese, you can benefit from it. This article will introduce in detail how to use ChatGPT Chinese version, including account settings, Chinese prompt word input, filter use, and selection of different packages, and analyze potential risks and response strategies. In addition, we will also compare ChatGPT Chinese version with other Chinese AI tools to help you better understand its advantages and application scenarios. OpenAI's latest AI intelligence

5 AI Agent Myths You Need To Stop Believing Now5 AI Agent Myths You Need To Stop Believing NowMay 14, 2025 am 04:54 AM

These can be thought of as the next leap forward in the field of generative AI, which gave us ChatGPT and other large-language-model chatbots. Rather than simply answering questions or generating information, they can take action on our behalf, inter

An easy-to-understand explanation of the illegality of creating and managing multiple accounts using ChatGPTAn easy-to-understand explanation of the illegality of creating and managing multiple accounts using ChatGPTMay 14, 2025 am 04:50 AM

Efficient multiple account management techniques using ChatGPT | A thorough explanation of how to use business and private life! ChatGPT is used in a variety of situations, but some people may be worried about managing multiple accounts. This article will explain in detail how to create multiple accounts for ChatGPT, what to do when using it, and how to operate it safely and efficiently. We also cover important points such as the difference in business and private use, and complying with OpenAI's terms of use, and provide a guide to help you safely utilize multiple accounts. OpenAI

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

VSCode Windows 64-bit Download

VSCode Windows 64-bit Download

A free and powerful IDE editor launched by Microsoft

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.