मैं हाल ही में एक पेपर में आया हूं जो शीर्षक में वर्णित पार्सिंग तकनीक का वर्णन करता है। दुर्भाग्य से, उक्त कागज में प्रयुक्त शब्दावली कुछ हद तक मेरी समझ से परे है, इसलिए मैं निर्माण एल्गोरिथम को अधिक सहजता से समझने का प्रयास कर रहा हूं। मेरा मानना है कि मैं सफल हुआ ( यह प्रस्तुति आह-हा क्षण का स्रोत थी), लेकिन तकनीक से परिचित किसी व्यक्ति की शुद्धता का सत्यापन या उसमें मौजूद शब्दावली की बहुत सराहना की जाएगी।
मैं अपने समाधान पर अपना वर्णन करने जा रहा हूं (यदि यह सही है, मेरा मानना है कि यह तकनीक को समझने का प्रयास करने वाले अन्य लोगों की मदद हो सकती है) और बाद में अतिरिक्त प्रश्न पूछें। : वहाँ कोई गलतफहमी है सुनिश्चित करने के लिए, मैं निम्नलिखित मानक संकेतन का उपयोग करने के लिए जा रहा हूँ , , , और, कागज, के रूप में नियम संख्या को निरूपित करने के । हालाँकि, मैं शायद मूल पेपर की तुलना में अवधारणाओं के लिए अलग-अलग नामों का उपयोग करूँगा।
साथ ही, वर्णन भर, तुल्यता संबंध प्रयोग किया जाता है।
निर्माण
पार्स आटोमैटिक मशीन के अंदर आइटम के दो प्रकार के होते हैं: सरल एलआर (0) फार्म के आइटम जो मैं फोन पारी आइटम और फार्म का एक मैं → अल्फा ∙ बीटा , मीटर , एन जो मैं फोन संकल्प आइटम ; ये पार्सर को n प्रतीकों को इनपुट स्ट्रीम को पीछे धकेलने के लिए कहते हैं और फिर upon के पहले प्रतीक पर नियम संख्या m से घटाते हैं ।
व्याकरण नियम के साथ संवर्धित है और पारी आइटम के साथ निर्माण शुरू होता है एस ' 0 → ∙ एस $ में प्रारंभिक अवस्था।
अब, ऑटोमेटन का निर्माण करने के लिए, राज्य में प्रत्येक आइटम के लिए इन विकल्पों के बीच निर्णय लें :
आइटम एक पारी आइटम है एक संक्रमण, वहाँ हो जाएगा क्ष एक्स → क्ष ' आटोमैटिक मशीन में, जहां एक्स के पहले प्रतीक है बीटा ।
यदि आइटम एक समाप्त पारी मद है , एक संकल्प आइटम जोड़ने के बी जे → अल्फा एक ∙ बीटा , मैं , 0 प्रत्येक नियम के लिए बी जे → अल्फा एक बीटा ।
आइटम एक संकल्प आइटम है , चलो एक्स के पहले प्रतीक हो बीटा । यदि एक्स ∈ एन , एक पारी आइटम जोड़ने एक्स जे → ∙ ω के लिए प्रत्येक नियम एक्स जे → ω । अगर तुलना में अन्य मदों एक मैं → अल्फा ∙ बीटा , मीटर , n है एक्स एक संक्रमण उनके डॉट अग्रदर्शी के रूप में जोड़ क्ष एक्स → क्यू 'ऑटोमेटन को। हर संकल्प आइटम में क्ष एक संकल्प आइटम का परिणाम देगा सी मैं → अल्फा एक्स ∙ बीटा , मीटर , n + 1 में क्ष ' ।
आइटम एक संकल्प आइटम है यह किसी भी अग्रदर्शी जानकारी योगदान देगा नहीं और त्याग किया जा सकता है, लेकिन पहले एक संकल्प आइटम जोड़ने के बी जे → अल्फा एक ∙ बीटा , मीटर , एन प्रत्येक नियम के लिए बी j → α ए β ।
यह, ज़ाहिर है, सिर्फ एक स्केच है; वास्तव में, राज्य के एक बंद को पहले गणना की जानी चाहिए और उसके बाद ही हम बदलाव / बदलाव और प्रस्तावों से निपट सकते हैं।
ऑटोमेटन को एक शिफ्ट-रिज़ॉल्यूशन पार्सिंग टेबल में बदलना बाद में तुच्छ है; बस, एक मामूली भिन्नता के रूप में, कागज के लेखक एक संकल्प को स्वीकार करते हैं , जो कि क्रिया को स्वीकार करते हैं। परिणामी ऑटोमेटन को देखते हुए, मुझे यह स्वीकार करने की क्रिया के रूप में $ की एक पारी का इलाज करने के लिए हाथ मिला ।
प्रशन
पहला, स्पष्ट रूप से, ऊपर वर्णित प्रक्रिया सही है या नहीं।
दूसरा समतुल्यता संबंधों के बारे में है। मैं केवल अनुमान लगा सकते हैं कि तुल्यता संबंध क्या निर्णय लेने से जो संकल्प आइटम जब एक समाप्त पारी आइटम देखा गया है में लाया जाता है के लिए जिम्मेदार है। κ 0 का परिणाम एलएसएलआर पार्सर्स के एफ ओ एल एल ओ डब्ल्यू एल एम सेट के समान दिखने वाला है। पेपर पृष्ठ 11 पर "महीन तुल्यता संबंध" का वर्णन करता है; क्या सहज संबंध में इस संबंध की व्याख्या करने का एक तरीका है? क्या अन्य संबंध ज्ञात हैं?
और अंतिम एक संघर्ष समाधान के बारे में है। पेपर अच्छी तरह से वर्णन करता है कि शिफ्ट-रिज़ॉल्यूशन ऑटोमेटन में अपर्याप्तता क्या है; क्या पारंपरिक एलआर पार्सर में संघर्षों को सुलझाने के तरीकों के समान, इन अपर्याप्तताओं को हल करने का एक तरीका है? की तरह कुछ कर सके याक पूर्वता और संबद्धता के माध्यम से शैली संघर्ष समाधान एक ShRe पार्सर जेनरेटर में लागू किया?
धन्यवाद अगर आपने यह सब पढ़ा है और किसी भी उत्तर की बहुत सराहना की जाएगी :)