विशेष मामलों के लिए डीएफए चौराहे एल्गोरिथ्म


9

मुझे विशेष मामलों के लिए DFA चौराहे के लिए कुशल एल्गोरिदम में दिलचस्पी है। अर्थात्, जब DFAs को काटना एक निश्चित संरचना का पालन करता है और / या सीमित वर्णमाला पर काम करता है। क्या कोई स्रोत है जहां मैं एल्गोरिदम ऐसे मामलों को पा सकता हूं?

प्रश्न को बहुत व्यापक नहीं बनाने के लिए, निम्नलिखित संरचना विशेष रुचि रखती है: द्विआधारी वर्णमाला (0 | 1) में संचालित करने के लिए सभी डीएफए, वे प्रतीकों का ध्यान नहीं रखते हैं। इसके अलावा, सभी राज्यों में अधिकांश K विशेष राज्यों को छोड़कर केवल एक ही संक्रमण होता है, जिसमें केवल दो संक्रमण होते हैं (और ये संक्रमण हमेशा 0 या 1 होते हैं, लेकिन कोई परवाह नहीं करते हैं)। K एक पूर्णांक है, व्यावहारिक उद्देश्यों के लिए 10 से कम है। इसके अलावा, उनके पास एक एकल राज्य है। इसके अतिरिक्त, यह ज्ञात है कि चौराहा हमेशा "पट्टी" के रूप में एक DFA है, अर्थात, निम्नलिखित छवि के रूप में कोई शाखा नहीं:

यहां छवि विवरण दर्ज करें

EDIT: शायद इनपुट DFAs पर बाधा का वर्णन बहुत स्पष्ट नहीं है। मैं इस पैराग्राफ में इसे बेहतर बनाने की कोशिश करूंगा। आपके पास इनपुट T DFAs के रूप में है। इनमें से प्रत्येक DFA केवल बाइनरी वर्णमाला पर संचालित होता है। उनमें से प्रत्येक के पास अधिकांश एन राज्यों में हैं। प्रत्येक DFA के लिए, इसका प्रत्येक राज्य निम्नलिखित में से एक है:

1) स्वीकार करने की स्थिति (यह केवल एक है और इससे किसी अन्य राज्य में कोई संक्रमण नहीं है)

2) एक ही लक्ष्य राज्य के लिए दो संक्रमण (0 और 1) वाला राज्य (अधिकांश राज्य इस तरह के हैं)

3) अलग-अलग लक्ष्य वाले राज्यों (दो और 1) के साथ एक राज्य ( इस तरह के अधिकांश K पर)

यह गारंटी है कि केवल एक ही स्वीकार करने वाला राज्य है और प्रत्येक इनपुट DFA में टाइप (3) के अधिकांश K राज्यों में हैं। यह भी गारंटी है कि सभी इनपुट डीएफए का प्रतिच्छेदन डीएफए एक "स्ट्रिप" (जैसा कि ऊपर वर्णित है), एन के आकार से कम है ।

EDIT2: कुछ अतिरिक्त अड़चनें, जैसा कि टिप्पणियों में DW द्वारा अनुरोध किया गया है:

  • इनपुट DFAs DAGs हैं।
  • टिप्पणी में डीडब्ल्यू परिभाषा के बाद इनपुट डीएफए "समतल" हैं। अर्थात्, आप प्रत्येक राज्य में अलग-अलग पूर्णांकों को इस तरह से असाइन कर सकते हैं कि प्रत्येक परिवर्तन पूर्णांक u से पूर्णांक v तक जाता है , जैसे कि u + 1 = v
  • प्रत्येक इनपुट DFA के लिए राज्यों को स्वीकार करने की संख्या, K से अधिक नहीं है ।

कोई विचार? धन्यवाद।


आप वास्तव में कैसे "परवाह नहीं" मॉडल करते हैं? यह एक तरह से आटोमेटा नोंडेटेर्मिस्टिक बनाने के लिए लगता है।
शूल

@ शाऊल को ऑटोमेटन को गैर-नियतात्मक क्यों बनाना चाहिए। ऐसा तभी हो सकता है जब एक ही राज्य से एक और संक्रमण हो, जिसे स्पष्ट रूप से बाहर रखा गया हो।
बबौ

1
क्या है a DFA in form of "strip", i.e., no branches? क्या यू के पास यह मानने का कोई विशिष्ट कारण है कि आपके मामले में मानक एल्गोरिथम से बेहतर कोई कर सकता है?
बबौ

1
नमस्ते। वास्तविक चौराहे की गणना करना बहुत अच्छा होगा, क्योंकि यह कई चीजों को सरल करेगा, लेकिन खालीपन का निर्णय करना उपयोगी होगा।
ale64bit

1
बस चौराहे के रेखांकन पर एक नए पेपर में भाग गया , क्या इस सिद्धांत में से कुछ प्रासंगिक हो सकता है? क्या आप सैद्धांतिक कंप्यूटर विज्ञान चैट में अपनी टिप्पणी में उल्लिखित अपने आवेदन पर विस्तार कर सकते हैं ? और अन्य लोगों को वहां चर्चा जारी रखने के लिए आमंत्रित करें।
vzn

जवाबों:


9

हां , DFA गैर शून्यता समस्या के कुछ मामले हैं जो पी। के अंदर हैं। मेरे गुरु की थीसिस इस प्रश्न के लिए समर्पित है, लेकिन दुर्भाग्य से यह फ्रेंच में है। हालांकि, परिणामों के सबसे दिखाई दिया यहाँ में[2]

जब वर्णमाला एकात्मक होती है, तो समस्या एल-पूर्ण होती है जब प्रत्येक डीएफए में दो अंतिम अवस्थाएं होती हैं, और एनपी-पूर्ण अन्यथा। अन्य मामलों में से अधिकांश में ऑटोमेटा के संक्रमण मोनोइड्स पर प्रतिबंध है। उदाहरण के लिए, एबेलियन समूह संक्रमण monoids के लिए, समस्या में हैएनसी3जब प्रत्येक डीएफए में एक अंतिम स्थिति होती है, और एनपी-पूर्ण अन्यथा; प्राथमिक 2-समूह संक्रमण monoids के लिए, समस्या हैएल-पूर्ण जब प्रत्येक डीएफए में अधिकतम दो अंतिम अवस्थाएं होती हैं, और एनपी-पूर्ण अन्यथा।


मुझे अब आपके अधिक सटीक प्रश्न को संबोधित करने की आवश्यकता है, जो केवल में पाया जा सकता है [1]। मान लीजिए कि आपको डीएफए दिए गए हैं{0,1} और पेड़ों के आकार का, अर्थात एक राज्य मौजूद है यू (प्रारंभिक अवस्था) ऐसा है जो प्रत्येक राज्य के लिए है v वहाँ से एक अद्वितीय पथ मौजूद है यू सेवा v। फिर, अंतर शून्यता का निर्णय करना है:

  1. प्रत्येक डीएफए में एक अंतिम स्थिति के लिए एल-पूर्ण,
  2. प्रत्येक डीएफए में दो अंतिम राज्यों के लिए एनएल-पूर्ण, और
  3. प्रत्येक डीएफए में तीन या अधिक अंतिम राज्यों के लिए एनपी-पूर्ण।

यदि आप "कांटा" क्रमशः 0, 1 या 2 बार (यह आपका है) तब भी कठोरता परिणाम पकड़ में आते हैं )। अब यदि आपके DFA को पेड़ों के बजाय चक्रीय रेखांकन निर्देशित किया जाता है, तो समस्या NP- पूर्ण है, यहां तक ​​कि प्रत्येक अंतिम FFA में एक अंतिम स्थिति के साथ और=2; कमी काफी सीधी है और मोनोटोन 1-इन -3 3-सैट से है।

इसलिए, नहीं , मुझे नहीं लगता कि आपकी समस्या के लिए एक कुशल एल्गोरिदम है।

अब, अगर ऑटोमेटा की संख्या तय हो गई है, तो आप माइकल वेहर के साथ चर्चा करना चाह सकते हैं जिन्होंने हाल ही में प्रकाशित किया है[3]


EDIT: जब से ओपी ने अपने प्रश्न का संपादन किया, मुझे अपनी नई आवश्यकताओं के साथ अपना उत्तर स्पष्ट करने दें। एनपी-पूर्ण समस्या पर विचार करें मोनोटोन 1-इन -3 3-सैट जहां आपको 3-सीएनएफ में बिना किसी सूत्र के नकार दिया जाता है, और जहां आपको यह निर्धारित करना होगा कि क्या कोई असाइनमेंट है जो प्रत्येक क्लॉज में बिल्कुल एक चर को सच बनाता है । आप इस समस्या को निम्न शून्यता चौराहे की समस्या को निम्न प्रकार से कम कर सकते हैं। उदाहरण के लिए, खंड के लिएएक्स2एक्स3एक्स5, आप निम्नलिखित ऑटोमेटन का निर्माण करें:

गैजेट में कमी

ध्यान दें कि ऑटोमेटा पेड़ हैं (और इसलिए डीएजी), समतल किए गए हैं, और तीन अंतिम अवस्थाएं हैं। वास्तव में, तीन अंतिम राज्यों को एक ही में विलय कर दिया जाता है, अगर कोई डीएजी से संतुष्ट है। इसके अलावा, केवल दो राज्यों में दो (अलग) आउटगोइंग संक्रमण होते हैं।

  1. माइकल ब्लोंडिन। कॉम्प्लेक्सिट रफिनि डु प्रोबेलमे डीटेरसेनेटन डीओटोमेट्स, एम.एससी। थीसिस, यूनिवर्सिट डे मोंट्रे, 2012।
  2. माइकल ब्लोंडिन, एंड्रियास क्रेब्स एट पियरे मैकेंजी। परिमित ऑटोमेटा की जटिलता कुछ अंतिम अवस्थाएँ, कम्प्यूटेशनल जटिलता (CC), 2014 है।
  3. माइकल वेहर। कठोरता गैर-शून्यता के लिए परिणाम। ICALP, 2014।

2
आपका बहुत बहुत धन्यवाद! मैं आपका उत्तर स्वीकार करता हूं। यह प्रश्न कुछ व्यावहारिक परीक्षणों से उत्पन्न हुआ, जहां इस विशेष विशेषताओं के साथ कई DFA के समाधानों को रोकने के कई चरणों के बाद सब कुछ कम हो गया। फिर भी, हमने देखा कि यद्यपि अंत में हम एक साधारण DFA प्राप्त करेंगे, लेकिन मध्यवर्ती DFAs (जबकि क्रमिक रूप से प्रतिच्छेद करते हुए) के कारण प्रक्रिया कभी समाप्त नहीं हुई, बेतहाशा राज्यों में बढ़ती जा रही थी। इस प्रकार, प्रश्न "मध्यस्थ" भोले चरणों के माध्यम से जाने के बिना उत्तर कैसे प्राप्त करें।
ale64bit

1
बहुत बहुत धन्यवाद (और अस्पष्ट होने के लिए खेद है, मैं इस क्षेत्र में नौसिखिया से नीचे हूं)। अब मुझे कुछ नहीं मिला। आप उल्लेख करते हैं कि "पेड़ के आकार का" का अर्थ है "जड़ से हर दूसरे नोड के लिए अद्वितीय पथ"। लेकिन, उदाहरण के लिए, आपके द्वारा संपादित की गई छवि में, वह एक पेड़ नहीं होगा (जब तक कि आप एक लेबल के रूप में 0/1 बदलाव की गिनती नहीं करते)?
ale64bit

1
आप सही हैं, लेकिन मेरी समझ यह थी कि आप बदलावों की परवाह नहीं करते। क्या यह मामला नहीं है?
माइकल ब्लोंडिन

2
ओ माइकल। अच्छे उत्तर के लिए धन्यवाद। उम्मीद है सब कुछ ठीक है। :)
माइकल वीहर

2
@MichaelWehar यदि आप कश्मीर और सी दोनों को ठीक करते हैं, तो आप उल्लेख करते हैं कि आप समस्या को "जल्दी" हल कर सकते हैं। लेकिन आप समय जटिलता, केवल अंतरिक्ष जटिलता का उल्लेख नहीं करते हैं। उस संदर्भ में वास्तव में "जल्दी से" क्या मतलब है?
ale64bit
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.