समय वर्गों को अलग करना


16

मेरा एक छात्र हाल ही में निम्नलिखित प्रश्न पूछता है:

मान लेंवहाँ एक h (n) मौजूद होना चाहिए जैसे कि DTIME (f (n)) \ subsetneq DTIME (h (n)) \ subsetneq DTIME (g (n))?DTIME(f(n))DTIME(g(n)).

DTIME(f(n))DTIME(g(n)).
h(n)h(n)DTIME(f(n))DTIME(h(n))DTIME(g(n))?
DTIME(f(n))DTIME(h(n))DTIME(g(n))?

यह संभवत: एच (एन) का निर्माण करके सच दिखाया जा सकता है h(n)h(n)यदि f,gf,g समय-निर्माण योग्य हैं। लेकिन सामान्य तौर पर, मुझे लगता है कि यह DSPACE (o (\ log (\ log (n)))) = DSPACE (1) के समान गलत होना चाहिए DSPACE(o(log(log(n))))=DSPACE(1)DSPACE(o(log(log(n))))=DSPACE(1)


यह सटीक मॉडल पर निर्भर हो सकता है।


क्या आप f(n),g(n)=O(1)f(n),g(n)=O(1) ? क्योंकि तब कुछ उदाहरण कुछ कार्यों के लिए मौजूद होने चाहिए जो पहले स्थान को छोड़कर हर जगह शून्य हैं। किसी भी तरह, इस सवाल का कोई मतलब नहीं है अगर fgfg हर जगह एक n को छोड़कर nn?
डोमटॉर्प

2
क्षमा करें, मैं परिभाषा के अनुसार f (n), g (n) = O (1) के साथ समस्या का काफी पालन नहीं कर रहा हूं DTIME (f (n)) = DTIME (g (n)) ? f(n),g(n)=O(1)f(n),g(n)=O(1)DTIME(f(n))=DTIME(g(n))DTIME(f(n))=DTIME(g(n))
एस। पेक

इसके बारे में क्षमा करें, मैंने इस प्रश्न को गलत बताया है और मेरी पूर्व टिप्पणी से बहुत अधिक समझ में नहीं आया। मैंने उसे हटा दिया। धन्यवाद।
माइकल वेहर

जवाबों:


8

यदि DTIME(f(n))DTIME(f(n)) को दो टेप ट्यूरिंग मशीन द्वारा O(f(n))O(f(n)) समय में सभी भाषाओं के वर्ग के रूप में परिभाषित किया गया है , तो मुझे संदेह है कि उत्तर नहीं है। दूसरे शब्दों में, मुझे लगता है कि हमेशा एक सख्त मध्यवर्ती समय जटिलता वर्ग मौजूद नहीं होता है।

नोट: यह उत्तर ठीक वैसा नहीं हो सकता है जैसा आप देख रहे हैं क्योंकि मैं गैर-कम्प्यूटेशनल कार्यों पर विचार कर रहा हूं और मैं तर्क के हर विवरण को शामिल नहीं करता हूं। लेकिन, मुझे लगा कि यह एक अच्छी शुरुआत है। कृपया निसंकोच होकर कोई भी प्रश्न पूछें। हो सकता है कि मैं आगे किसी बिंदु पर इन विवरणों को भर सकता हूं या शायद यह रुचि रखने वाले पाठक से बेहतर जवाब दे सकता है।

प्रपत्र कार्यों पर विचार करें । हम इन कार्यों को प्राकृतिक संख्या कार्यों के रूप में संदर्भित करते हैं।f:NNf:NN

दावा 1: मेरा दावा है कि हम बहुत धीमी गति से बढ़ते हुए गैर-घटते प्राकृतिक संख्या (गैर-कम्प्यूटेबल) फ़ंक्शन जैसे:ε(n)ε(n)

(1) गैर-घटती हैε(n)ε(n)

(2)ε(n)=ω(1)ε(n)=ω(1)

(3) सभी अनबिके कंप्यूटेबल , सेट अनंत है।f:NNf:NN{n|ε(n)f(n)}{n|ε(n)f(n)}

हम धीमी गति से बढ़ते गैर-घटते कदम फ़ंक्शन के रूप में निर्माण करते हैं। आइए हम सभी अभिकलन क्रियाओं को । हम का निर्माण इस तरह से करना चाहते हैं कि हर और हर , । दूसरे शब्दों में, हम मैप करने के लिए इंतजार के लिए जब तक पहले गणन में कार्यों की तुलना में एक मूल्य के अधिक से अधिक करने के लिए मैप किया गया है या इसके बराबर एक बार में कम से कम। फिर, को मैप करने के लिए जारी हैε(n)ε(n){fi}iN{fi}iNε(n)ε(n)iijijimin{k|ε(k)i}min{k|fj(k)i}min{k|ε(k)i}min{k|fj(k)i}ε(n)ε(n)iiiiiiε(n)ε(n)iiजब तक एन्यूमरेशन में पहले फ़ंक्शन कम से कम एक बार से अधिक या उसके बराबर मान पर मैप किए जाते हैं और इस बिंदु पर यह मैप करना शुरू कर देता है । यदि हम निर्माण के लिए इस पुनरावृत्ति प्रक्रिया को जारी रखते हैं , तो किसी भी अनबिके कंप्यूटेबल फ़ंक्शन के लिए, हालाँकि हमेशा छोटा नहीं हो सकता है, यह असीम रूप से अक्सर कम से कम छोटा होगा।i+1i+1i+1i+1i+1i+1ε(n)ε(n)ε(n)ε(n)

नोट: मैंने केवल दावे 1 के पीछे कुछ अंतर्ज्ञान प्रदान किया, मैंने एक विस्तृत प्रमाण नहीं दिया। कृपया नीचे चर्चा में शामिल होने के लिए स्वतंत्र महसूस करें।

क्योंकि इतना धीमा बढ़ता हुआ कार्य है, हमारे पास निम्नलिखित हैं:ε(n)ε(n)

दावा 2: सभी संगणनीय प्राकृतिक संख्या कार्यों के लिए और , यदि और , फिर ।f(n)f(n)h(n)h(n)h(n)=Ω(f(n)ε(n))h(n)=Ω(f(n)ε(n))h(n)=O(f(n))h(n)=O(f(n))h(n)=Θ(f(n))h(n)=Θ(f(n))

दावा 2 के लिए, अगर वहाँ एक गणनीय समारोह अस्तित्व में के बीच और ऐसी है कि , तो हम एक अनबिके प्राकृतिक संख्या फ़ंक्शन की गणना करने में सक्षम होंगे जो तुलना में अधिक धीमी गति से बढ़ता है जो संभव नहीं है। h(n)h(n)f(n)ε(n)f(n)ε(n)f(n)f(n)h(n)Θ(f(n))h(n)Θ(f(n))ε(n)ε(n)

मुझे कुछ प्रासंगिक विवरणों की व्याख्या करने दें। विरोधाभास के लिए मान लीजिए कि इस तरह के एक समारोह अस्तित्व में है। फिर, है।h(n)h(n)f(n)h(n)f(n)h(n)

नोट: पूर्ववर्ती कार्य कम्प्यूटेशनल है क्योंकि और कम्प्यूटेशनल हैं।f(n)f(n)h(n)h(n)

चूँकि , हमारे पास । यह इस प्रकार है कुछ निरंतर है कि वहाँ ऐसा है कि सभी के लिए पर्याप्त रूप से बड़े, । के बाद से इस समारोह असीम और गणना कर सका है हम चाहते हैं कि प्राप्त करने के लिए दावा 1 आवेदन कर सकते हैं असीम अक्सर जो पिछले बयान के विपरीत है।h(n)=Ω(f(n)ε(n))h(n)=Ω(f(n)ε(n))f(n)h(n)=O(ε(n))f(n)h(n)=O(ε(n))ααnnαf(n)h(n)<ε(n)αf(n)h(n)<ε(n)ε(n)αf(n)h(n)ε(n)αf(n)h(n)

दावा 3: एक समय के लिए रचनात्मक फ़ंक्शन , हमारे पास , फिर भी वहाँ मौजूद नहीं है जैसे कि और ।f(n)f(n)DTIME(f(n)ε(n))DTIME(f(n))DTIME(f(n)ε(n))DTIME(f(n))h(n)h(n)f(n)ε(n)h(n)f(n)f(n)ε(n)h(n)f(n)DTIME(f(n)ε(n))DTIME(h(n))DTIME(f(n))DTIME(f(n)ε(n))DTIME(h(n))DTIME(f(n))

केवल यह दिखाने के लिए कि, हमें एक मजबूत समय पदानुक्रम प्रमेय का उपयोग करने की आवश्यकता है और यह वह जगह है जहाँ हम इसका उपयोग करते हैं यह मानते हुए कि टेपों की संख्या निश्चित है (हमने कहा कि दो टेप ऊपर हैं)। मार्टिन फ्यूरर द्वारा "तंग नियतकालिक पदानुक्रम" देखें।DTIME(f(n)ε(n))DTIME(f(n))DTIME(f(n)ε(n))DTIME(f(n))

चूँकि और अलावा कोई गणना योग्य प्राकृतिक संख्या फ़ंक्शन नहीं हैं , जो कि , हमारे पास वह हर एक ऐसे कि और , ।f(n)ε(n)f(n)ε(n)f(n)f(n)Θ(f(n))h(n)f(n)ε(n)h(n)f(n)h(n)Θ(f(n))DTIME(f(n)ε(n))=DTIME(h(n))


1
हां, ठीक यही बात मेरे मन में भी थी, लेकिन फिर रास्ते में कहीं उलझ गई। मैं सिर्फ यह नोट करना चाहता हूं, कि छोटा होने की जरूरत नहीं है; एक समान तर्क दिखाता है कि निचला फ़ंक्शन को ऐसे फ़ंक्शन से बदला जा सकता है जो हमेशा या , और ऊपरी फ़ंक्शन को ऐसे फ़ंक्शन से बदला जा सकता है जो हमेशा या । ϵ(n)f(n)ϵ(n)f(n)0f(n)ϵ(n)f(n)
डोमटॉर्प

1
(3) अनबाउंड फ़ंक्शंस को सीमित करने की आवश्यकता है । f

@ रिकीडेमर जी, आप सही कह रहे हैं! उस पकड़ने के लिए बहुत-बहुत धन्यवाद। मैंने अपने उत्तर को बिना शब्द जोड़े जोड़ने के लिए संपादित किया। :)
माइकल वीहर

1
Im क्लेम के बारे में पूरी तरह से आश्वस्त नहीं है। 1. पर विचार करें यदि , अन्यथा। इस गणना को ध्यान में रखते हुए, ? fi(n)=1niniϵ(n)=Θ(1)
एस। पीक

2
मुझे इस प्रमाण की दो और चिंताएँ हैं: १) दावा २ में आपने कहा कि विरोधाभास इस तथ्य से उत्पन्न होता है कि एक संगणनीय able ( n ) मौजूद नहीं हो सकता क्योंकि यह बराबर है h ( n ) - एफ ( n ) | । मेरा मानना ​​है कि यह एक टाइपोग्राफिक त्रुटि है, क्योंकि यह कहना चाहिए कि एक k मौजूद है जैसे कि ϵ ( n ) = | h ( n ) - k f ( n ) | । लेकिन ध्यान दें कि कश्मीर जरूरत कम्प्यूटेशनल नहीं है, इसलिए तर्क की जरूरत नहीं है। 2) आपने दावा 3 में Furer द्वारा परिणाम का उपयोग किया। हालांकि, परिणाम केवल समय-निर्माण कार्यों के लिए है, लेकिन f ( n )ϵ ( n ) समय-निर्माण योग्य होने की आवश्यकता नहीं है।
एस। पीक

4

यदि यह परिणाम सत्य है, तो यह सबसे अच्छा ज्ञात नियतात्मक समय पदानुक्रम प्रमेय को मजबूत करेगा। [यह एक उत्तर की तुलना में एक टिप्पणी का अधिक है, लेकिन एक टिप्पणी के लिए बहुत लंबा है। यह एक प्रतिरूप के प्रत्यक्ष निर्माण को छोड़ देता है।] याद रखें कि वर्तमान में हमारे पास सबसे अच्छा नियतात्मक समय पदानुक्रम प्रमेय है जो कि अगर f ( n ) , g ( n ) समय-निर्माण योग्य है, और g ( n ) o ( f ( n) है। ) / लॉग एफ ( एन ) ) , फिर डी टी आई एम (जी ( एन ) ) डी टी मैं एम ( ( एन ) )

अब मान लीजिए कि आपके वांछित परिणाम सच है, और जी ( एन ) एक समय constructible समारोह के करीब है कि हो सकता है, लेकिन, अभी भी थोड़ा-ओह ( एन ) / लॉग ( ( एन ) ) , कहते हैं, जी ( n ) = ( एन ) / ( लॉग ( एन ) ) 3 / 2 । (यह समय constructible मनमाने ढंग से समय-constructible के लिए नहीं हो सकता है कई समय constructible के लिए, लेकिन निश्चित रूप से इस भी समय constructible है।) अब, अपने वांछित परिणाम एक का उत्पादन ऐसी है कि डी टी मैं एम ( जी ( एन ) ) डी टी मैं एम ( ( एन ) ) डी टी मैं एम ( f ( n ) ) । वर्तमान-श्रेष्ठ समय पदानुक्रम प्रमेय में सुधार करने से बचने के लिए, हमें g ( n ) = o ( दोनों ) की आवश्यकता होगी( एन ) / लॉग ( ( एन ) ) ) और( एन ) = ( ( एन ) / लॉग ( ( एन ) ) । इन दोनों को एक साथ होने का संकेत देने जी ( एन ) ( ( एन ) / ( लॉग ( f ( n ) ) लॉग ( एच )n ) ) ) । के बाद से( एन ) जी ( एन ) , हम जी ( एन ) ( ( एन )लॉग ( ( एन ) ) लॉग ( जी ( एन ) ) ), या समतुल्यजी(एन)लॉगजी(एन)((एन)/लॉग((एन)))। लेकिनजी(एन)लॉग(जी(एन))=एफ(एन)/(log(f(n))3/2[log(f(n))(3/2)loglog(f(n)]f(n)/log(f(n)), which is not o(f(n)/log(f(n)).


1
Cool! Also, note that there is a better time hierarchy theorem if the number of tapes is fixed. See "The tight deterministic time hierarchy" by Martin Furer.
Michael Wehar

1
@MichaelWehar: Thanks for the pointer! Indeed, when one gets so tight as to only require g(n)=o(f(n)), as Furer shows when the number of tapes is fixed, then my argument goes away. (And for basically the same reason, my argument goes away if this question were about space hierarchy instead of time: for space we have a perfectly tight hierarchy theorem even if # tapes isn't fixed.)
Joshua Grochow

2

I think such a behaviour is true for 1-Tape-DTMs. On the one hand, we have DTIME1(O(n))=DTIME1(o(nlogn)). Unfortunately, the only reference I know is in German: R. Reischuk, Einführung in die Komplexitätstheorie, Teubner, 1990, Theorem 3.1.8.

On the other hand, it should be possible to separate DTIME1(O(n)) and DTIME1(O(nlogn)) by the language {x#2|x|xx{0,1}} using a standard crossing sequence argument.

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