नियतात्मक संगणना की निन्दात्मक गति


14

क्या nondeterminism गति-निर्धारण नियतात्मक संगणना कर सकता है? यदि हाँ, तो कितना?

Nondeterminism द्वारा गति-निर्धारण नियतात्मक संगणना से मेरा मतलब है कि परिणाम:

DTime(f(n))NTime(n)

जैसे कुछ

DTime(n2)NTime(n)

Nondeterminism द्वारा नियतात्मक संगणना का सबसे अच्छा ज्ञात गति-अप परिणाम क्या है? के बारे में क्या या यहां तक कि एक टी मैं हूँ ( एन ) के स्थान पर एन टी मैं हूँ ( एन ) ?ΣkPTime(n)ATime(n)NTime(n)

मान लें कि सब-क्वाड्रैटिक टाइम सिंगल-टैप ट्यूरिंग मशीनों की अच्छी ख़ासियत से बचने के लिए जटिलता वर्गों को कई-टेप ट्यूरिंग मशीनों का उपयोग करके परिभाषित किया गया है।


3
(तक प्रमेय 4.1 और समय पदानुक्रम प्रमेय, अपने उदाहरण 1-टेप टीएमएस के लिए रोक नहीं सकते हैं।)

जवाबों:


11

आपको एक रोमांचक गति की उम्मीद नहीं करनी चाहिए। हमारे पास है

DTIME(f(n))NTIME(f(n))ATIME(f(n))DSPACE(f(n)),

और अंतरिक्ष द्वारा नियतात्मक समय का सबसे अच्छा ज्ञात अनुकरण अभी भी हॉपक्रॉफ्ट-पॉल-वैलेन्ट प्रमेय है

DTIME(f(n))DSPACE(f(n)/logf(n)).

इस प्रकार, नॉनडेटर्मिनिज़्म या अल्टरनेशन को लॉगरिदमिक कारक से अधिक गति देने के लिए नहीं जाना जाता है। (मुझे संदेह है कि कोई सुपर-लीनियर स्पीड-अप या तो ज्ञात नहीं है, हालांकि मुझे यकीन नहीं है कि अगर HPV प्रमेय को DSPACE के स्थान पर ATIME के ​​साथ काम करने के लिए नहीं बनाया जा सकता है।)


1
एक टेप ऑनलाइन ट्यूरिंग मशीन के लिए, यह लोकगीत है कि NTIME(n)DSPACE(n)
माइकल वेहर

1
DTIME(n)DSPACE(n/log(n))

2
सवाल मल्टीटैप ट्यूरिंग मशीनों के बारे में है।
एमिल जेकाबेक 3.0

4
मैं सिर्फ इच्छुक पाठक के लिए अतिरिक्त स्पष्टीकरण प्रदान करना चाहता था।
माइकल वेहर

2
DTIME(f(n))NTIME(f(n))f(n)=n

6

दो अलग अवधारणाएँ हैं:

(1) निर्धारक मशीनों द्वारा नियतात्मक मशीनों का कुशल अनुकरण।

(२) बार -बार अनुकरण करने से प्राप्त होने वाले स्पीड-अप परिणाम।

मुझे गैर-नियतात्मक लोगों द्वारा निर्धारक मशीनों के किसी भी कुशल सिमुलेशन के बारे में नहीं पता है, लेकिन मुझे कई गति-परिणामों के बारे में पता है जो कि कुशल सिमुलेशन मौजूद होने पर उपयोग किए जा सकते हैं।

उन के वर्ग पर विचार करें जो केवल गैर-निर्धारक अनुमानों का उपयोग करके समय के लिए चलने वाली गैर-नियतात्मक ट्यूरिंग मशीन द्वारा निर्णायक हैं । दूसरे शब्दों में, साक्षी की लंबाई से बंधी है ।NTIGU(t(n),g(n))t(n)g(n)g(n)

यदि आपके पास केवल गैर-नियतात्मक अनुमानों का उपयोग करके अधिक कुशल सिमुलेशन है , तो मेरा मानना ​​है कि आप इसे बहुत कम गति दे सकते हैं। विशेष रूप से, मेरा मानना ​​है कि आप निम्नलिखित सिद्ध कर सकते हैं:log(n)

यदि , तो ।DTIME(nlog(n))NTIGU(n,log(n))DTIME(2n)NTIME(n)

अगर आपको यह दिलचस्प लगे, तो मैं प्रमाण लिख सकता हूं।

रेयान विलियम्स ने "इम्प्रूविंग एक्जिस्टिव सर्च इंप्लाइज सुपरपोलिनोमियल लोअर बाउंड्स" में कुछ संबंधित स्पीड-अप पेश किए।


1
जैसा कि आप देख सकते हैं, एक बड़ी धारणा है और यह काफी उचित है कि आप परिकल्पना को गलत साबित कर सकते हैं। अगर आप करते हैं तो मुझे सूचित कीजिएगा। :)DTIME(nlog(n))NTIGU(n,log(n))
माइकल वीहर

@AndrasSalamon: थकाऊ खोज से उस का अनुसरण कैसे होता है ?

@ रिकडीमर आप सही हैं, ऐसा नहीं है; टिप्पणियों को हटा दिया है। मैं स्पष्ट रूप से मान रहा था कि गणना के अंत में nondeterminism था, लेकिन इसे शुरुआत में माना जाना चाहिए।
एंड्रस सलामोन

अद्यतन: अंत में प्रस्तावित स्पीड अप लिखना शुरू कर दिया जिसका मैंने उल्लेख किया। यह अन्य गति के परिणामों की तुलना में थोड़ा अलग प्रतीत होता है जो मुझे मिला। यदि आप चर्चा में रुचि रखते हैं तो कृपया मुझे उत्तर दें या मुझे ईमेल करें। धन्यवाद! :)
माइकल वीहर

1
निश्चित रूप से एक नज़र रखना होगा, यह एक पेचीदा दृष्टिकोण है।
आंद्र सलाम

6

यहाँ इस बात की व्याख्या की गई है कि सामान्य चतुर्थांश की गतिविभाजन गति नियतात्मक संगणना की क्यों न हो, भले ही सच साबित करना कठिन हो:

मान लें कि एक सामान्य चतुर्थांश nondeterministic गति-निर्धारण की संगणकीय गणना जैसे रखती है। विरोधाभास के लिए, मान लें कि । से में किसी भी समस्या से द्विघात-समय की कमी है । इनका संयोजन करने से हमारे पास समय के पदानुक्रम प्रमेय के विपरीत ।DTime(n4)NTime(n)SATDTime(o(n2/lgn))NTime(n)SATDTime(n4)DTime(o(n4/lgn))

इसलिए, नियतात्मक संगणना की एक सामान्य चतुर्थक गैर-गतिविहीन गति-अप लिए निम्न-बाध्य होगी :SAT

DTime(n4)NTime(n)SATDTime(o(n2/lgn))

इसलिए नियतात्मक संगणना की एक सामान्य द्विघात गतिविहीन गति को साबित करना कम से कम उतना ही कठिन है जितना कि पर लगभग द्विघात कम-सीमा सिद्ध करना ।SAT

इसी तरह, किसी भी अच्छी तरह से व्यवहार समारोह के लिए :f(n)

DTime(f(n2))NTime(n)SATDTime(o(f(n)/lgn))

(यदि स्थान पर हम एक ऐसी समस्या को उठाते हैं, जो रैखिक समय में कटौती के लिए के लिए कठिन है, तो यह उस समस्या के लिए कम बाउंड देगा। हम मशीन के टेपों की संख्या को कुछ पर ठीक कर देते हैं फिर हम Fürer के समय पदानुक्रम प्रमेय का उपयोग कर सकते हैं जिसमें कारक नहीं है।)SATNTime(n)f(n)/lgnk2lgn


चूँकि हम यह भी नहीं जानते हैं कि SAT DTime (n) में नहीं है, हम एक 2 स्पीड-अप नहीं जानते हैं । ω(nlgn)2
केवह
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.