कितने डीएफए दो दिए गए तार को स्वीकार करते हैं?


28

एक पूर्णांक n और वर्णमाला । परिभाषित करें पर सभी परिमित राज्य ऑटोमेटा का संग्रह होने की राज्य 1. हम विचार कर रहे हैं शुरू करने के साथ राज्यों सभी DFAs (बस जुड़ा हुआ नहीं, कम से कम, या गैर पतित वाले); इस प्रकार, ।Σ={0,1}DFA(n)| डी एफ ( एन ) | = एन 2 एन 2 एनn|DFA(n)|=n2n2n

अब दो तार पर विचार x,yΣ और परिभाषित K(x,y) के तत्वों की संख्या होने के लिए DFA(n) को स्वीकार दोनों x और y

प्रश्न: कंप्यूटिंग की जटिलता क्या है K(x,y)?

इस सवाल के मशीन लर्निंग के निहितार्थ हैं ।

संपादित करें: अब जब कि इस प्रश्न पर एक इनाम है, तो मुझे लगता है कि सूत्रीकरण में थोड़ा अधिक सटीक है। के लिए n1 , चलो DFA(n) का संग्रह हो n2n2n , ऑटोमेटा ऊपर परिभाषित। के लिए x,y{0,1} , परिभाषित Kn(x,y) में ऑटोमेटा की संख्या होने के लिए DFA(n) को स्वीकार दोनों और वाई । प्रश्न: कर सकते हैं कश्मीर n ( x , y ) समय में की जा पी एल y ( n , | x | , | y | ) ?xyKn(x,y)poly(n,|x|,|y|)


2
यदि आप अंतिम अवस्थाओं को ठीक किए बिना एक DFA तय करते हैं, तो या तो यह उसी राज्य में x और y को मैप करता है, जिस स्थिति में एकमात्र बाधा यह है कि राज्य को अंतिम होना है, या यह उन्हें दो अलग-अलग राज्यों में मैप करता है, जिस स्थिति में एकमात्र बाधा यह है कि उन दोनों को अंतिम होना है। इस प्रकार, मैं आपकी समस्या को "कितने DFAs x और y को विभिन्न राज्यों में मैप करता हूं?"
a3nm

3
आर्ये, क्या आप गिनती समझा सकते हैं ? मुझे 2 एन फैक्टर नहीं मिल सकता है। जोड़ा गया: उफ़, मैं अंतिम राज्यों को निर्दिष्ट करना भूल गया। वैसे भी, दूसरों की खातिर, यहाँ गिनती कैसे होती है। प्रत्येक राज्य के लिए, निर्दिष्ट करें कि इनपुट 0 और 1 पर कहाँ जाना है ; n 2 n के लिए वह खाता है । अंतिम राज्यों के सेट को निर्दिष्ट करें; वह 2 एन हैn2n2n2n01n2n2n
श्रीवत्स नारायणन

2
वास्तव में, मुझे परवाह नहीं है कि और वाई के अलावा अन्य तारों का क्या होता है । मुझे लगता है कि एक इनाम शुरू करने के लिए एक निश्चित राशि चाहिए? xy
आर्येह

4
सबसे छोटा ऑटोमेटोन जो और वाई को स्वीकार करता है , उसके पास एक ही राज्य है, इसलिए मुझे नहीं लगता कि यह बहुत जानकारीपूर्ण है ...xy
आर्येह

3
यहां एक विचार है: हमें केवल -स्टेट डीएफए की संख्या जानने की आवश्यकता है जो एक ही राज्य में एक्स और वाई पर समाप्त होते हैं । इस संख्या को m और M को DFA की कुल संख्या होने दें, अर्थात M = n 2 n 2 n । फिर उत्तर 1 हैnxymMM=n2n2n, यह सीमा देता है। एम कीगणना करने के लिएएक और विचार यह है कि हमxऔरyके साझा प्रारंभिक खंड के बारे में भूल सकते हैंऔर यह भी मान सकते हैं किx=0aऔरb=1b कोरोकें। हम केवल के साथ द्विआधारी DAGs की संख्या की गणना करने के लिएएलज्यादा से ज्यादा राज्यों और ऊंचाईअधिकतम{एक,}कि0एकऔर1एक ही स्थान पर और से यह गणना करने के लिए आसान है कि अंत तकमीटर12m+14(Mm)mxyx=0ab=1blmax{a,b}0a1bm
केवह

जवाबों:


1

तो सवाल बहुत संक्षिप्त है लेकिन बहुत दिलचस्प है। मुझे लगता है कि इनपुट शून्य में , और x और y बाइनरी में है (या हमें समस्या है, जैसा कि काई के उत्तर द्वारा बताया गया है)।nxy

सबसे पहले, यदि आप लगभग जानने में रुचि रखते हैं , तो आप बस कुछ यादृच्छिक DFA उत्पन्न कर सकते हैं और यह आपको (whp) एक अच्छा सन्निकटन देगा। (मुझे आश्चर्य है कि अगर इस जटिलता वर्ग का एक नाम है।)K(x,y)

तब जानना एक कठिन समस्या की तरह लगता है। जैसा कि a3_nm और Kaveh द्वारा टिप्पणियों में बताया गया है, यह सवाल ऑटोमेटा की संख्या निर्धारित करने के बराबर है जिसके लिए x और y एक ही स्थिति में जाते हैं। मैं इस संभावना को निरूपित करूंगा कि वे पी द्वारा उसी अवस्था में जाएं ।K(x,y)xyp

अपडेट: मेरे द्वारा लिखी गई कुछ चीजें सच नहीं थीं, अब मैंने उन्हें ठीक कर दिया।

यह देखना आसान है कि । हमारे पास समानता है, अगर x सभी 0 है और y अपने अंतिम बिट को छोड़कर सभी शून्य है, जो कि 1 है। क्या अन्य मामले हैं? मुझे नहीं पता। यदि उदाहरण के लिए x खाली स्ट्रिंग और y = 00 है , तो p = n + 1p1/nxyxy=00p=n+1(n1)n

समस्या को सरल बनाने के लिए, मैंने यह भी सोचना शुरू कर दिया कि क्या होता है यदि और y एकात्मक हैं। यदि दोनों कम से कम n हैं और उनका अंतर n से विभाज्य है ! , फिर पी = । क्या यूनिरी संस्करण के लिए एक सरल सूत्र है?xynn!p=1


मैंने समस्या को स्पष्ट किया है - एक एल्गोरिथ्म वांछित है (या कुछ ज्ञात कठिन समस्या से कमी)। : नमूना सन्निकटन कागज, जहां इस कर्नेल शुरू की है में कार्यरत है portal.acm.org/citation.cfm?id=1577108poly(n,|x|,|y|)
Aryeh

2
यूरीरी संस्करण के लिए: केवल बहुपत्नी के रूप में कई -स्टेट यूनिरी ऑटोमेटा हैं, इसलिए मैं शर्त लगाऊंगा कि इस मामले के लिए K n ( x , y ) कंप्यूटिंग के लिए एक पॉली-टाइम एल्गोरिथ्म है । nKn(x,y)
आर्येह

वास्तव में, आप बिल्कुल सही हैं कि संयुक्त संस्करण कम्प्यूटेशनल है। मुझे अभी भी आश्चर्य है कि किसी दिए गए x और y के लिए सूत्र कितना सरल है।
डोमोटरप

आपके द्वारा उपयोग की जाने वाली कमी छोटी गाड़ी है: x और y को एक ही ऑटोमेटा द्वारा स्वीकार किया जा सकता है और पूरी तरह से अलग-अलग राज्यों में समाप्त हो सकता है, वास्तव में, वे अपने पथों में केवल प्रारंभिक स्थिति साझा कर सकते हैं, जो सभी तारों के लिए सही है।
अमन

@nnn: यह लिखे हुए मुझे तीन साल हो गए हैं, लेकिन क्या मेरे जवाब का तीसरा पैरा यह नहीं बताता कि मैं केवल उसी राज्य में समाप्त होने से निपटता हूं?
डोमोटरप

0

मैं बहुत अच्छी तरह से इस बिंदु को याद कर रहा हूं, लेकिन आपने कहा था कि निश्चित है, इसलिए उस आकार के सभी डीएफए को पूर्वसंक्रमित और आसानी से अनुकरणीय प्रारूप में संग्रहीत किया जा सकता है। निम्नानुसार गणना K :nK

इनपुट पर , वाई , जहां एक्स , वाई Σ *xyx,yΣ

  1. स्टोर और yxy
  2. इनिशियलाइज़ काउंटर करने के लिए 0c0
  3. आपके प्रत्येक DFAs के लिएn2n2n
  4. ए। दोनों शब्दों में इसका अनुकरण करें (यह कदम )O(|xy|)

    ख। वेतन वृद्धि अगर दोनों सिमुलेशन रन स्वीकार कर रहे हैंc

  5. आउटपुट c

कुल मिलाकर, कम्प्यूटेशन में रैखिक जटिलता है। उत्तर लिए काफी भिन्न है ।K(n,x,y)


3
स्पष्ट रूप से सभी मशीनों की कोशिश कर काम करेंगे। आर्यह जानना चाहता है कि क्या है, शायद, एक बहुपद समय एल्गोरिथ्म या अन्यथा कुछ कठोरता परिणाम।
लेव Reyzin

कड़ाई से यह बात इनपुट में बहुपद समय है, अगर n इनपुट का हिस्सा नहीं है, तो काई जो कह रहा था। लेकिन सवाल स्पष्ट रूप से अलग है।
डोमोटरप

4
ओह मैं समझा। मुझे नहीं लगता कि इसका मतलब "फिक्स " से है। मुझे लगता है कि समस्या की प्राकृतिक व्याख्या वह है जो इसे तुच्छ नहीं बनाती। n
लेव Reyzin

1
ठीक है, खामियों को दूर करने के लिए धन्यवाद, काई। यह तय हो गया है :)
आर्येह
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.