संक्षिप्त डिफ़ॉल्ट उत्तर: एक LBA के साथ आते हैं जो भाषा को स्वीकार करता है और उस संदर्भ-संवेदनशील व्याकरण को साबित करने के लिए उपयोग किए गए सिमुलेशन का उपयोग करता है और LBA भाषाओं के समान सेट को परिभाषित करता है। लेकिन यह निश्चित रूप से नहीं है कि आप क्या हैं।
इस विशिष्ट मामले में, एक सही-रेखीय व्याकरण का उपयोग करने के बारे में सोचने की कोशिश करें Σ∗दो बार, बाएं के लिए एक और दाएं आधे के लिए एक। आपको यह सुनिश्चित करना होगा कि दोनों व्याकरण "सिंक में" प्राप्त हों।
यह एक नियंत्रण टोकन के चारों ओर स्वैप करके किया जा सकता है। यह कहना है, बाएं व्याकरण एक नियम चुनता है, फिटिंग नियंत्रण टोकन उत्पन्न करता है और इसे सही व्याकरण के पास देता है। सही व्याकरण नियंत्रण टोकन को देखता है और फिटिंग नियम को निष्पादित करता है। ध्यान दें कि आप इस तरह से दो-तरफ़ा संचार भी लागू कर सकते हैं, लेकिन यह यहाँ आवश्यक नहीं है।
संदर्भ-संवेदनशील व्याकरणों के साथ एक समस्या है: वे कभी भी गैर-टर्मिनलों को नहीं हटा सकते हैं (छोड़कर) S→εयदि खाली शब्द भाषा में है)। इसलिए, हमें केवल उतने ही गैर-टर्मिनलों का निर्माण करना होगा जितने की हमें आवश्यकता है; कोई भी निरर्थक नहीं हो सकता।
इसे प्राप्त करने का एक तरीका एलबीए के बारे में कुछ प्रमाणों के लिए उसी चाल का उपयोग करना है: सभी गैर-टर्मिनलों को उत्पन्न करें जिनकी आपको पहले आवश्यकता है , "टेप" तैयार करें। बाद में, उस टेप पर "चारों ओर घूमें"। केवल "अंत में", सभी गैर-टर्मिनलों को टर्मिनलों से बदलें।
तो चलो G=(N,Σ,δ,S) साथ में Σ={a,b} (निर्माण आसानी से बड़े अक्षर तक फैला हुआ है) और N, δ निम्नलिखित नियमों द्वारा दिया गया।
SS′→X^lS′Xr∣aaaa∣abab∣baba∣bbbb∣aa∣bb∣ε→XlS′Xr∣XlX^r
"टेप" बनाने के लिए नियम हैं। ध्यान दें कि टोपी "सिर की स्थिति" और सूचकांकों को दर्शाता हैl,rनिरूपित करें कि गैर-टर्मिनल शब्द का आधा हिस्सा किससे संबंधित है। नीचे दिए गए कुछ नियमों को सुरक्षित करने के लिए संक्षिप्त शब्द तैयार किए गए हैं। अब हमें बाएं हिस्से में एक प्रतीक को प्राप्त करने के लिए नियमों की आवश्यकता है:
X^lXlX^lXα→XγX^γl→XγXγα
सबके लिए (α,γ)∈Σ2। ध्यान दें कि हम उत्पन्न चिह्न को दाईं ओर ले जाने के लिए ऊपरी सूचकांक का उपयोग कैसे करते हैं।Xa तथा Xb"अंतिम" गैर-टर्मिनल हैं जिनका उपयोग केवल नियंत्रण टोकन को स्थानांतरित करने और बाद में टर्मिनलों को प्राप्त करने के लिए किया जाएगा। इसके अलावा ध्यान दें कि दूसरा नियम (केवल) दाहिने आधे के अंतिम प्रतीक के लिए उपयोग किया जाता है।
कैरी को दाईं ओर ले जाने के लिए, हमें शेष दोनों को पीछे ले जाना होगाXl और पहले से ही उत्पन्न Xα:
X^γlXlX^γlXαXγlXlXγlXαXγαXβ→X^lXγl→X^lXγα→XlXγl→XlXγα→XαXγβ
सबके लिए (α,β,γ)∈Σ3। अब, एक बार जब कैरी सही कंट्रोल टोकन पर पहुंच जाता है, तो हमें बाईं ओर उपयोग किए गए नियम की नक़ल करनी होगी:
XγlX^rXγαX^rX^γrXrX^γr→XlX^γr→XαX^γr→XγX^r→Xγ
सबके लिए (α,γ)∈Σ2। ध्यान दें कि पहले नियम का उपयोग दाहिने आधे के पहले प्रतीक के लिए किया जाता है, और अंतिम नियम का उपयोग केवल बहुत अंतिम प्रतीक के लिए किया जा सकता है, अन्यथा व्युत्पत्ति कभी समाप्त नहीं होती है। अब हमें केवल समाप्ति नियमों की आवश्यकता है
Xα→α
सबके लिए α∈Σऔर हम कर रहे हैं ये नियम, भी, सब कुछ (बाईं ओर) किए जाने के बाद ही लागू किए जा सकते हैं, अन्यथा व्युत्पत्ति समाप्त नहीं होगी।
ध्यान दें कि यह व्याकरण अस्पष्ट है। न केवल कर सकते हैंXα→α(सुरक्षित रूप से) किसी भी समय बाईं ओर "सिर" के कहीं भी लागू किया जा सकता है, लेकिन एक ही समय में कई कैर्री भी चल सकते हैं। चूँकि वे कभी भी एक दूसरे से आगे नहीं निकल सकते हैं, सही क्रम बनाए रखा जाता है।
एक टिप्पणी अभी भी किया जाना चाहिए: उपरोक्त व्याकरण है नहीं संदर्भ के प्रति संवेदनशील कई नियमों में परिवर्तन के रूप में दोनों बाएं हाथ की ओर पर प्रतीकों में से। यह संदर्भ-संवेदनशील व्याकरण के लिए अनुमति नहीं है। सौभाग्य से, हम किसी भी नियम का अनुकरण कर सकते हैंR फार्म का
AB→CD
द्वारा
ABAYRXRYRXRD→AYR→XRYR→XRD→CD
इसलिए हम अच्छे हैं और छोटे व्याकरण के साथ काम कर सकते हैं। यह दिखाते हुए कि इस तरह के कई सिमुलेशन के बीच हस्तक्षेप नहीं होता है, व्यायाम के रूप में छोड़ दिया जाता है।
क्या आप यह देखते हैं कि इसे कैसे बढ़ाया जाए Lk={wk∣w∈Σ∗}? क्या यह भी काम करता हैL=⋃i≥1Lk? क्या आप किसी भी समान निर्माण का उपयोग कर सकते हैंLk नियमित के लिए L?