क्या ट्यूरिंग मशीन खाली भाषा के साथ मशीनों की भाषा तय कर सकती है ?


11

बता दें कि क्या कोई ट्यूरिंग मशीन R है जो भाषा का तय करती है (मेरा मतलब यह नहीं है कि पहचानती है) ?

L={MM is a Turing Machine and L(M)=}.

L

ऐसा लगता है कि उसी तकनीक का उपयोग यह दिखाने के लिए किया गया था कि यहां भी काम करना चाहिए।{AA is a DFA and L(A)=}


1
आपने क्या प्रयास किया है? उदाहरण के लिए, क्या आप खाली भाषा के लिए डीएफए के बारे में सोच सकते हैं? याद रखें कि DFA को बहुत सीमित TM के रूप में सोचा जा सकता है।
शाल

1
ज़रूर। प्रारंभ राज्य से, इनपुट टेप पर ध्यान दिए बिना, "हॉल्ट रिजेक्ट" स्थिति में जाएं। यह स्पष्ट रूप से भाषा में प्रत्येक स्ट्रिंग को स्वीकार करता है और हर स्ट्रिंग को भाषा में अस्वीकार नहीं करता है।
पैट्रिक87

8
@mahdisaeedi: उत्तरार्द्ध एक पूरी तरह से अलग सवाल है! आप पूछ रहे हैं कि क्या यह तय करना उचित है कि क्या कोई टीएम खाली भाषा को पहचानता है - और इसका जवाब नहीं है, देखें चावल की प्रमेय
Shaull

जवाबों:


9

चिह्नित करने से, आप शायद पुनरावर्तन विश्लेषण का मतलब है - प्रारंभिक अवस्था से स्वीकार करने की स्थिति तक का रास्ता खोज रहे हैं। दरअसल, डीएफए की भाषा खाली है यदि ऐसा कोई रास्ता नहीं है।

आइए एक उदाहरण से शुरू करें कि यह टीएम में विफल क्यों है। एक TM पर विचार करें, जो कि , यह इनपुट को अनदेखा करता है, लेकिन यह टेप पर लिखता है , सिर को दाईं ओर ले जाता है और q 1 अवस्था में चला जाता है , फिर q 1 में यह फिर से इनपुट को अनदेखा करता है, एक लिखता है , सिर को बाईं ओर ले जाता है और चला जाता है करने के लिए क्यू 2 । में क्ष 2 , अगर इसे पढ़ता है एक है, तो यह लिखते हैं एक , चलता रहता है सिर सही और वापस चला जाता है क्ष 1q0aq1q1aq2q2aaq1

है यही कारण है, मशीन सिर्फ लिखते हैं दो राज्य (के बीच और विकल्पों क्ष 1 और क्यू 2 ) और हमेशा दो आसन्न है एक 'टेप पर है।aq1q2a

अब हम से एक संक्रमण जोड़ते हैं कि जब b पढ़ने को स्वीकार करने की स्थिति में जाता है और रुका होता है।q2b

इस मशीन की भाषा खाली है। दरअसल, रन हमेशा लूप में फंस जाता है , और स्वीकार करने की स्थिति में कभी नहीं आएगा। फिर भी, एक राज्य को स्वीकार करने की स्थिति है। तो क्या गलत हुआ?q1q2

खैर, सहज रूप से, टीएम का `` राज्य '' जानकारीपूर्ण नहीं है जो रन की निरंतरता का वर्णन करे। सभी जानकारी रखने के लिए, आपको टीएम के कॉन्फ़िगरेशन की आवश्यकता है , जिसमें राज्य, सिर की स्थिति और टेप की सामग्री शामिल है। यदि आप एक कॉन्फ़िगरेशन-पथ (जिसे रन कहा जाता है ) को स्वीकार करने वाले कॉन्फ़िगरेशन में पाते हैं , तो वास्तव में भाषा गैर-रिक्त है, और यह एक iff स्थिति है।

कॉन्फ़िगरेशन ग्राफ़ पर रीचैबिलिटी विश्लेषण का उपयोग करने में समस्या यह है कि यह अनंत हो सकता है। यही कारण है कि भाषा शून्यता का निर्णय करना अनिर्दिष्ट है।

यही कारण है कि भाषा गैर-शून्यता पहचानने योग्य है - आप अनंत कॉन्फ़िगरेशन ग्राफ पर बीएफएस कर सकते हैं। यदि कोई स्वीकार करने के लिए एक रास्ता है, तो आप इसे अंततः पा लेंगे। यदि वहाँ नहीं है, हालांकि, तो आप एक अनंत खोज में फंस सकते हैं।


एक TM का संक्रमण कार्य इस प्रकार है: F (Q T) -> (Q T * {L, R})। क्या आप इनपुट को अनदेखा करने के लिए फ़ंक्शन लिख सकते हैं?
एमएसएन

हाँ। इस स्थिति में, , F ( q 1 , a ) = F ( q 1 , b ) = ( q 2 , a) , एल ) , एफ ( क्यू 2 , ) = (F(q0,a)=F(q0,b)=(q1,a,R)F(q1,a)=F(q1,b)=(q2,a,L) , और F ( q 2 , b ) = ( q a c c , a , L ) (लेकिन उत्तरार्द्ध कभी नहीं पहुँचा जाता है)। F(q2,a)=(q1,a,R)F(q2,b)=(qacc,a,L)
शाल

9

चावल के प्रमेय केकारण अनिर्दिष्ट है, जो बताता है कि आंशिक कार्यों के गैर तुच्छ गुणधर्म नहीं हैं।A

  1. एक TM है जो किसी भी स्ट्रिंग को स्वीकार नहीं करता है। (जो सीधे अस्वीकार की स्थिति में जाता है)।
  2. एक TM है जो हर स्ट्रिंग को स्वीकार करता है। (जो सीधे राज्य को स्वीकार करता है)।

इसका मतलब यह है कि तत्वों द्वारा गणना किए गए कार्यों में एक गैर तुच्छ संपत्ति है। इसलिए एक डिसाइडेबल नहीं है।AA

केवल इस धारणा के तहत कि डीएफए राज्य संक्रमण तालिका या आदि जैसे एक विशेष तरीके से एन्कोडेड हैं (हम यह तय नहीं कर सकते कि टीएम केवल चावल की प्रमेय की वजह से नियमित भाषाओं को स्वीकार करता है!)। इस मामले में राइस की प्रमेय लागू नहीं है क्योंकि पर निर्णय लेने के लिए किसी तत्व की विशेष एन्कोडिंग आवश्यक है। इसलिए हम आंशिक कार्यों पर निर्णय नहीं लेते हैं।EE

या DFA गणना कर सका - - (यह तय करने के लिए एक विशेष टीएम एक DFA है अगर समस्या थे कहने के लिए है, और यह रिक्त है द्वारा स्वीकार कर लिया भाषा, । चावल की प्रमेय सूचना के माध्यम से अनिर्णनीय होगा कि इस मामले में एक = ।)EA=E


6

एक अन्य संकेत: करने के लिए हॉल्टिंग समस्या को कम करने का प्रयास करें L

(मूल संकेत चावल के प्रमेय का उपयोग करना है, लेकिन इस मामले में एक प्रत्यक्ष प्रमाण भी बहुत सरल है।)


@Yuval_Filmus क्या यह कहना सही है कि यह भाषा ट्यूरिंग पहचानने योग्य भी नहीं है?
शनि

1
तुम क्या सोचते हो? क्या आप अपना दावा साबित कर सकते हैं? यदि हां, तो सवाल पूछने की कोई जरूरत नहीं है।
युवल फिल्मस

1

Lemma 1 : यदि L अनिर्दिष्ट है, तो L का पूरक है।

हम जानते हैं कि रुकने की समस्या, HTM अनिर्दिष्ट है। इसलिए, लेम्मा 1 के अनुसार हॉल्टिंग समस्या के पूरक, HTMc भी अनिर्दिष्ट है।

HTM ={M,x M is a TM and M halts on input x }

HTMc ={M,x M is a TM and M loops on input x }

ETM ={M M is a TM and L(M) = }

मान लें कि ETM निर्णायक है। हम कम हो जाएगा HTMc के लिए ETM - दूसरे शब्दों में हम कैसे एक ट्यूरिंग मशीन के निर्माण के लिए दिखाई देगा MHTMc कि फैसला करता HTMc टीएम, का उपयोग करते हुए METM कि फैसला करता है ETM । यह हमें एक विरोधाभास देता है, क्योंकि हम जानते हैं कि HTMc अनिर्दिष्ट है, और इसलिए MHTMcमौजूद नहीं हो सकता। "कम करें" शब्द का अर्थ है किसी दिए गए समस्या को हल करके उसे दूसरी समस्या में परिवर्तित करना, जिसे हम पहले ही हल करना जानते हैं। तो, HTMc लिए ट्यूरिंग मशीन का निर्माण निम्नानुसार किया जा सकता है:

MHTMc = ”इनपुट परM,x

1. एक TM, M1 के लिए कोड का निर्माण करें जो निम्न कार्य करता है:

M1 = "इनपुटw

1. एक्स पर M अनुकरण करें ।x

2. यदि M हाल्ट स्वीकार करता है । "

2. चलाएँ METM पर M1

3. यदि METM स्वीकार करता है, तो अन्यथा स्वीकार करें। "

यह समझना महत्वपूर्ण है कि टीएम M1 वास्तव में कभी नकली नहीं है - इस तरह के सिमुलेशन अनंत लूप में जा सकते हैं। हम सभी M1 के लिए कोड का निर्माण कर रहे हैं ।

M1 का निर्माण इस तरह से किया गया है किइसे दिए गएकिसी भी इनपुटw पर, यहM को इनपुटx साथअनुकरण करेगा। Mx पर रुक सकता है या लूपकर सकता है और इसलिए दो मामले हो सकते हैं:

1. M1 सभी आदानों स्वीकार करता है w अगर M पर हाल्ट xMETM , M1 को L(M1) रूप में अस्वीकार करेगा ।

2. यदि Mx पर लूप करता है , तो M1 उसे दिए गए प्रत्येक इनपुट w लिए भी लूप करेगा । वैसे भी, जैसा कि METM एक हैनिर्णायक इसे अस्वीकार और इनपुट पर पड़ाव होगा M1 के रूप में L(M1)=

Correctness : के बाद सेMETM हमेशा हाल्ट (हमारे धारणा के द्वारा),MHTMc भी हमेशा रुक जाता है। MHTMc स्वीकार करता हैMETM स्वीकार करता है, यह है कि अगरL(M1)= जो होता है अगरM पर लूपx
MHTMc अस्वीकार करता है यदिMETM अस्वीकार करता है किL(M1) जो यदिMx पर रुकता है तो होता है। इस प्रकार,MHTMc का फैसला करता हैHTMc जो के रूप में एक विरोधाभास हैHTMc अनिर्णनीय है।


Nb:

चलो आर से कमी हो HTMc के लिए ETM

कमी देता है:

i) M,xHTMcR(M,x)ETM

R ( M M , x ac ) द्वारा मान्यता प्राप्त भाषा if if इनपुट x पर M लूप कुछ भी स्वीकार नहीं करता हैR(M,x)

ii) M,xHTMcR(M,x)ETM

M इनपुट x पर रुकता है यदि R(M,x) द्वारा मान्यता प्राप्त भाषा कुछ स्वीकार करती है


0

विरोधाभासी द्वारा सबूत , (जो हम जानते हैं अनिर्णनीय है)।ATM={M,wM is a Turing Machine which accepts w}

के अस्तित्व की कल्पना , एक टीएम कि फैसला करता एल RTML

इसके बाद टीएम एस टी एम के निर्माण में का उपयोग कर सकते हैं , जो कि टी एम के लिए एक डीसाइडर हैRTMSTMATM

"इनपुट परएम , डब्ल्यू , जहां एम एक टीएम की और एन्कोडिंग है डब्ल्यू एक स्ट्रिंग है:STM=definitionM,wMw

  1. संशोधित करें , इनपुट डब्ल्यू को ध्यान में रखते हुए , जैसे कि नया एम (इसे एम 1 कहें ) सभी इनपुट को खारिज कर देता है जो डब्ल्यू के बराबर नहीं है , जहां डब्ल्यू इसके विवरण में बनाया गया है। यदि इनपुट w के बराबर है , तो M 1 w पर M चलाता है और जो भी M आउटपुट देता है।MwMM1wwwM1MwM

  2. भागो इनपुट के साथ एम 1 , w RTMM1,w

  3. आउटपुट के विपरीत आउटपुट। "RTM

धारणा के लिए एक ट्यूरिंग मशीन deicer मौजूद है , हमारे लिए एक निर्णायक के निर्माण के लिए अनुमति देता है एक टी एम , जो एक विरोधाभास है।LATM


क्या का TM (अतिरिक्त w के बिना ) इनपुट नहीं है ? तुम कैसे चला सकता हूँ आर टी एम पर एम 1 , w ? RTMwRTMM1,w
xskxzr

-2

ई = {| M एक TM और L (M) = a} है। क्या ई ट्यूरिंग-पहचानने योग्य है?

ई एक भाषा है, भाषा को स्वीकार करने के लिए हम एक ट्यूरिंग मशीन का निर्माण करते हैं। मान लीजिए हम भाषा E के लिए एक ट्यूरिंग EM बनाते हैं।

EM को अन्य ट्यूरिंग मशीनों के एन्कोडिंग के रूप में प्रदान किया जाएगा, यदि वह इनपुट मशीन M एक खाली भाषा को स्वीकार करता है तो यह भाषा E का सदस्य होगा, अन्यथा यह भाषा का सदस्य नहीं होगा।

मान लीजिए कि हमारे पास ट्यूरिंग मशीन एम है, तो हमें यह जांचने की आवश्यकता है कि क्या यह एक खाली भाषा को स्वीकार करता है। ट्यूरिंग मशीन EM में M और स्ट्रिंग्स eps, a, b, aa, bb, ..... EM यह जांचेगा कि क्या M एक इनपुट पर कम से कम अंतिम स्थिति तक पहुंच सकता है, और यदि यह कम से कम एक इनपुट स्वीकार करता है ई को छोड़ दिया जाएगा और भाषा में शामिल नहीं किया जाएगा। अब, एक संभावना देखें कि टीएम एम एक लूप में आता है, इसलिए एम चालू रहेगा और हम तय नहीं कर पाए कि वह कुछ भी स्वीकार कर सकता है या नहीं। इसलिए, यह दी गई भाषा E RE नहीं है।

पुनश्च: मुझे लगता है कि इस दिए गए भाषा ई के पूरक आरई होंगे।


दुर्भाग्य से, यह सहज तर्क एक प्रमाण का गठन नहीं करता है। ई को तय करने का एक अलग तरीका हो सकता है, और यह आपके तर्क से इनकार नहीं किया जाता है।
युवल फिल्मस

हाँ सही है, लेकिन जिस तरह से मैंने समझाया कि कोई आम आदमी की भाषा में समझ सकता है।
मनु ठाकुर

यह साइट छंटनी के लिए नहीं है। यह अकादमिक स्तर के सैद्धांतिक कंप्यूटर विज्ञान के लिए है।
युवल फिल्मस

2
आपके द्वारा किया गया सब कुछ एक सहज ज्ञान युक्त तर्क है कि क्यों इस समस्या को हल करने के लिए एक विशेष कम्प्यूटेशनल तकनीक विफल होती है। लेकिन सवाल एक सबूत के लिए पूछ रहा है कि कोई भी संभव तकनीक काम नहीं करती है।
डेविड रिचेर्बी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.