मैं कैसे साबित कर सकता हूं कि यह भाषा संदर्भ-मुक्त नहीं है?


11

मेरी निम्न भाषा है

{0i1j2k0ijk}

मैं यह निर्धारित करने की कोशिश कर रहा हूं कि यह किस चॉम्स्की भाषा वर्ग में फिट बैठता है। मैं देख सकता हूं कि इसे एक संदर्भ-संवेदनशील व्याकरण का उपयोग करके कैसे बनाया जा सकता है, इसलिए मुझे पता है कि यह कम से कम संदर्भ-संवेदनशील है। ऐसा लगता है कि यह एक संदर्भ-मुक्त व्याकरण के साथ बनाना संभव नहीं होगा, लेकिन मुझे यह साबित करने में समस्या हो रही है।

यह कांटा-पंपिंग लेम्मा को पारित करने के लिए लगता है क्योंकि अगर को किसी भी शब्द के तीसरे भाग में रखा गया है (सभी s के साथ अनुभाग )। यह और जितनी बार चाहें उतनी बार पंप कर सकता है और यह भाषा में बना रहेगा। अगर मैं गलत हूं तो आप मुझे बता सकते हैं, अगर मैं सही हूं, तो भी मुझे लगता है कि यह भाषा संदर्भ-मुक्त नहीं है, इसलिए मैं यह कैसे साबित कर सकता हूं?uvwxy2vx


मुझे यकीन नहीं है कि इसे औपचारिक प्रमाण कैसे बनाया जा सकता है, लेकिन यह सुनिश्चित करना कि मैं <= j <= k को संदर्भ (पिछले चर के मूल्य) की आवश्यकता है।
केविन


@ राफेल, मैंने इस पोस्ट को इस एक से पहले पढ़ा था और यह नहीं जानता था कि इसे अमूर्तता के कारण मेरे उदाहरण पर कैसे लागू किया जाए। प्रत्येक वर्ण के संबंध के साथ> = पिछले वर्णों की संख्या, मैं देख नहीं पाया कि ओग्डेन के लेम्मा का उपयोग करने के लिए शब्द में uxyzv को कैसे विभाजित किया जाए। मेरे उदाहरण के लिए इसे स्पष्ट करने के लिए अन्य पोस्ट पर BlueMagister और jmad का विस्तार हुआ।
२१:१२

@ राफेल मैं असहमत हूं कि यह सामान्य मामले का एक तुच्छ आवेदन है। किस विधि का उपयोग करना है और इसे लागू करने के लिए कौन सा उदाहरण इतना आसान नहीं है।
गिल्स एसओ- बुराई को रोकें '

जवाबों:


7

आप ओग्डेन के लेम्मा का उपयोग करके पंपिंग को कुछ स्थानों पर होने के लिए मजबूर कर सकते हैं, उदाहरण के लिए सभी 0 को चिह्नित करके।

मान लीजिए कि यह संदर्भ मुक्त है, तो ओग्डेन की लेम्मा आपको एक , आप इसे w = 0 p 1 p 2 p जो कि भाषा में है, और आप सभी 0 का "निशान" देते हैं। फिर कोई भी कारक w = u x y z v ऐसा होना चाहिए कि x या z में 0 है । आप यह भी मान सकते हैं एक्स = एक कश्मीर और जेड = मीटर के बाद से एक्स एक्स और जेड जेडp>0w=0p1p2pw=uxyzv0xzx=akz=bmxxzz अपनी भाषा का आधार होना चाहिए।

  1. अगर तो w = u x 2 y z 2 v में 0 की तुलना में अधिक 0 हैz=0...0w=ux2yz2v

  2. यदि और z = 1..1 है तो w = u x 2 y z 2 v में 1 के 2 से अधिक है।x=0..0z=1..1w=ux2yz2v

  3. यदि और z = 2..2 है तो w = u x 2 y z 2 v में 0 की 1 से अधिक है।x=0..0z=2..2w=ux2yz2v

तो आपकी भाषा का शब्द नहीं है। इसलिए, यह संदर्भ-मुक्त नहीं है।ux2yz2v

अन्य तकनीकों के लिए, चर्चा देखें: यह कैसे साबित करें कि कोई भाषा संदर्भ-मुक्त नहीं है?


क्या यह उसी भाषा के लिए है जो मेरे पास है? यह समान भाषा के लिए प्रतीत होता है जहाँ 0 के 1 और 2 के सभी समान लंबाई के होते हैं। इस भाषा में 2 की संख्या> = 1 की संख्या = = 0 की संख्या है
justausr

1
हाँ यह है, लेकिन सभी पम्पिंग लेमेस में से किसी एक का उपयोग करते हुए, आपको शब्द चुनने के लिए मिलता है (और मैंने चुना ): ओग्डेन का लेम्मा उन सभी के लिए काम करने वाला है। 0p1p2p
शाम ५१५ पर जम्द

गोचचा, मैंने ओग्डेन के लेम्मा के बारे में कभी नहीं सुना है इसलिए मुझे इस पर गौर करना होगा। क्या मैं सही कह रहा था कि यह पम्पिंग लेम्मा को विफल करता है?
18aus 18:12 पर justausr

@justausr के पास न तो मेरे पास है, न ही हाल तक (और चर्चा के लिए धन्यवाद)। और हाँ आप सही थे: पम्पिंग लेम्मा लगभग एक ही काम करता है लेकिन यह नहीं चुनना कि पंप को कहाँ बेकार करना है।
जम्द

5

पंपिंग लेम्मा को शब्द के तीसरे भाग के बारे में आपकी समस्या को हल करना चाहिए; ध्यान दें कि जब आप विभाजित , के किसी भी संयोजन यू वी एन डब्ल्यू एक्स एन y भाषा में भी है, सहित जब एन = 0 । उसकी कोशिश करो।z=uvwxyuvnwxnyn=0

संपादित करें: जैसा कि बता दें , पम्पिंग लेम्मा एक खेल की तरह है:

  1. पम्पिंग लेम्मा आपको एक p
  2. आप एक शब्द दे कम से कम लंबाई की भाषा के पीsp
  3. पम्पिंग लेम्मा इस तरह उसे पुनः लिखता है: कुछ शर्तों के साथ ( | वी एक्स y |पी और | v y |1 )s=uvxyz|vxy|p|vy|1
  4. आप एक पूर्णांक दे n0
  5. अगर में नहीं है एल , आप जीतते हैं, एल नहीं संदर्भ नि: शुल्क है।uvnxynzLL

इसलिए आपको जो करना है, वह एक शब्द है, 3 मामलों में तोड़ दें, और यह दिखाएं कि प्रत्येक मामले के लिए आप एक ऐसा पा सकते हैं , जिसके परिणामस्वरूप शब्द भाषा में नहीं है।n

जब आप विभाजित करते हैं , तो उन सभी मामलों के बारे में सोचें जो v x y में आ सकते हैं। आप ध्यान दें कि यदि v x y 2 के क्रम में नहीं आता है, तो 0 को और 1 को पंप करना आसान है जब तक कि वे 2 का परिणाम नहीं निकालते हैं, और तब आपके पास एक ऐसा शब्द होता है जो भाषा में नहीं होता है। मेरा सुझाव है कि, यदि v x y 2 क्षेत्र में आता है, तो आप n = 0 को सेट करके v और y गायब कर सकते हैं , इसलिए u v n x y n z = us=uvxyzvxyvxyvxyvyn=0 । फिर 2 को समाप्त करके आप एक ऐसे शब्द पर पहुंच सकते हैं जो भाषा में नहीं आता है।uvnxynz=uxz


क्या आप कह रहे हैं 2 के साथ अनुभाग में सभी uvwxy को रखें?
justausr

अगर इसे सही शब्द दिया जाए। मैं अपने उत्तर में विस्तार से बताऊंगा।
ब्लू मैजिस्टर

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