जवाबों:
इससे पहले कि मैं आपके सामान्य प्रश्न का उत्तर दूं, मुझे पहले एक कदम वापस लेने दें, कुछ इतिहास की पृष्ठभूमि दें, और एक प्रारंभिक प्रश्न का उत्तर दें: क्या गैर-गणना योग्य कार्य भी मौजूद हैं?
[सांकेतिक ध्यान दें: हम किसी भी समारोह से संबंधित कर सकते हैं एक भाषा के साथ और उसके बाद की decidability पर चर्चा बल्कि की कम्प्यूटेबिलिटी से ]
कुछ ऐसी भाषाएं हैं जिन्हें कोई भी ट्यूरिंग मशीन तय नहीं कर सकती है। यह तर्क सरल है: अलग-अलग टीएम में "केवल" कई भिन्न हैं, लेकिन बेशुमार कई विभिन्न भाषाएं हैं। इस प्रकार अधिकांश भाषाएं हैं, और बाकी (असीम रूप से कई) हैं। आगे की पढाई:
एक विशिष्ट अवांछनीय भाषा पर अपना हाथ रखने के लिए, विचार विकर्णीकरण (जॉर्ज कैंटर, 1873) नामक एक तकनीक का उपयोग करना है जो मूल रूप से यह दिखाने के लिए इस्तेमाल किया गया था कि पूर्णांक से अधिक वास्तविक संख्याएं हैं, या दूसरे शब्दों में, उस ।
पहली अनिर्दिष्ट भाषा के निर्माण के लिए विचार सरल है: हम सभी ट्यूरिंग मशीनों (जो संभव है क्योंकि वे पुनरावृत्ति करने योग्य हैं!) को सूचीबद्ध करते हैं, और कम से कम एक इनपुट पर प्रत्येक टीएम से असहमत होने वाली भाषा बनाते हैं।
उपरोक्त में, प्रत्येक पंक्ति एक TM है और प्रत्येक स्तंभ एक इनपुट है। सेल का मान 0 है यदि TM अस्वीकार करता है या कभी नहीं रुकता है, और 1 यदि TM उस इनपुट को स्वीकार करता है। हम को भाषा के रूप में परिभाषित करते हैं कि में -th इनपुट सम्मिलित है यदि और केवल यदि -th TM उस इनपुट को स्वीकार नहीं करता है।D i i
इसके बाद के संस्करण, टेबल के बाद के बाद से स्वीकार करता है । इसी तरह, , लेकिन से स्वीकार नहीं करता है ।एम 1 ε 0 ∉ डी 1 ∈ डी एम 3 1
अब, मान लें कि तय करता है और तालिका में लाइन देखता है : यदि कॉलम में है , तो उस इनपुट को स्वीकार करता है, लेकिन यह में नहीं है , और यदि कोई है, तो इनपुट में है लेकिन इसे स्वीकार नहीं करता है। इसलिए, तय नहीं करता है , और हम विरोधाभास पर पहुंच गए। डी कश्मीर 1 कश्मीर एम कश्मीर डी 0 डी एम कश्मीर एम कश्मीर डी
अब आपके प्रश्न के लिए। यह साबित करने के कई तरीके हैं कि एक भाषा अनिर्दिष्ट है। मैं सबसे आम लोगों को छूने की कोशिश करूंगा।
पहली विधि, सीधे दिखाना है कि कोई भाषा अनिर्दिष्ट है, यह दिखा कर कि कोई TM इसे तय नहीं कर सकता है। यह ususally ऊपर दिखाए गए विकर्ण विधि का अनुसरण करता है।
उदाहरण।
दिखाएँ कि (विकर्ण भाषा का पूरक) है।
सबूत।
मान लें कि है, और को इसका होने दें । दो मामले हैं: एमडी
कभी-कभी हम क्लोजर गुणों का उपयोग कर सकते हैं यह दिखाने के लिए कि कुछ भाषा निर्णायक नहीं है, अन्य भाषाओं के आधार पर जिन्हें हम पहले से ही जानते हैं कि वे निर्णायक नहीं हैं।
विशेष रूप से, यदि डिसाइडेबल नहीं है (हम लिख , तो भी इसके पूरक) अनिर्णनीय है: अगर निर्णायक होती है के लिए हम सिर्फ तय करने के लिए इसका इस्तेमाल कर सकते जब भी स्वीकार कर खारिज और इसके विपरीत। चूँकि हमेशा एक उत्तर के साथ रुकता है (यह एक डिकडर है), हम हमेशा इसके उत्तर को उल्टा कर सकते हैं।एल ∉ आर ¯ एल एम ¯ एल एल एम एम
निष्कर्ष: विकर्ण भाषा अनिर्णनीय, है । एल डी ∉आर
एक समान तर्क को ध्यान में रखते हुए लागू किया जा सकता है कि यदि और उसके पूरक पुनरावर्ती रूप से प्रवर्तनीय हैं, तो दोनों निर्णायक हैं। यह विशेष रूप से उपयोगी है अगर हम यह साबित करना चाहते हैं कि एक भाषा पुनरावृत्ति करने योग्य नहीं है, अनिर्णय की तुलना में एक मजबूत संपत्ति है।¯ ल
आमतौर पर, यह सीधे तौर पर साबित करना मुश्किल होता है कि कोई भाषा अनिर्वाय है (जब तक कि यह "विकर्ण" फैशन में पहले से ही निर्मित न हो)। अनिर्णय साबित करने के लिए अंतिम और सबसे आम तरीका एक और भाषा का उपयोग करना है जिसे हम पहले से ही अनिर्दिष्ट होने के लिए जानते हैं। यह विचार एक भाषा को दूसरे में कम करने के लिए है: यह दर्शाने के लिए कि यदि एक निर्णायक है, तो दूसरे को भी अस्वीकार्य होना चाहिए, लेकिन उनमें से एक को पहले से ही ज्ञात नहीं किया जा सकता है जो इस निष्कर्ष पर पहुंचता है कि पहला भी अनिर्वचनीय है। में कटौती के बारे में और अधिक पढ़ें "क्या एक दूसरे के लिए समस्याओं को कम करने के लिए आम तकनीक हैं?" ।
उदाहरण।
दिखाएँ कि विकर्ण भाषा xts असत्य है।
सबूत।
हम जानते हैं कि है। हम को कम कर (इसे निरूपित किया जाता है ), , हम दिखाते हैं कि यदि , तो हम को तय करने के लिए उसके उपयोग कर सकते हैं , जो एक विरोधाभास है।एल डी एच पी एल डी ≤ एच पी एच पी एल डी
कमी एक उम्मीदवार परिवर्तित करके काम करता है के लिए (यानी एक इनपुट के लिए किसी भी संभावित निर्णायक / स्वीकर्ता के लिए ) एक उम्मीदवार को के लिए ऐसा है कि यदि और केवल यदि । हम यह सुनिश्चित करते हैं कि यह रूपांतरण कम्प्यूटेशनल है। इस प्रकार, तय करना हमें बताता है कि या नहीं , इसलिए यदि हम एचपी तय कर सकते हैं तो हम डी भी तय पाएंगे।एल डी एल डी डब्ल्यू ' एच पी डब्ल्यू ∈ एल डी डब्ल्यू ' ∈ एच पी डब्ल्यू ' डब्ल्यू ∈ एल डी एल डी
रूपांतरण इस प्रकार है। कुछ , और आउटपुट , जहाँ एक TM है जो तरह ही व्यवहार करता है , लेकिन यदि अस्वीकार करता है, तो जाता है। अनंत पाश में।डब्ल्यू ' = ⟨ एम ' , ⟨ एम ⟩ ⟩ एम ' एम एम एम '
देखते हैं कि आवश्यकताओं को पूरा करते हैं।
यदि , इसका मतलब है कि हाल्ट और इनपुट स्वीकार करता है । इसलिए, भी रुक जाता है और इनपुट स्वीकार कर । इस प्रकार, ।
दूसरी ओर, यदि तो या तो खारिज कर दिया या कभी नहीं पर हाल्ट । दोनों स्थितियों में पर एक अनंत लूप में जाएगा । इस प्रकार, डब्ल्यू ∈ एल डी एम ⟨ एम ⟩ एम ' ⟨ एम ⟩ ⟨ एम ' , ⟨ एम ⟩ ⟩ ∈ एच पी डब्ल्यू ∉ एल डी एम ⟨ एम ⟩ एम ' ⟨ एम ⟩ ⟨ एम ' , ⟨ एम ⟩ ⟩ ∉ एच पी डब्ल्यू ∈ एल डी डब्ल्यू ' ∈ एच पी
, और हम उस और यदि केवल , और इस प्रकार उस दिखाया गया है ।
आगे पढ़े: कटौती के लिए कई उदाहरण और भाषाओं की अशुद्धता को साबित करने के लिए कटौती टैग के माध्यम से पाया जा सकता है ।
वैध होने के लिए कटौती पर कुछ और प्रतिबंध हैं। रूपांतरण स्वयं ही संगणनीय होना चाहिए , और किसी भी इनपुट के लिए अच्छी तरह से परिभाषित होना चाहिए ।
इनपुट तरह दिखता है , जहाँ एक TM है और कुछ स्ट्रिंग है। तो यहाँ हम स्ट्रिंग को मशीन का एन्कोडिंग चुनते हैं , जो कि कुछ स्ट्रिंग है।⟨ एम , एक्स ⟩ एम एक्स एक्स एम
"इसलिए हर बार जब हम को यह साबित करना चाहते हैं कि यह , तो हमें (या ) को कम करने की आवश्यकता है ? क्या कोई शॉर्टकट नहीं है?"एल डी एच पी
खैर, वास्तव में, वहाँ है। यह राइस की प्रमेय है ।
प्रमेय का कहना है कि कई भाषाएं जिनकी एक निश्चित संरचना है, वे असंदिग्ध हैं। क्योंकि इन सभी भाषाओं में यह निश्चित संरचना है, हम एक बार कमी कर सकते हैं और इसे किसी भी भाषा में लागू कर सकते हैं जो समान संरचना को स्वीकार करता है।
प्रमेय को औपचारिक रूप से निम्नलिखित तरीके से कहा गया है,
प्रमेय (चावल)। एक को देखते हुए संपत्ति , निम्नलिखित भाषा अनिर्णनीय एल एस = { ⟨ एम ⟩ | एल ( एम ) ∈ एस }
सेट में भाषाओं का एक सबसेट है ; हम इसे एक संपत्ति कहते हैं क्योंकि यह स्वीकृत भाषा की एक संपत्ति का वर्णन करती है । सभी टीएम जिनकी भाषा इस संपत्ति को संतुष्ट करती है, वे से संबंधित हैं ।आर ई एल ( एम ) एल एस
उदाहरण के लिए, वह संपत्ति हो सकती है जिसे स्वीकृत भाषा में ठीक दो शब्द हैं:एल ( एम )
एल एस 2 एल एस 2 = { ⟨ एम ⟩ | एल ( एम ) ∈ एस } = { ⟨ एम ⟩ | | एल ( एम ) | = 2 } ।
इस मामले में उन सभी TM का सेट है, जिनकी भाषा में ठीक दो शब्द हैं:
संपत्ति बहुत सरल हो सकती है, लेकिन यह सभी आरई भाषाएं या आरई भाषाओं में से कोई भी नहीं हो सकती हैं। यदि या तो संपत्ति को तुच्छ कहा जाता है , और प्रेरित है। एक सरल लिए एक उदाहरण केवल एक ही भाषा है, । ध्यान दें कि हालांकि केवल एक ही भाषा है, वहाँ असीम कई मशीनें हैं जिनकी भाषा है , इसलिए अनंत, और अनिर्णनीय है।
कई भाषाओं की अनिर्वायता साबित करने के लिए प्रमेय बहुत शक्तिशाली है।
उदाहरण।
भाषा , अनिर्दिष्ट है
सबूत।
हम को रूप में लिख सकते हैं , जो कि संपत्ति के लिए । यह एक गैर-तुच्छ संपत्ति है (इसमें भाषा , लेकिन उदाहरण के लिए, भाषा । इसलिए, चावल की प्रमेय, द्वारा। योग्य नहीं है।एल ∅
अब हम प्रमेय को सिद्ध करते हैं। जैसा कि ऊपर उल्लेख किया गया है, हम से (किसी भी मनमाने ढंग से गैर-तुच्छ ) के लिए कमी दिखाने जा रहे हैं ।
सबूत।
चलो एक गैर तुच्छ संपत्ति हो, । हम दिखाने के , कि है, हम को कम के लिए ताकि हम तय कर सकें कि हम तय करने के लिए सक्षम हो जाएगा (जिसे हम असंभव को पता है, इसलिए, डिसाइडेबल नहीं किया जा सकता)। नीचे दिए गए प्रमाण में हम मानते हैं कि खाली भाषा हिस्सा नहीं है , जो कि । (यदि रिक्त भाषा , तो प्रॉपर्टी के पूरक पर एक समान प्रमाण काम करता है , मैं विवरण छोड़ दूंगा)। चूंकिnontrivial है, इसमें कम से कम एक भाषा शामिल है; आइए उस भाषा को कहते हैं और मान हैं एक ऐसी मशीन है जो स्वीकार करता है (ऐसी मशीन मौजूद है, क्योंकि केवल RE में भाषाएं शामिल करता है)।
याद इस तरह के एक कमी में (देखें अनुभाग 3 ऊपर), हम कैसे एक इनपुट कन्वर्ट करने के लिए दिखाने की जरूरत है कि के लिए एक इनपुट में के लिए ताकि
चलो , हम इसे में तब्दील जहां मशीन का वर्णन (एक इनपुट पर ) निम्नलिखित है:
हम देखते हैं कि यह रूपांतरण वैध है। पहले ध्यान दें कि दिए गए के विवरण का निर्माण करना सरल है ।
यदि , तो पर । इस स्थिति में, चरण 2 से आगे बढ़ता है, और तरह व्यवहार करता है । इसलिए इसकी स्वीकृत भाषा । इसलिए, ।
यदि तो पर लूप करता है । इस मामले में, किसी भी इनपुट पर छोरों - यह चरण 1 भाषा द्वारा स्वीकार में अटक जाती है इस मामले में, रिक्त है । इसलिए, ।
चावल की प्रमेय हमें एक आसान तरीका दिखाने के लिए देता है कि एक निश्चित भाषा कि है, कि संतुष्ट करता है कुछ गुण अनिर्णनीय, । राइस के प्रमेय का विस्तारित संस्करण हमें यह निर्धारित करने की अनुमति देता है कि क्या भाषा पुनरावर्ती-सुगम्य है या नहीं, यह निर्धारित करता है कि क्या , जाँच करके कि कुछ अतिरिक्त गुणों को संतुष्ट करता है या नहीं ।
प्रमेय (चावल, विस्तारित)। एक संपत्ति को देखते हुए , भाषा में पुनरावर्ती-गणना योग्य ( ) है यदि और केवल निम्नलिखित सभी तीन कथनों को संयुक्त रूप से। पकड़
- किसी भी दो , यदि और तो ।
- यदि तो एक उपसमुच्चय ताकि ।
- में सभी परिमित भाषाओं का समुच्चय गणना करने योग्य है (दूसरे शब्दों में: एक TM है जो सभी परिमित भाषाओं को _ में समाहित करता है )।
सबूत।
यह एक "अगर और केवल अगर" प्रमेय है, और हमें इसकी दोनों दिशाओं को साबित करना चाहिए। सबसे पहले, हम दिखाते हैं कि यदि कोई भी स्थिति (1,2,3) पकड़ में नहीं , तो । उसके बाद हम दिखाएंगे कि यदि तीनों स्थितियाँ एक साथ हैं, तो ।
यदि (1,2) पकड़ है, लेकिन (3) नहीं है, तो ।
मान हैं कि , और हम देखेंगे कि हमारे पास (और इस प्रकार, इन सभी भाषाओं का सेट RE है) को स्वीकार करने का एक तरीका है , इस प्रकार शर्त (3) रखती है और हम एक विरोधाभास तक पहुँचते हैं । कैसे तय करें कि एक परिमित , संबंधित है या नहीं? आसानी से - हम के वर्णन का उपयोग एक मशीन निर्माण के लिए करते हैं जो में केवल शब्दों को स्वीकार करती है , और अब हम पर की मशीन चलाते हैं (याद रखें - हमने मान लिया है , इसलिए एक ऐसी मशीन है जो स्वीकार!)। यदि फिर और बाद से , इसकी मशीन इनपुट पर हाँ , और हम कर रहे हैं।
यदि (2,3) पकड़ है, लेकिन (1) नहीं है, तो ।
हम मानते हैं कि और हम दिखाएंगे कि हमारे पास को तय करने का एक तरीका है , जिससे विरोधाभास हो सकता है।
क्योंकि हालत (1) नहीं रखता है, वहाँ एक भाषा है है और इसका एक सुपरसेट, ताकि । अब हम तय करने के लिए धारा 4 में प्रयुक्त तर्क को दोहराने के लिए जा रहे हैं : एक इनपुट दिया के लिए , हम एक मशीन का निर्माण जिनकी भाषा है अगर या अन्यथा, इसकी भाषा । फिर, हम तय कर सकते हैं : या तो पर , या लिए आरई-मशीन स्वीकार करता है।; हम दोनों को समानांतर में चला सकते हैं और गारंटी दी जाती है कि कम से कम एक पड़ाव होगा।
आइए के निर्माण का विवरण दें (इनपुट पर ):
यह काम क्यों करता है? यदि तो 1.1 कभी भी नहीं है, और बिल्कुल उन सभी इनपुटों को स्वीकार करता है जिन्हें चरण 1.2 पर स्वीकार किया जा रहा है, इसलिए । दूसरी ओर, अगर तो, कुछ बिंदु पर 1.1 स्टेप 1.1 और बिल्कुल स्वीकार करता है । ऐसा हो सकता है कि पहले से स्वीकार कर ले, लेकिन बाद से, इस मामले में यह की भाषा नहीं बदलता है ।एम ' एल ( एम ' ) = एल 1 ( ⟨ एम ⟩ , एक्स ) ∈ एच पी एम ' एल 2 1.2 एल 1 ⊆ एल 2 एम '
यदि (1,3) पकड़ है, लेकिन (2) नहीं है, तो ।
फिर से, हम को मानेंगे और कि हो जाता है, जो एक विरोधाभास है।एल एस ∈आरई
यदि स्थिति (2) पकड़ में नहीं आती है, तो किसी भी लिए, उसके सभी परिमित संतुष्ट (ध्यान दें कि अनंत होना चाहिए, क्योंकि )। जैसा कि ऊपर दिया गया है, किसी दिए गए इनपुट लिए का निर्णय करने के लिए , हम एक मशीन निर्माण करते हैं, जिसकी भाषा यदि और कुछ परिमित अन्यथा। विरोधाभास ऊपर के समान तरीके से अनुसरण करता है।
इस मशीन का निर्माण पिछले जैसा है। मशीन (पर इनपुट ) करता है:
यह मानता है कि, अगर , तो किसी बिंदु पर, 1000 चरणों के बाद, पर । इसलिए, चरण 1 लंबाई ) के किसी भी इनपुट पर (और अस्वीकार) पर रोक देगा । इसलिए, इस मामले में, है परिमित । यह भी ध्यान दें कि , और विशेष रूप से, स्थिति (2) की अमान्यता पर हमारी धारणाओं के अनुसार, हमारे पास वह ।
दूसरी ओर, यदि , तो चरण 1 कभी नहीं , और हम कभी भी चरण 2 में अस्वीकार नहीं करते हैं। इस मामले में यह देखना आसान है कि और में विशेष रूप से, ।
विस्तारित प्रमेय की दूसरी दिशा दिखाने के लिए हमें छोड़ दिया गया है। यही है, हमें यह दिखाने की जरूरत है कि यदि सभी स्थितियां (1,2,3) हैं, तो हमारे पास एक टीएम है जो स्वीकार करता है, । दूसरे शब्दों में, हमें एक मशीन दिखाने की आवश्यकता है ताकि किसी भी इनपुट जिसके लिए , मशीन इस इनपुट को स्वीकार करती है, ।
यहाँ बताया गया है कि मशीन कैसे व्यवहार करती है (इनपुट ):
यह काम क्यों करता है? यदि तो इसका में एक परिमित सबसेट , और एक बार उस उपसमुच्चय को आउटपुट करता है, चरण 2.2 / 2.3 में पाया जाएगा कि उस भाषा के सभी शब्दों को स्वीकार करता है। स्वीकार करना।
दूसरी ओर, यदि यह सब शब्दों में स्वीकार नहीं कर किया जा सकता है किसी के लिए । वास्तव में, स्थिति (1) के अनुसार, कोई भी में भी है , इसलिए यदि कुछ लिए में सभी शब्दों को स्वीकार करता है , तो और इस प्रकार । विरोध में।
अंत में, ध्यान दें कि निम्नलिखित ऊपर का एक सरल (और बहुत उपयोगी) कोरोलरी है:
कोरोलरी (चावल, विस्तारित)। एक गैर तुच्छ संपत्ति को देखते हुए , ताकि , भाषा में, पुनरावर्ती-गणना योग्य नहीं है, ।
एक उपयोगी उपकरण है चावल का प्रमेय । यहाँ यह कहा गया है:
चलो आंशिक रूप से गणना कर सका एकल कार्यों में से एक गैर तुच्छ सेट और एक गोडेल नंबरिंग की । फिर का सूचकांक सेट
पुनरावर्ती नहीं है।
आप इसे ट्यूरिंग मशीनों के एन्कोडिंग (या किसी अन्य ट्यूरिंग-पूर्ण प्रोग्रामिंग भाषा), यानी संदर्भ में भी व्यक्त करते हैं ; यहाँ एक गोडेल नंबरिंग को परिभाषित करता है।
है, आप इस तरह सेट साबित करने के लिए चावल की प्रमेय का उपयोग कर सकते गैर पुनरावर्ती जो गैर तुच्छ समारोह सेट के सूचकांक सेट हैं (या ऐसे को कम करने योग्य है )।
ध्यान दें कि एक एक्सटेंशन है जिसका उपयोग यह दिखाने के लिए किया जा सकता है कि कुछ इंडेक्स सेट पुनरावृत्ति करने योग्य नहीं हैं।
Let एक Gödel नंबरिंग। भीलों के सेट पर विचार करें
।
अब चूँकि
राइस के प्रमेय को लागू किया जा सकता है और पर्णनीय नहीं है।
चूंकि कई गोडेल संख्याओं से परिचित नहीं हैं, कृपया ध्यान दें कि उदाहरण ट्यूरिंग मशीनों (यानी कार्यक्रमों) के संदर्भ में ।
भीलों के सेट पर विचार करें
जो निश्चित रूप से कम्प्यूटेशनल नहीं है। हालाँकि, किसी लिए कोई इंडेक्स सेट नहीं है ! कुछ लिए दें । चूँकि एक Gödel नंबरिंग है, इसलिए (infinitely कई) with लेकिन सभी होल्ड के लिए हैं क्योंकि ।पी च = φ मैं मैं ∈ एक φ जे ≠ मैं φ j = च जे ∉ एक च ( 2 ) = मैं ≠ j
इस से सावधान रहो! अंगूठे के एक नियम के रूप में, यदि फ़ंक्शन का सूचकांक "दाहिने हाथ की ओर" या सेट परिभाषा में फ़ंक्शन के पैरामीटर के रूप में उपयोग किया जाता है, तो यह संभवत: एक इंडेक्स सेट नहीं है। आपको यह दिखाने के लिए कि कोई सेट इंडेक्स सेट नहीं है , आपको Gödel नंबर और फ़िक्सपॉइंट प्रमेय की संपत्ति की आवश्यकता हो सकती है ।