ह्या लेखाच्या पूर्वार्धात आपण दोन प्रमेयांच्या मला आवडलेल्या सिद्धता वाचल्या. ह्या दोन्ही सिद्धता क्रमविरुद्ध पद्धती वापरून घडवल्या होत्या. मंडळी, वरवर सोप्या वाटणाऱ्या अशा प्रकारच्या सिद्धतांना बराच काळ गणितात स्थान द्यावे की नाही, ह्याबद्दल गणितज्ञांत मतभेद होते ! कारण गणिताच्या सुरुवातीच्या काळात, निर्माणप्रधान सिद्धतांना महत्त्व होते.
मुळात गणिताला लोकप्रिय करण्यात आपल्या संस्कृतीत ग्रह, तारे, नक्षत्रे कारणीभूत ठरले. याचे कारण शेतीसाठी आवश्यक असणारा पाऊस. याचे आगमन कधी होणार, हे कळण्यासाठी कालगणनेचे महत्त्व होते. आणि कालगणनेसाठी आकाशातल्या ग्रहगोलांचे महत्त्व होते. ह्याचे गणित म्हणजे भूमिती आणि त्रिकोणमिती (ट्रिगॉनॉमेट्री). अशा प्रकारच्या गणितात, निर्माणाला, आराखड्यांना महत्त्व. त्यावेळच्या गणितातील सिद्धता म्हणजे, फक्त एक सरळ काठी, आणि एक दोरी वापरून वर्तुळाच्या क्षेत्रफळाइतकेच क्षेत्रफळ असलेला चौरस काढता येतो, हे सिद्ध करा, अशा.
ग्रीक तत्त्वज्ञानी तेव्हा तर्क ह्या विषयावर विचार करीत होते. सर्व मानव मर्त्य आहेत, सॉक्रेटिस हा मानव आहे, याचा अर्थ सॉक्रेटिस मर्त्य आहे. हा विचार आता आपल्याला अगदी क्षुल्लक वाटतो, पण अशा विचारातून गणितातील सिद्धतांचा पाया रचला गेला.
ऍरिस्टॉटलने विरोधाभासजनक सिद्धतेचा विचार पहिल्यांदा मांडला असे म्हणण्यात येते. तो विचार तर्कशास्त्र्यांनी स्वीकार करायला खूप वेळ लावला. ती पद्धती गणितातील सिद्धतांची पद्धती म्हणून स्वीकृत होण्यासाठी, तर्कशास्त्र्यांनी दोन गृहीतके ठरवली, आणि त्या पद्धतीला तर्कशास्त्रीय आधार मिळाला. ही दोन गृहीतके म्हणजे:
१. कुठलेही विधान सत्य किंवा असत्य ह्यापैकी एकतरी असतेच (लॉ ऑफ एक्स्क्लूडेड मिडल, ह्याला आपण ‘बाप-श्राद्ध नियम’ म्हणू. बाप दाखव नाही तर श्राद्ध कर ह्या म्हणीवरून हे नाव घेतले आहे.).
२. कुठलेही विधान सत्य आणि असत्य दोन्हीही असू शकत नाही (लॉ ऑफ नॉन-कॉन्ट्रॅडिक्शन, त्याला आपण ‘ग्वाडा-चतुर नियम’ म्हणू. - एकपे रैना, एकतो ग्वाडा बोलना, नई तो चतुर बोलना, ये क्या रे ग्वाडा-चतुर? ह्या अजरामर ओळींवरून ह्या नियमाचे नाव घेतले आहे.).
ही दोन गृहीतके एकदा मानली, तर विरोधाभासजनक सिद्धता ह्या ‘तर्कशास्त्रीय’ दृष्टीकोनातून संमत होते.
असो, तर आता तिसऱ्या प्रमेयाची सिद्धता पाहू या.
३. संगणकात अशी कुठलीही आज्ञावली बनवणे शक्य नाही, की जी आज्ञावली कुठल्याही आज्ञावलीच्या वर्तणुकीविषयी अचूक निदान करू शकेल.
१९३६ मध्ये ऍलन ट्युरिंग ह्या ब्रिटिश गणितीने हे प्रमेय मांडले, त्याची ही सिद्धता. पण एक मिनिट ! रीवाईंड ! एनियाक हा पहिला संगणक तर १९४६ साली बनवला गेला ! मग त्याच्या आधीच संगणकाने काय करता येते आणि काय नाही, ह्या वर लेख प्रकाशित झाले होते ? मंडळी, ही आपल्या गणिताची पुण्याई ! (मनोगतावरील एका विशिष्ट लोकप्रिय शैलीचा प्रस्तुत लेखकावरचा प्रभाव तो नाकारत नाहीये
अर्थातच ऍलन ट्यूरिंगने संगणक (कॉम्प्यूटर) किंवा आज्ञावली (प्रोग्राम) हे शब्द त्या शोधनिबंधात वापरले नव्हते. ते शब्द नंतर आले. त्याच्या मूळ शोधनिबंधाचे शीर्षक होते ‘गणनीय संख्यांविषयी’ (ऑन कॉम्प्युटेबल नंबर्स). या शोधनिबंधात, त्याने संख्यांचे कुठले क्रम गणनीय आहेत आणि कुठले नाहीत, ह्याविषयी लिहिले होते. पण हे क्रम गणनीय आहेत की नाही, हे कसे ठरवायचे? ह्यासाठी त्याने ‘ट्युरिंग यंत्र (मशीन)’ ही संकल्पना मांडली.
हे ट्युरिंग यंत्र म्हणजे काय ते आपण समजवून घेऊ. ह्या यंत्राला वाचायला किंवा लिहायला एक मोठी फीत दिलेली आहे. (सिनेमाची ३५मिमीची फीत पाहिली आहे का आपण ? अगदी तशीच, पण त्यावर प्रत्येक चौकटीत काय लिहिले आहे, हे ह्या यंत्राला वाचता येते, आणि त्यावर लिहिताही येते.) ह्या यंत्राला स्वत:चा एक रंग असतो. सध्या त्याचा कुठला रंग आहे, आणि ह्या फीतीवरच्या सध्याच्या चौकटीत काय लिहिले आहे, त्यानुसार ते यंत्र स्वत:चा रंग बदलू शकते, सध्याच्या चौकटीत काहीतरी लिहू शकते, आणि फीतीला पुढच्या किंवा मागच्या चौकटीत सरकवू शकते. (उदा. सध्या लाल रंग असेल, आणि चौकटीत १ लिहिले असेल, तर त्याचा रंग निळा होतो, सध्याच्या चौकटीत ० लिहितो, आणि पुढच्या चौकटीत जातो.) ह्या रंग बदलण्याच्या, लिहिण्याच्या, आणि पुढे मागे जाण्याच्या सूचनांचा संच म्हणजे आपल्या संगणकाची आज्ञावली.
अशा साध्या सोप्या यंत्राने, जगातील सगळ्या गणनीय संख्यांचे क्रम निर्माण करता येतात, असा सिद्धांत ट्युरिंग ने मांडला. त्याच्या एकच महिना आधी, म्हणजे एप्रिल १९३६ ला ऍलॉन्झो चर्च नावाच्या गणितज्ञाने दुसऱ्या पद्धतीने (लॅम्ब्डा कॅल्क्युलस वापरून) असाच एक सिद्धांत मांडला. हे दोन्ही सिद्धांत परस्परपूरक आहेत, असे मत स्टीफन क्लीन नावाच्या गणितज्ञाने १९४३ साली मांडले, आणि त्याला नाव दिले चर्च-ट्यूरिंग सिद्धांत (थेसिस). त्यानंतर गणितज्ञांनी ट्यूरिंग यंत्राला अधिक समृद्ध बनवले ते ‘सार्वत्रिक ट्यूरिंग यंत्राची’ संकल्पना बनवून. हे सार्वत्रिक यंत्र एखाद्या ट्यूरिंग यंत्राची आज्ञावली आणि त्याला दिलेले इनपुट दोन्ही त्या फीतीवरून वाचते, आणि त्या सूचनांची अंमलबजावणी करते.
हे सार्वत्रिक ट्यूरिंग यंत्र आणि आताचा आपल्याला परिचित असणारा संगणक ह्याच्यात आपल्याला खूप साम्य आढळेल. हा योगायोग नाही, मंडली, ही आमच्या ट्यूरिंग अण्णांची आणि चर्च बाबूजींची पुण्याई ! आजच्या संगणकाची आज्ञावली ० आणि १ ह्या अंकांतून बनलेली असते, आणि इनपुट देखील तसेच. (म्हणजे आज्ञावली देखील एक मोठ्ठी नैसर्गिक संख्याच आहेत, आणि इनपुट देखील) आणि संगणकाला ह्या दोन्ही गोष्टी मिळतात, तेव्हा तो त्या आज्ञावलीतील सूचनांची अंमलबजावणी करतो, दिलेले इनपुट चघळत.
असो, हा झाला थोडा इतिहास. आता आपण आपल्या मूळ प्रमेयाकडे वळूया.
ह्यासाठी आपण आज्ञावलींचा एक उपसंच निवडूया. ह्या संचातल्या आज्ञावली एकच अंक इनपुट म्हणून घेतात, आणि तो अंक चघळून एकतर थांबतात, किंवा अनंत काळपर्यंत सतत व्यस्तच राहतात.
आज्ञायकांना ‘सतत व्यस्त राहणे’ वरून ‘इन्फिनीट लूप’ आठवले असेल. ही आज्ञावली बघा. हिला ‘अ’ ही संख्या इनपुट म्हणून दिली आहे.:
जोवर अ ची किंमत २ आहे तोवर खालील कृती करा:
अ = (अ + अ) / अ
आता ह्या सोप्या आज्ञावलीत २ ही संख्या अ म्हणून इनपुट दिली, तर अ ची किंमत नेहमीच २ राहणार, खरे ना ? म्हणजे ही आज्ञावली सतत व्यस्त राहील.
वरील प्रमेयाचे म्हणणे आहे, की अशी कुठलीही आज्ञावली बनवणे शक्य नाही, की जी दुसऱ्या एखाद्या आज्ञावलीला कुठले तरी इनपुट दिले असता, अचूकपणे सांगू शकेल, की दुसरी आज्ञावली हे इनपुट चघळून थांबणार की सतत व्यस्त राहणार.
चला, तर मग. आपली विरोधाभासजनक पद्धती वापरूया. म्हणजे काय खरे समजायचे ? आठवते आहे तर तुम्हाला.
समजा, अशी आज्ञावली बनवणे शक्य आहे. तिला आपण ‘देव’ म्हणूया. ह्या ‘देव’ आज्ञावलीला दोन इनपुट्स आहेत. ‘मानव’ नावाची एक आज्ञावली, आणि ‘खाद्य’ नावाचे दुसरे इनपुट. आणि ‘देव’ ही आज्ञावली अचूक सांगते की कुठलीही ‘मानव’ ही आज्ञावली कुठलेही ‘खाद्य’ इनपुट दिल्यावर थांबते (’देव’ सांगते थां), की सतत व्यस्त राहते (देव सांगते ‘व्य’). त्याला गणिती भाषेत लिहू या:
देव(मानव, खाद्य) = थां/व्य (मानव आणि खाद्य ह्यांच्या ठिकाणि कुठल्याही दोन संख्या टाका)
आता अशी आज्ञावली आहे असे गृहीत धरून आपण ‘राक्षस’ नावाची दुसरी आज्ञावली सहज बनवू. ही आज्ञावली फक्त एक इन्पुट घेईल, मानव असे:
राक्षस(मानव):
‘मानव’च्या दोन प्रती करा.
‘देव’ ह्या आज्ञावलीला ह्यातील एक प्रत आज्ञावली म्हणून, तर दुसरी खाद्य म्हणून द्या.
समजा देव(मानव, मानव) चे उत्तर ‘थांबते’ असे असेल, तर सतत व्यस्त रहा.
आता ह्या ‘राक्षस’ आज्ञावलीला इनपुट म्हणून ‘राक्षस’ च द्या आणि बघा काय होते ते.म्हणजे ‘राक्षस’ ही आज्ञावली ह्या इनपुटवर थांबते की सतत व्यस्त राहते ?
समजा राक्षस(राक्षस) थांबली, तर याचा अर्थ देव(राक्षस,राक्षस) चे उत्तर व्यस्त असे आले. पण देव(राक्षस,राक्षस) चे उत्तर व्यस्त कधी असेल ? समजा राक्षस ही आज्ञावली राक्षस ह्या इनपुटवर सतत व्यस्त राहत असेल तर. हा एक विरोधाभास.
समजा राक्षस(राक्षस) व्यस्त राहिली, तर याचा अर्थ देव(राक्षस,राक्षस) चे उत्तर ‘थांबते’ असे आले. हा दुसरा विरोधाभास.
याचाच अर्थ की ‘राक्षस’ ही आज्ञावली बनवणे शक्य नाही. याचाच अर्थ ‘देव’ ही आज्ञावली बनवणे शक्य नाही.
ही माझी तिसरी आवडती सिद्धता. आधीच्या दोन सिद्धता शाळेत असताना वाचल्या होत्या. ही तिसरी कॉलेजात असताना. पण ह्या तीनही सिद्धता वाचताना अंगावर सारखेच रोमांच उभे राहिले होते, हे आजही आठवते. अण्णांचा यमनकल्याण जसा अंगावर रोमांच उभा करतो तसेच.
[आधीच्या सिद्धतांसारखीच ही सिद्धतादेखील इंग्रजी विकीपीडियात Halting Problem ह्या सदरात सापडू शकेल.]