गैर-नियतात्मक ट्यूरिंग मशीन में गैर-नियतात्मकता परिमित ऑटोमेटा से अलग है और ऑटोमेटा को नीचे धकेलती है?


9

इनपुट स्ट्रिंग के रूप में दिया जाता है w1w2...wn। फिर अगर कोई NFA वर्तमान में राज्य में हैr (और वर्णमाला तक इनपुट पढ़ा है wi ) फिर अगले इनपुट प्रतीक को पढ़ने से पहले एनएफए दो एनएफए में विभाजित हो जाता है, एक राज्य में होता है r और अन्य में किया जा रहा है s, अगर वहाँ प्रकार का एक संक्रमण है rϵs। यदि प्रकार का एक चक्र हैrϵsϵq1....ϵqkϵr, कहाँ पे qi एनएफए के कुछ राज्य हैं, फिर राज्य में एक और एनएफए को याद करने का कोई फायदा नहीं है r उस बिंदु तक जहां वर्णमाला तक इनपुट पढ़ा गया है wi

यदि एक पीडीए (गैर-नियतात्मक) राज्य में हैr (और इनपुट तक पढ़ा जाता है wi ) और वहाँ एक चक्र मौजूद है rϵ,ϵasϵ,ϵaq1....ϵ,ϵaqkϵ,ϵar (जहां संक्रमण ϵ,ϵa इसका मतलब है कि सुखदायक के बाद wi इनपुट से पढ़ा जाता है, कुछ भी पॉप या स्टैक और वर्णमाला से पढ़ा नहीं जाता है a स्टैक पर धकेल दिया जाता है) फिर अगला इनपुट वर्णमाला पढ़ने से पहले wi+1 राज्यों में अनंत पीडीए होगा r,s,q1,...qk क्योंकि एनएफए के विपरीत, हालांकि राज्य सीमित हैं स्टैक सामग्री अलग हो सकती है (अनंत संभावनाएं), अगर मैं गलत नहीं हूं।

एनएफए और पीडीए के साथ-साथ गैर-निर्धारकवाद की शक्ति से आता है ϵसंक्रमण। तो मुझे लगता है कि गैर-नियतात्मक ट्यूरिंग मशीन भी इसे गैर-नियतत्ववाद से प्राप्त करती हैϵएनएफए और पीडीए जैसे संक्रमण (पीडीए की तरह अधिक)। मुझे पता है कि एक नियतात्मक ट्यूरिंग मशीन एक गैर-नियतात्मक एक का अनुकरण कर सकती है (मुझे सबूत पता है जो ब्रेड-प्रथम खोज का उपयोग करता है)। लेकिन अब मुझे संदेह है कि यह कैसे संभव है। क्योंकि यदि उपरोक्त पीडीए में प्रकार का एक चक्र, गैर-नियतात्मक ट्यूरिंग मशीन के राज्य आरेख में मौजूद है तो अगला प्रतीक पढ़ने से पहलेwi+1नियतात्मक ट्यूरिंग मशीन तब भी जब गैर-नियतात्मक ट्यूरिंग मशीन की कुछ शाखा में कॉन्फ़िगरेशन का अनुकरण करते समय (जबकि bfs) को अनंत ट्यूरिंग मशीन का ट्रैक रखना होगा (फिर से राज्य परिमित हैं लेकिन टेप पर प्रतीकों में असीम संभावनाएं हैं)।
तो ट्यूरिंग मशीनों के मामले में गैर-नियतात्मकता को परिभाषित कैसे किया जाता है? क्या मैं कुछ तुच्छ समझ रहा हूं? गैर-नियतात्मक ट्यूरिंग मशीनों का उपयोग करेंϵ संक्रमण?


मुझे अपने तुच्छ संदेहों के लिए खेद है। अगर कुछ भी गलत है तो मैं अपने सवाल को अपडेट कर सकता हूं।


2
शीर्षक प्रश्न के संबंध में, औपचारिक परिभाषाओं में बहुत अंतर नहीं है। उभरती हुई शक्ति के लिए, हाँ, इसके प्रत्येक मशीन मॉडल में बहुत अलग निहितार्थ हैं। शेष प्रश्न के लिए, पार्स करना कठिन है। :(
vzn

1
क्या आपने विकिपीडिया की जाँच की है? en.wikipedia.org/wiki/Non-deterministic_Turing_machine
युवल फिल्मस

@YuvalFilmus हाँ मेरे पास है। संक्रमण फ़ंक्शन की परिभाषा में पावर सेट शामिल है जिसे मैं समझता हूं। लेकिन की बातepsilonट्यूरिंग मशीनों में संक्रमण अभी भी मेरे लिए अस्पष्ट है।
षष्टेश

@vzn मुझे ऐसा लगा। मैं माफी चाहता हूँ। अपनी शंकाओं को सामने रखने में मुझे बुरा लगता है। यदि आप सुझाव दें तो मैं सुधार कर सकता हूं।
षष्ठेश

जवाबों:


8

सभी संदर्भों में गैर-नियतात्मकता एक ही अवधारणा है - किसी भी बिंदु पर आगे बढ़ने के लिए मशीन को कई विकल्पों की अनुमति है। हालाँकि, डीएएफए / एनएफए और पीडीए हमेशा कुल कार्यों को परिभाषित करते हैं, जबकि ट्यूरिंग मशीन (निर्धारक या गैर-नियतात्मक) सामान्य कार्यों को आंशिक रूप से परिभाषित करते हैं, क्योंकि शब्दार्थ थोड़ा अलग है।

एक आंशिक फ़ंक्शन केवल डोमेन के हिस्से पर परिभाषित किया गया है। अगरf पर परिभाषित नहीं है x फिर हम लिखते हैं f(x)=। (इसलिएf वास्तव में एक कुल कार्य है, लेकिन सीमा में एक विशेष तत्व है जो यह दर्शाता है कि आउटपुट अपरिभाषित है।) एक नियतात्मक इलाज मशीन। M एक आंशिक कार्य को निम्नानुसार परिभाषित करता है: यदि M पर रुक जाता है x फिर M(x) जब टेप की सामग्री है M पर रुक जाता है x; और अन्यथा,M(x)=

एक नियतात्मक ट्यूरिंग मशीन डिक्रिपर में दो प्रकार के हॉल्टिंग स्टेट्स होते हैं, जिन्हें स्वीकार करना और अस्वीकार करना, और आंशिक फ़ंक्शन को निम्न प्रकार से परिभाषित करता है: यदिM पर रुक जाता है x स्वीकार करने की स्थिति में, तब (एक्स)=1; यदि यह अस्वीकार करने की स्थिति में है, तो(एक्स)=0; अगर यह रुकता नहीं है, तो(एक्स)=। अगरहमेशा रुकता है तो हम कहते हैं कि यह भाषा को स्वीकार करता हैएल={एक्स:(एक्स)=1}

एक गैर-नियतात्मक ट्यूरिंग मशीन (जो हमेशा एक डिकेडर है) को "शाखा" (किसी भी समय बिंदु पर कई संभावित विकल्प हैं) की अनुमति है, और इसमें निम्नलिखित शब्दार्थ हैं:

  • (एक्स)=1 अगर इनपुट पर एक्स, यंत्र सभी शाखाओं पर पड़ाव, कम से कम एक शाखा के लिए एक स्वीकार्य स्थिति में रुकना।
  • (एक्स)=0 अगर इनपुट पर एक्स, यंत्र सभी शाखाओं पर पड़ाव, हमेशा अस्वीकार की स्थिति में रुकना।
  • (एक्स)= अगर इनपुट पर एक्स जिस पर एक शाखा मौजूद है रुकता नहीं है।

इस परिभाषा को देखते हुए, यह स्पष्ट रूप से स्पष्ट है कि एक निर्धारक ट्यूरिंग मशीन डिक्राइडर का उपयोग करके गैर-नियतात्मक ट्यूरिंग मशीन का अनुकरण कैसे किया जाए: आप सभी शाखाओं की कोशिश करते हैं, यह जाँच कर कि उनमें से कोई भी स्वीकार करने की अवस्था को आगे बढ़ाता है या नहीं। सभी शाखाओं के रुक जाने के बाद, आप यह तय कर सकते हैं कि स्वीकार करने की स्थिति में जाना है या अस्वीकार की स्थिति में। यदि गैर-नियतात्मक ट्यूरिंग मशीन कुछ शाखा पर नहीं रुकती है, तो यह नियतात्मक एक होगा।


व्हाट अबाउट ε-moves? वे मुसीबत में है कि इसी automaton कभी नहीं रोक सकता है। परिमित ऑटोमेटा (एनएफए और पीडीए) के लिए हम चुपचाप गैर-रुकने वाले संगणना की उपेक्षा करते हैं। ऐसा करने का हमारा कारण यह है कि परिणामी भाषाएं हमेशा संगणनीय होती हैं, भले ही उन्हें निर्धारित करने के लिए भोली एल्गोरिथ्म (सभी गणना पथों का अनुकरण) काफी काम नहीं करता है। यह एनएफए के लिए इतना मुश्किल नहीं है, जिसे डीएफए में परिवर्तित किया जा सकता है। हालांकि, निर्धारक पीडीए गैर-नियतात्मक पीडीए की तुलना में कड़ाई से कमजोर हैं। फिर भी, आप यह दिखा सकते हैं कि प्रत्येक पीडीए बिना एक के बराबर हैε-प्रणाली (हालांकि प्रमाण संदर्भ-मुक्त व्याकरण के माध्यम से जा सकते हैं)।

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


धन्यवाद। मुझे एक आखिरी संदेह था। संक्रमण के साथ एक पीडीए मेंआर,सीरों, अगर पीडीए राज्य में है आर तो यह तभी विभाजित होगा जब ( इनपुट टेप से वर्णमाला पढ़ी जाती है, सी वर्णमाला ढेर से popped है और स्टैक में धकेल दिया जाता है) ε चाहे जो भी हो तथा सी हैं ( εया नियमित ढेर अक्षर)। क्या मैं सही हू ?
शाश्वत

जब भी आगे बढ़ने के लिए एक से अधिक विकल्प हों तब @sasha निष्पादन "स्प्लिट्स" करें।
युवल फिल्मस

मैं कैसे साबित करने के बारे में है कि एक पीडीए के साथ εसंक्रमण उनके बिना एक में परिवर्तित हो सकते हैं? मुझे पता है कि मैं किसी भी पीडीए द्वारा स्वीकार की गई भाषा को हमेशा साबित कर सकता हूं, इसे सामान्य चॉम्स्की के रूप में अपने सीएफजी में परिवर्तित करके निर्णायक है। लेकिन फिर भी कोई एप्सिलॉन संक्रमण के साथ पीडीए में परिवर्तित नहीं हो सकता। मैं वास्तव में किसी भी संकेत की सराहना करूंगा।
शाश्वत

1
@ साशा आप संदर्भ-मुक्त व्याकरण को सामान्य रूप में ग्रीबाच में पीडीए के साथ बदल सकते हैं εसंक्रमण (कम से कम विकिपीडिया के अनुसार)।
युवल फिल्मस

1
@YuvalFilmus, GNF से एक nondeterministic निर्माण अनिवार्य रूप से पुनरावर्ती वंश है: एक उत्पादन के लिए बी1बी2...बीn, अगर इनपुट पर स्टैक के शीर्ष पर है बदलो द्वारा बी1...बीnढेर पर। नहींεदृष्टि में। अभी भी nonteterministic (कई हो सकते हैं-प्रकरण जो शुरू होते हैं ...)।
वॉनब्रांड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.