उप-अंतरिक्षीय अंतरिक्ष में DFA चौराहा?


25

एन राज्यों के साथ दो (न्यूनतम) डीएफए के चौराहे को ओ (एन 2 ) समय और स्थान का उपयोग करके गणना की जा सकती है। यह सामान्य रूप से इष्टतम है, जिसके परिणामस्वरूप (न्यूनतम) डीएफए में एन 2 राज्य हो सकते हैं । हालाँकि, यदि परिणामी न्यूनतम DFA में z अवस्थाएँ हैं, जहाँ z = O (n) है, तो क्या इसे अंतरिक्ष n 2-eps में गणना की जा सकती है , कुछ निरंतर eps> 0 के लिए? मुझे इस तरह के परिणाम में दिलचस्पी होगी यहां तक ​​कि विशेष मामले के लिए भी जहां इनपुट डीएफए चक्रीय हैं।


3
उम ... यदि दो एन-स्टेट डीएफए एसाइक्लिक हैं, तो प्रत्येक केवल लंबाई के शब्दों के एक सीमित सेट को स्वीकार करता है, जिस स्थिति में उनका चौराहा सिर्फ दो लेबल संक्रमण रेखांकन का चौराहा होता है, जिसमें एन स्टेट्स होंगे और रेखीय समय और स्थान में गणना की जा सकती है। या क्या मैं कुछ न कुछ भूल रहा हूं?
यहोशू ग्रूचो

4
हां, एसाइक्लिक डीएफए केवल शब्दों के एक सीमित सेट को स्वीकार करते हैं। लेकिन ऐसे चक्रीय डीएफए के उदाहरण हैं जिनके प्रतिच्छेदन का आकार n ^ 2 है। उदाहरण के लिए, एक डीएफए के बारे में सोचें जो एएबीसी (जहां एबीसी लंबाई के स्ट्रिंग्स हैं) फार्म के तार को स्वीकार करता है, और एक वह जो एबीसीसी फॉर्म के तार को स्वीकार करता है।
रासमस पैघ

1
रीटैगिंग: cs.cc एक अर्काइव पदनाम है, इसलिए दिए गए टैग को ccccc उपसर्ग की आवश्यकता नहीं है।
सुरेश वेंकट

जवाबों:


15

जवाब है हाँ आटोमैटिक मशीन के आकार के किसी भी आवश्यकता के बिना। इसकी गणना O(log2n) स्पेस में k DFAs के लिए भी की जा सकती है, जहाँ k एक स्थिरांक है।

चलो ( मैं [ कश्मीर ] ) होना कश्मीर DFAs। हम जानते हैं कि, यह देखते हुए दिखाने एक 1 , ... , एक कश्मीर , कंप्यूटिंग न्यूनतम DFA पहचानने एल ( 1 ) एल ( कश्मीर ) में किया जा सकता हेAi=(Qi,Σi,δi,zi,Fi)i[k])kA1,,AkL(A1)L(Ak) अंतरिक्ष। हम पहले कुछ तकनीकी परिणाम साबित करते हैं।O(log2n)

परिभाषा 1 : Let तो दो राज्यों होना क्ष आर iff डब्ल्यू Σ * , क्ष डब्ल्यू एफ आर डब्ल्यू एफq,rqrwΣq.wFr.wF

अब हम शास्त्रीय कार्टेशियन उत्पाद निर्माण द्वारा दिए गए ऑटोमेटन पर विचार करते हैं । Let q = ( q 1 , , q k ) और r = ( r 1 , , r k ) A के राज्य हैं ।Aq=(q1,,qk)r=(r1,,rk)A

लेम्मा 1 : यह तय करना कि क्या NL में है।qr

प्रमाण (स्केच): हम दिखाते हैं कि परीक्षण असमानता NL में है और NL = coNL का उपयोग करते हैं। एक शब्द लगता (समय में एक पत्र) ऐसी है कि क्ष डब्ल्यू एक अंतिम स्थिति है और आर w नहीं है यह q i की गणना करके प्राप्त किया जा सकता है डब्ल्यू , r मैंडब्ल्यू लॉग-अंतरिक्ष में के लिए मैं [ कश्मीर ] और तथ्य यह है कि का उपयोग कर क्ष अंतिम iff है क्ष मैंएफ मैंwΣq.wr.wqi.w,ri.wi[k]q । यह दिखाया जा सकता है कि q impl r का तात्पर्यपॉली-आकार के w केअस्तित्व से है।qiFii[k]qrw

Lemma 2 : यह तय करना कि is (in) सुलभ है NL में।q

पत्र (स्केच): अनुमान (पाली आकार) से रास्तों करने के लिए क्यू मैं ( मैं [ कश्मीर ] )।ziqii[k]

परिभाषा 2 : लेक्सिकोग्राफ़िक क्रम में की अवस्थाओं पर विचार करें । परिभाषित करें रों ( 1 ) के रूप में पहला सुलभ राज्य और रों ( मैं ) पहली सुलभ राज्य निम्नलिखित रों ( मैं - 1 ) जो किसी भी पहले वाली स्थिति के बराबर नहीं है। हम परिभाषित ( क्ष ) अद्वितीय के रूप में मैं ऐसा है कि क्ष रों ( मैं )As(1)s(i)s(i1)c(q)iqs(i)

Lemma 3 : गणना O ( लॉग 2 एन ) स्थान में की जा सकती है।s(i)O(log2n)

प्रमाण (स्केच): परिभाषा 2 एक एल्गोरिथ्म की पैदावार देती है। हम राज्यों पर पुनरावृति करने के लिए काउंटर का उपयोग करते हैं। चलो जे 0 और क्ष वर्तमान स्थिति हो। प्रत्येक राज्य में, हम यह सत्यापित करने के लिए लेम 2 का उपयोग करते हैं कि क्या q सुलभ है। यदि यह है, तो हम हर पिछले राज्यों पर लूप करते हैं और हम सत्यापित करते हैं कि उनमें से कोई भी क्यू के बराबर है । अगर कोई नहीं है, हम वेतन वृद्धि j और उत्पादन क्ष यदि j = मैं । अन्यथा, हम q को s ( j ) के रूप में संग्रहीत करते हैं और हम जारी रखते हैं। चूंकि हम केवल एक निरंतर संख्या में काउंटरों को स्टोर करते हैं और हमारे परीक्षण एनएल में किए जा सकते हैंkj0qqqjqj=iqs(j) , यह सबूत पूरा करता है।NLDSPACE(log2n)

कोरोलरी 1 : गणना O ( लॉग 2 एन ) अंतरिक्ष में की जा सकती है।c(q)O(log2n)

प्रमेय : मिनिमाइजिंग को O ( लॉग 2 एन ) स्पेस में किया जा सकता है ।AO(log2n)

पत्र (स्केच): चलो सबसे बड़ा हो मैं ऐसी है कि रों ( मैं ) परिभाषित किया गया है (यानी। की कक्षाओं की संख्या )। हम एक एल्गोरिथ्म एक automaton outputting देना एक ' = ( क्यू ' , Σ , δ ' , जेड ' , एफ ' ) जहां1m|Q0||Q1|is(i)A=(Q,Σ,δ,z,F)

  • ;Q={s(i):i[m]}
  • ;F={qQ:qiFii[k]}
  • जहां क्ष = ( जेड 0 , ... , जेड कश्मीर )z=s(c(q))q=(z0,,zk)

अब हम दिखाते हैं कि गणना कैसे करें । हर के लिए मैं [ मीटर ] , एक Σ , गणना क्ष रों ( मैं ) a और आउटपुट ट्रांज़िशन ( s ( i ) , a , s ( c ( q ) ) ) । लेम्मा 3 और कोरोलरी 1 द्वारा, यह एल्गोरिथ्म ( लॉग 2 एन ) अंतरिक्ष में चलता है। ऐसा नहीं है कि जाँच की जा सकती एक 'δi[m],aΣqs(i).a(s(i),a,s(c(q)))O(log2n)Aन्यूनतम है और L(A)=L(A)


3
अच्छा एल्गोरिथ्म! यहाँ इस एल्गोरिथ्म को देखने का एक अलग तरीका है। इसका मूल यह है कि किसी भी डीएफए का राज्य न्यूनतमकरण बहुपद समय और अंतरिक्ष में किया जा सकता है । उसके बाद, लघुगणक अंतरिक्ष में चौराहे का प्रतिनिधित्व करने वाले कुछ डीएफए का निर्माण करना आसान है (इसलिए बहुपद में और ( लॉग 2 एन ) स्थान), और हम बहुपद समय में दो कार्यों की गणना कर सकते हैं और ( लॉग 2 एन ) अंतरिक्ष (दो लॉगरिदमिक-स्पेस रिडक्शन की रचना करने के लिए इसी तरह से), पूरे एल्गोरिथ्म को बहुपद समय और O में उपजानाO(log2n)O(log2n)O(log2n) अंतरिक्ष। O(log2n)
त्सुयोशी इटो

2
मैंने अभी-अभी यह उत्तर देखा है ... मैं यह नहीं देखता कि एल्गोरिथ्म पॉलीटाइम और अंतरिक्ष में एक साथ क्यों चलता है । हाँ, एन एल पी डी एस पी सी [ लॉग इन करें 2 n ] , लेकिन यह ज्ञात नहीं है एन एल टी मैं एस पी [ एन हे ( 1 ) , लॉग ऑन 2 n ] - यह है कि, हम कर सकते हैं पॉलिमाइम में एक एल्गोरिथ्म चल रहा है, और हम एक और एल्गोरिथ्म प्राप्त कर सकते हैंO(log2n)NLPDSPACE[log2n]NLTISP[nO(1),log2n] स्पेस, लेकिन मैं नहीं जानता किपॉलिटाइम में एन एल समस्याओंको कैसे हलकिया जाए औरएक एल्गोरिथ्म के साथ( लॉग 2 एन ) स्पेस। O(log2n)NLO(log2n)
रयान विलियम्स

आप सही हैं, मुझे नहीं पता कि कैसे। मैंने इसे एक लंबे समय पहले पोस्ट किया था, इसलिए मुझे यकीन नहीं है कि मैंने इसे इस तरह क्यों लिखा है, लेकिन शायद मेरा मतलब था "बहुपद समय या ओ (लॉग एन)"। मैं इसे संपादित करूंगा क्योंकि यह भ्रामक है। धन्यवाद!
माइकल ब्लोंडिन

14

डिक लिप्टन और उनके सहयोगियों ने हाल ही में इस समस्या पर काम किया, और लिप्टन ने इसके बारे में यहाँ ब्लॉग किया:

http://rjlipton.wordpress.com/2009/08/17/on-the-intersection-of-finite-automata/

ऐसा प्रतीत होता है कि O (n ^ 2) से बेहतर करना यह निर्धारित करने के बहुत विशेष मामले के लिए भी खुला है कि क्या DFA चौराहा खाली भाषा को परिभाषित करता है।
कागज जटिलता परिणाम देता है जो कि चौराहे में न केवल 2 डीएफए से निपटने के लिए एक बहुत ही बेहतर एल्गोरिदम के परिणामस्वरूप होगा, बल्कि बड़ी संख्या में भी होगा।


1
और निचली सीमा के बारे में क्या?
मार्कोस विलग्रा

1
बस प्रश्नों को स्पष्ट करने के लिए: मुझे अंतरिक्ष की सीमा में सुधार करने के लिए O (n ^ 2) समय (या शायद n ^ O (1)) खर्च करने में खुशी हो रही है।
रासमस पैग

13

यदि आपको k DFAs (k इनपुट का हिस्सा है) दिया गया है और यह जानने की इच्छा है कि क्या उनका चौराहा खाली है, तो यह समस्या सामान्य रूप से PSPACE-complete है:

डेक्सटर कोजेन: नेचुरल प्रूफ सिस्टम FOCS 1977 के लिए निचला सीमा: 254-266

शायद अगर आप ध्यान से इस प्रमाण का अध्ययन करें (और लिप्टन और उनके सह-लेखकों द्वारा इसी तरह के निर्माण), तो आपको निश्चित कश्मीर के लिए कुछ प्रकार की जगह कम मिल सकती है।


इस सूचक के लिए धन्यवाद। मैं अनुमान लगा रहा हूं कि यह संभवतः इनपुट के अलावा, अतिरिक्त ^ स्थान पर आवश्यक n ^ ओमेगा (1) स्थान को कम कर सकता है। लेकिन क्या यह संभवतः सुपर-लीनियर स्पेस लो बाउंड को जन्म दे सकता है?
रासमस पग

1
@ user124864 को देखते हुए DFA के साथ एन प्रत्येक राज्यों, उत्पाद automaton होगा n कश्मीर राज्यों। अब, इसके आकार को कम करने के लिए दो तरकीबें हैं। पहला यह है कि आप केवल उत्पाद ग्राफ के पहुंच योग्य घटक पर विचार करते हैं। दूसरा, आप उत्पाद DFA को कम कर सकते हैं। दिन के अंत में, यह पता लगाना कि इस उत्पाद को किस भाषा द्वारा मान्यता प्राप्त है, ऑटोमेटन कठिन है। knnk
माइकल वीहर

1
@ user124864 यहां तक ​​कि केवल यह निर्धारित करने की कोशिश कर रहा है कि उत्पाद DFA एक गैर-खाली भाषा को पहचानता है या नहीं। यह चौराहा गैर-शून्यता समस्या है। मुश्किल से, मेरा मतलब है कि यह एक मजबूत अर्थ में पूर्ण है। XNL
माइकल वीहर

1
@ user124864 यदि आप इसे समय से कम में हल कर सकते हैं , तो हमें PSPACE की संपूर्ण समस्याओं के लिए तेज़ एल्गोरिदम प्राप्त होंगे। यह में व्याख्या करने योग्य नहीं है ( 1 ) कश्मीर लॉग ( एन ) गैर नियतात्मक द्विआधारी अंतरिक्ष। यह ज्ञात नहीं है कि क्या हम इसे k 2 log 2 ( n ) निर्धारक बाइनरी स्पेस से कम में हल कर सकते हैं। यह ज्ञात नहीं है कि अगर हम एक साथ नियतात्मक बहुपद समय और में इसे हल कर सकते ( कश्मीर ) लोग इन 2 ( एन ) किसी भी कार्य के लिए द्विआधारी अंतरिक्षnko(1)klog(n)k2log2(n)f(k)log2(n)f (doing so would improve Savitch's theorem).
Michael Wehar

1
@user124864 Note: we have both of the following. (1) Beating nk time deterministically implies faster deterministic algorithms for PSPACE complete problems and (2) beating nk time non-deterministically implies faster non-deterministic algorithms for PSPACE complete problems.
Michael Wehar

7

यह देखते हुए दो ऑटोमेटा , बी को स्वीकार परिमित भाषाओं (अचक्रीय ऑटोमेटा), के राज्य जटिलता एल ( ) एल ( बी ) में है Θ ( | एक || बी | ) (1) । यह परिणाम एकतरफा डीएफए (जरूरी नहीं कि चक्रीय) (2) के लिए भी है । हालांकि, आप दो ऑटोमेटा के चौराहे की गणना करने के लिए आवश्यक स्थान के बारे में बात कर रहे हैं। मैं यह नहीं देखता कि कार्टेसियन उत्पाद का उपयोग करने वाला क्लासिक निर्माण O ( n 2 ) का उपयोग कैसे करता हैABL(A)L(B)Θ(|A||B|) O(n2) space. All you need is a constant number of counters of logarithmic size. When you compute the transition function for the new state (q,r) you only have to scan the input without looking to any previously generated data.

Perhaps you want to output the minimal automaton? If this is the case, then I have no clue whether it can be achieved. The state complexity of the intersection for finite languages doesn't seem encouraging. However, unary DFAs have the same state complexity and I think it can be achieved with such automata. By using results from (2), you can get the exact size of the automaton recognizing the intersection. This size is described by the length of the tail and the cycle, thus the transition function can be easily computed with very few space since the structure is entirely described by those two sizes. Then, all you have to do is to generate the set of final states. Let n be the number of states in the resulting automaton, then for all 1in, state i is a final state iff ai is accepted by both A and B. This test can be carried with few space.


1
Yes, I am interested in the minimal automaton, or at least an automaton of similar size. Thanks for the pointers to unary DFAs. However, this does not seem to help much for the general case.
Rasmus Pagh
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.