मैं गणितीय सिद्धांतों की तलाश कर रहा हूं जो सामान्य रूप से औपचारिक भाषा (तार के सेट) का वर्णन करने के साथ सौदा करते हैं और न केवल व्याकरण पदानुक्रम।
मैं गणितीय सिद्धांतों की तलाश कर रहा हूं जो सामान्य रूप से औपचारिक भाषा (तार के सेट) का वर्णन करने के साथ सौदा करते हैं और न केवल व्याकरण पदानुक्रम।
जवाबों:
काफी संभावनाएं हैं। दूसरों ने पहले से ही ऑटोमेटा का उल्लेख किया है जो एक समृद्ध चयन प्रदान करते हैं। निम्नलिखित रूपरेखाओं पर भी विचार करें:
कुछ भाषाओं को सीधे (सह) आगमनात्मक परिभाषाओं द्वारा परिभाषित किया जा सकता है । उदाहरण के लिए, की छोटी से छोटी सीमा
वही भाषा है, जिसका वर्णन किसी व्यक्ति द्वारा किया जाता है , सबसे बड़ा निर्धारण बिंदु । ध्यान दें कि ऐसी परिभाषा को पथरी या अनुमान नियम के रूप में भी लिखा जा सकता है :
(खएक|एक)*(खएक|एक)ω
शब्द शब्द संरचनाओं को परिभाषित करते हैं जिनका उपयोग तार्किक सूत्र के मॉडल के रूप में किया जा सकता है । अनिवार्य रूप से, प्रत्येक शब्द अपने पदों के डोमेन को परिभाषित करता है , ताकि सभी के लिए , एक विधेय अर्थात से तक ही सीमित और एक विधेय कि यदि और केवल यदि सच है दूसरा पैरामीटर मुट्ठी का प्रत्यक्ष उत्तराधिकारी है।
उदाहरण के लिए, यदि तोपी एक : डी → { 0 , 1 } पी एक ( मैं ) ⟺ डब्ल्यू मैं = एक एक ∈ Σ < < एन डी डब्ल्यू सफलता : डी डब्ल्यू × डी डब्ल्यू → { 0 , 1 } डब्ल्यू = एक एक ख एक ख एक एक ख
वास्तव में, यह प्रथम-क्रम सूत्र निर्धारित करता है --- सभी शब्द संरचनाओं के सेट के माध्यम से जो इसे पूरा करते हैं --- समान भाषा । इसी -लंगेज का वर्णन LTL सूत्र
क्लासिक भाषा वर्गों और कुछ लॉगिक्स के बीच कई समानताएं ज्ञात हैं। उदाहरण के लिए, एफओ स्टार-मुक्त भाषाओं, कमजोर एमएसओ से मेल खाती है ω ( ख एक | एक ) ω
नियमित भाषाओं और MSO to omega-अनियमित भाषाओं। संदर्भ के लिए यहां देखें ।
क्लासिक कक्षाओं में कुछ ऑर्थोगोनल पैटर्न भाषाएं हैं । एक टर्मिनल वर्णमाला और एक चर वर्णमाला मान लें । एक स्ट्रिंग को एक पैटर्न कहा जाता है । Let प्रतिस्थापन का सेट। हम एक पैटर्न की भाषा को रूप में परिभाषित करते हैं
ध्यान दें कि पैटर्न पर काम करने के लिए को बढ़ाया जाता है; टर्मिनल प्रतीकों को अपरिवर्तित छोड़ दिया जाता है।
एक उदाहरण के रूप में, विचार करेंएक्स = { x 1 , एक्स 2 , ... } पी ∈ ( Σ ∪ एक्स ) + एच = { σ | σ : एक्स → Σ * } पी
।
ध्यान दें कि हम चर को हटाने के लिए प्रतिस्थापन की अनुमति देते हैं; पैटर्न भाषाओं के वर्ग के कुछ गुण बनाम गैर-हटाने वाले प्रतिस्थापन को हटाने के लिए बेहद अलग हैं। पैटर्न भाषाओं में गोल्ड-शैली सीखने में विशेष रुचि है ।
आपको ऑटोमेटा सिद्धांत पर एक नजर डालनी चाहिए । इसके बारे में बहुत सारी सामग्री है।
उदाहरण के लिए, आप एक नियमित भाषा को लेबल किनारों के साथ एक नॉनटर्मिनिस्टिक परिमित ऑटोमोटन के साथ परिभाषित कर सकते हैं : एक स्ट्रिंग भाषा का है यदि ऑटोमेटन अपने पात्रों द्वारा लेबल किए गए बदलावों का पालन कर सकता है और अंतिम स्थिति में रुक सकता है।
इसके अलावा, एक संदर्भ-मुक्त व्याकरण को एक पुशडाउन ऑटोमैटन द्वारा पहचाना जा सकता है ।
ट्यूरिंग मशीनों के माध्यम से भाषाओं को परिभाषित करने का एक और तरीका है ।
से चोम्स्की अनुक्रम औपचारिक भाषाओं के चार प्रकार के होते हैं (उनमें से प्रत्येक के बाद यह लोगों के एक सबसेट है):
एक नियमित रूप से औपचारिक भाषा का वर्णन किया जा सकता है:
1., 2. और 3. समान हैं और उनमें से एक से आप दूसरों का निर्माण कर सकते हैं।
एक संदर्भ-मुक्त औपचारिक भाषा का वर्णन इसके द्वारा किया जा सकता है:
साथ ही 1. और 2. बराबर हैं।
एक संदर्भ-संवेदनशील औपचारिक भाषा को इसके द्वारा वर्णित किया जा सकता है:
एक पुनरावृत्ति करने योग्य औपचारिक भाषा का वर्णन इसके द्वारा किया जा सकता है:
अन्य उत्तरों के अलावा, कोई भी "जनरेटर" और बंद करने के गुणों के संदर्भ में भाषाओं का वर्णन और वर्गीकरण कर सकता है। उदाहरण के लिए, यह कुछ भाषा द्वारा उत्पन्न सबसे छोटे AFL के बारे में बात करने के लिए समझ में आता है । इस प्रकार के विवरण के बारे में सीखना शुरू करने के लिए एक अच्छी जगह यह पुस्तक है, हालांकि इसकी हार्ड कॉपी ढूंढना काफी कठिन हो सकता है।