उत्पादन (कंप्यूटर विज्ञान)

कंप्यूटर विज्ञान में एक उत्पादन या उत्पादन नियम एक 'पुनर्लेखन नियम' है। जो एक प्रतीक प्रतिस्थापन को निर्दिष्ट करता है। जिसे नए प्रतीक अनुक्रमों को उत्पन्न करने के लिए पुनरावर्ती रूप से निष्पादित किया जा सकता है। प्रस्तुतियों का सीमित समुच्चय $$P$$ औपचारिक व्याकरण (विशेष रूप से एक उत्पादक व्याकरण) के विनिर्देशन में मुख्य घटक है। अन्य घटक परिमित समुच्चय हैं। $$N$$ गैर-टर्मिनल प्रतीकों का एक परिमित समुच्चय (वर्णमाला के रूप में जाना जाता है) $$\Sigma$$ टर्मिनल प्रतीकों की संख्या से समुच्चय करता है। जो विसंधित है। $$N$$ एक विशिष्ट प्रतीक $$S \in N$$ वह प्रारंभ प्रतीक है।

अप्रतिबंधित व्याकरण में $$u \to v$$ उत्पादन रूप का होता है। जहाँ $$u$$ और $$v$$ टर्मिनलों और गैर-टर्मिनलों के अनगिनत तार हैं और $$u$$ खाली स्ट्रिंग नहीं हो सकता। यदि $$v$$ खाली स्ट्रिंग है। तो इसे $$\epsilon$$ या $$\lambda$$ प्रतीक द्वारा दर्शाया गया है। तो प्रोडक्शंस कार्टेशियन उत्पाद के सदस्य हैं।


 * $$V^*NV^* \times V^* = (V^*\setminus\Sigma^*) \times V^*$$

जहाँ $$V := N \cup \Sigma$$ शब्दावली है। क्लेन स्टार ऑपरेटर है और $$V^*NV^*$$ जुड़ाव निर्देशित करता है। $$\cup$$ संघ (समुच्चय सिद्धांत) को दर्शाता है और $$\setminus$$ पूरक (समुच्चय सिद्धांत) को दर्शाता है। यदि हम स्टार्ट सिंबल $$v$$ (दाईं ओर का शब्द) को अंदर आने की अनुमति नहीं देते हैं। हमें $$V^*$$ द्वारा $$(V \setminus \{S\})^*$$ कार्तीय उत्पाद प्रतीक के दाईं ओर बदलना होगा। चॉम्स्की पदानुक्रम में अन्य प्रकार के औपचारिक व्याकरण उत्पादन का गठन करने पर अतिरिक्त प्रतिबंध लगाते हैं। विशेष रूप से एक संदर्भ-मुक्त व्याकरण में उत्पादन के बाईं ओर एकल गैर-टर्मिनल प्रतीक होना चाहिए। तो प्रोडक्शंस $$N \to (N \cup \Sigma)^*$$ फॉर्म के हैं।

व्याकरण पीढ़ी
व्याकरण भाषा में स्ट्रिंग उत्पन्न करने के लिए स्ट्रिंग के साथ प्रारम्भ होता है। जिसमें केवल एक ही प्रारंभ प्रतीक होता है और इस स्ट्रिंग को पुनः लिखने के लिए क्रमिक रूप से नियम (किसी भी समय, किसी भी क्रम में) को संचालित करता है। यह तब रुकता है। जब हमें एक स्ट्रिंग मिलती है। जिसमें केवल टर्मिनल होते हैं। भाषा में वे सभी तार होते हैं। जिन्हें इस प्रकार से उत्पन्न किया जा सकता है। इस पुनर्लेखन प्रक्रिया के समय लिए गए नियमित विकल्पों का कोई विशेष क्रम भाषा में एक विशेष स्ट्रिंग उत्पन्न करता है। यदि इस एकल तार को उत्पन्न करने के कई अलग-अलग प्रकार हैं। तो व्याकरण को अस्पष्ट व्याकरण कहा जाता है।

उदाहरण के लिए माना कि वर्णमाला में सम्मिलित हैं। $$a$$ और $$b$$ प्रारंभिक प्रतीक के साथ $$S$$ और हमारे पास निम्नलिखित नियम हैं:


 * 1. $$S \rightarrow aSb$$
 * 2. $$S \rightarrow ba$$

पुनः हम $$S$$ एक साथ प्रारम्भ करते हैं और उस पर संचालित करने के लिए कोई नियम चुन सकते हैं। यदि हम नियम 1 चुनते हैं। तो हम प्रतिस्थापित करते हैं। $$S$$ के साथ $$aSb$$ और स्ट्रिंग $$aSb$$ प्राप्त करें। यदि हम नियम 1 को फिर से चुनते हैं। तो हम $$S$$ साथ $$aSb$$ प्रतिस्थापित करते हैं और $$aaSbb$$ स्ट्रिंग प्राप्त करें। यह प्रक्रिया तब तक दोहराई जाती है, जब तक कि हमारे पास केवल वर्णमाला के प्रतीक न हों (अर्थात $$a$$ और $$b$$)। यदि हम अब नियम 2 चुनते हैं। तो हम $$S$$ साथ $$ba$$ प्रतिस्थापित करते हैं और $$aababb$$ स्ट्रिंग प्राप्त करें। हम प्रतीकों का उपयोग करके विकल्पों की इस श्रृंखला को और संक्षेप में लिख सकते हैं: $$S \Rightarrow aSb \Rightarrow aaSbb \Rightarrow aababb$$. व्याकरण की भाषा उन सभी स्ट्रिंग्स का समूह है। जो इस प्रक्रिया का उपयोग करके उत्पन्न की जा सकती हैं: $$\{ba, abab, aababb, aaababbb, \dotsc\}$$.

यह भी देखें

 * औपचारिक व्याकरण
 * परिमित ऑटोमेटा
 * जनरेटिव व्याकरण
 * एल प्रणाली
 * पुनर्लेखन नियम
 * बैकस-नौर रूप (संदर्भ-मुक्त व्याकरण की प्रस्तुतियों को लिखने के लिए एक संक्षिप्त रूप।)
 * वाक्यांश संरचना नियम
 * पोस्ट कैनोनिकल तन्त्र (एमिल पोस्ट की प्रोडक्शन तन्त्र- गणना का एक मॉडल)