演算法已經無所不在,似乎對於每一個可以用精確的數學術語表達的問題,都有相應的演算法。然而,事實並非如此,實際上有些看似簡單的問題永遠無法透過演算法解決
電腦科學家中的先驅艾倫・圖靈,曾在近一個世紀前的一篇論文中證明了這種「不可計算」問題的存在,他提出了啟動現代電腦科學的計算數學模型。
圖靈用一種違反直覺的策略證明了這個突破性的結果:他定義了一個問題,一個拒絕一切試圖解決它的方法的問題。 「像我問你在做什麼,不管你回答什麼我都會說,『我要做的事情和你說的不一樣』。」麻省理工學院研究理論計算機科學的研究生 Rahul Ilango 說。 重寫後的內容: 圖靈以一種違反直覺的策略證明了這個突破性的結果:他定義了一個問題,這個問題拒絕一切試圖解決它的方法。 「像我問你在做什麼,不管你回答什麼我都會說,『我要做的事情和你說的不一樣』。」麻省理工學院研究理論電腦科學的研究生Rahul Ilango表示
#################################### #圖靈的策略是基於一種具有悠久歷史的數學方法,被稱為「對角線證明」。以下是對他證明背後邏輯的簡化說明#########字串#########對角線證明源自於解決一個關於字串問題的巧妙技巧,字串中每個位元的值可以是0 或1。這個問題的描述是:給定一個字串列表,列表中所有字串都一樣長,如何能產生一個不在列表中的新字串呢? ######重寫後的內容:一個最直接的策略是依序考慮每個可能的字串。假設有五個字串,每個字串都有五位。首先遍歷檢查清單中是否存在00000。如果不存在,問題就解決了;如果存在,請轉到00001並重複這個過程。這種方法很簡單,但對於長字串所產生的長列表來說速度很慢#######對角線證明是一種可行的替代方法,可以逐步建立不存在的字串。從清單中第一個字串的第一位開始,將其反轉,這將成為新字串的第一位。然後反轉第二個字串的第二位,並將其作為新字串的第二位,重複此操作,直到到達列表的末尾。透過反轉位元的操作,可以確保新字串與原始清單中的每個字串至少有一個不同的位置。 (它們還在字串列表中形成一條對角線,因此被稱為對角線證明。)################對角線證明只需要依次檢查列表中每個字串中的一位,所以通常比其他方法快得多,但它真正的威力在於它能很好地駕馭無限長的字串問題。 ######麻省理工學院的理論計算機科學家Ryan Williams 表示:「雖然字串和清單可以是無限的,但對角化方法仍然是有效的。」######喬治·康托爾是第一個利用這種力量的人,他是集合論數學領域的創始人。 1873年,他利用對角線證明了一些無窮大的值比其他的更大。 60年後,圖靈將此版本的對角線證明應用於計算理論#########演算法的限制性#########為了證明存在一類數學問題是無法透過任何演算法解決的,圖靈提出了一個理論。這類問題有明確定義的輸入和輸出,但沒有確定的過程可以將輸入轉換為輸出。圖靈主要關注決策問題,並為了更好地具象化這個模糊的任務。在決策問題中,輸入可以是由0和1組成的任意字串,而輸出則可以是0或1######確定數字是否為素數(只能被1 和它本身整除)是決策問題的一個例子- 給定一個代表數字的輸入字串,如果該數字是質數,則正確的輸出為1,如果不是素數,則為0。另一個例子是檢查電腦程式的語法錯誤。輸入字串代表不同程式的程式碼—— 所有程式都可以用這種方式表示,因為這就是它們在電腦上儲存和執行的方式—— 規則是如果程式碼包含語法錯誤,則輸出1,如果不包含,則輸出0。 ######只有當演算法為每一個可能的輸入都產生正確的輸出時,它才能說是可以解決該問題 —— 哪怕失敗一次,它就不是解決該問題的通用演算法。通常,人們會先指定一個想解決的問題,然後試著找出一個解決它的演算法。圖靈在尋找無法解決的問題時,顛覆了這個邏輯—— 他想像了一個包含所有可能演算法的無限列表,並使用對角化來構造一個難題,這個難題與列表上的每一個演算法都對立。 ###
請設想一個由20個問題組成的新問題,回答者不是從一個具體的概念出發,而是依序對每個問題都想出一個不滿足的例子。當遊戲結束時,回答者已經描述了一個完全由問題對立面所組成的命題
圖靈的對角線證明過程,就是要在無限長的演算法列表中,對每一個演算法都進行思考:「這個演算法能解決我們想要證明是不可計算的問題嗎?」,就好像是一種遊戲比賽。 Williams 表示:「這種方式將原來的問題轉化為一種『無限的問題』。」
為了贏得遊戲,圖靈需要設計一個問題,對於每個演算法給出的答案都是否定的。這意味著需要找出使第一個演算法輸出錯誤答案的特定輸入,另一個使第二個演算法失敗的輸入,以此類推。他發現,這些特殊輸入使用了類似於庫爾特・哥德爾(Kurt Gödel) 在不久前在證明像“這個命題是不可證明的”這樣的自我引用斷言會給數學基礎帶來麻煩時,所使用的技巧。
此處的關鍵在於,每個演算法(或程式)都可以表示為 0 和 1 的字串。這意味著,就像在錯誤檢查程式的例子中一樣,演算法可以將另一個演算法的編碼作為輸入。原則上,演算法甚至可以將自己的編碼作為輸入。
這樣一來,我們可以定義一個不可計算的問題,就像在圖靈證明中所提到的問題一樣:「給定一個表示演算法程式碼的輸入字串,當演算法本身的程式碼當輸入時,如果演算法輸出0,則讓其輸出1,否則輸出0。」每個試圖解決這個問題的演算法都會在至少一個輸入上產生錯誤的輸出,也就是與自己的程式碼對應的輸入。這意味著這個反常的問題無法用任何演算法來解決
證明不了什麼的是反證法
電腦科學家對於對角線證明的使用並沒有到此結束。 1965 年,Juris Hartmanis 和 Richard Stearns 改編了圖靈的論點,以證明並非所有可計算問題是平等的 —— 有些問題本質上比其他問題更難。這結果啟動了計算複雜度理論領域,研究計算問題的難度。
複雜性理論的發展揭示了圖靈對角線證明的限制。在1975年,貝克、吉爾和索洛維證明了複雜性理論中許多未解決的問題無法僅透過對角化來解決。其中最重要的是著名的P/NP問題,該問題簡單來說是關於能否在多項式時間內驗證解的正確性以及是否能在多項式時間內求解的問題
對角線證明的局限性是使其如此強大的高抽像水平的直接結果。圖靈的證明並沒有涉及任何在實踐中可能出現的不可計算的問題 —— 相反,問題往往是抽象的。其他對角線證明同樣遠離現實世界,因此它們無法解決現實世界中的問題。
Williams 說:「對角線證明並不是直接觸碰問題本身,就好像用手套箱做實驗一樣。」
對角線證明的頹敗之勢,表明解決P /NP 問題將是一個漫長的旅程。儘管有局限性,對角線證明仍然是複雜性理論家武器庫中的關鍵工具之一。 2011 年,威廉斯將其與一系列其他技術結合起來,證明了某個受限制的計算模型無法解決一些異常困難的問題 —— 這一結果讓困擾了研究人員 25 年的問題得到解決。雖然這與解決 P/NP 問題相去甚遠,但仍代表著重大進展。
如果你想證明某些事情是不可能的,不要低估否定的力量
原文連結:
需要重寫的內容是:https://www.quantamagazine.org/alan-turing-and-the-power-of-negative-thinking-20230905/
以上是重溫圖靈原理,感受反證法的力量的詳細內容。更多資訊請關注PHP中文網其他相關文章!

擁抱Face的OlympicCoder-7B:強大的開源代碼推理模型 開發以代碼為中心的語言模型的競賽正在加劇,擁抱面孔與強大的競爭者一起參加了比賽:OlympicCoder-7B,一種產品

你們當中有多少人希望AI可以做更多的事情,而不僅僅是回答問題?我知道我有,最近,我對它的變化感到驚訝。 AI聊天機器人不僅要聊天,還關心創建,研究

隨著智能AI開始融入企業軟件平台和應用程序的各個層面(我們必須強調的是,既有強大的核心工具,也有一些不太可靠的模擬工具),我們需要一套新的基礎設施能力來管理這些智能體。 總部位於德國柏林的流程編排公司Camunda認為,它可以幫助智能AI發揮其應有的作用,並與新的數字工作場所中的準確業務目標和規則保持一致。該公司目前提供智能編排功能,旨在幫助組織建模、部署和管理AI智能體。 從實際的軟件工程角度來看,這意味著什麼? 確定性與非確定性流程的融合 該公司表示,關鍵在於允許用戶(通常是數據科學家、軟件

參加Google Cloud Next '25,我渴望看到Google如何區分其AI產品。 有關代理空間(此處討論)和客戶體驗套件(此處討論)的最新公告很有希望,強調了商業價值

為您的檢索增強發電(RAG)系統選擇最佳的多語言嵌入模型 在當今的相互聯繫的世界中,建立有效的多語言AI系統至關重要。 強大的多語言嵌入模型對於RE至關重要

特斯拉的Austin Robotaxi發射:仔細觀察Musk的主張 埃隆·馬斯克(Elon Musk)最近宣布,特斯拉即將在德克薩斯州奧斯汀推出的Robotaxi發射,最初出於安全原因部署了一支小型10-20輛汽車,並有快速擴張的計劃。 h

人工智能的應用方式可能出乎意料。最初,我們很多人可能認為它主要用於代勞創意和技術任務,例如編寫代碼和創作內容。 然而,哈佛商業評論最近報導的一項調查表明情況並非如此。大多數用戶尋求人工智能的並非是代勞工作,而是支持、組織,甚至是友誼! 報告稱,人工智能應用案例的首位是治療和陪伴。這表明其全天候可用性以及提供匿名、誠實建議和反饋的能力非常有價值。 另一方面,營銷任務(例如撰寫博客、創建社交媒體帖子或廣告文案)在流行用途列表中的排名要低得多。 這是為什麼呢?讓我們看看研究結果及其對我們人類如何繼續將


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver Mac版
視覺化網頁開發工具

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中