क्या पीटाइम में रनटाइम सीमाएं हैं? (उत्तर: नहीं)


64

यह सवाल पूछा गया है कि क्या निम्नलिखित प्रश्न निर्णायक है:

समस्या   एक पूर्णांक और ट्यूरिंग मशीन को P में दिए जाने का वादा करते हुए, इनपुट लंबाई संबंध में का रनटाइम है ?M M O ( n k ) nkMM O(nk)n

"हां", "नहीं", या "खुला" का एक संकीर्ण उत्तर स्वीकार्य है (संदर्भ, प्रमाण स्केच या वर्तमान ज्ञान की समीक्षा के साथ), लेकिन व्यापक जवाब भी बहुत स्वागत करते हैं।

उत्तर

इमानुएल वायोला ने एक प्रमाण पोस्ट किया है कि यह प्रश्न अनिर्दिष्ट है (नीचे देखें)।

पृष्ठभूमि

मेरे लिए, यह सवाल स्वाभाविक रूप से लुका टेविसन के सवाल का जवाब देने में पैदा हुआ था। क्या पी के लिए रनटाइम को ऊपरी संसाधनों के लिए EXP संसाधन की आवश्यकता है? ... ठोस उदाहरण ज्ञात हैं?

यह प्रश्न एक MathOverflow के प्रश्न से भी संबंधित है: गणित में सबसे आकर्षक ट्यूरिंग समस्याएँ क्या हैं? , एक भिन्नता जिसमें "गणित" शब्द "इंजीनियरिंग" में बदल जाता है, मान्यता में कि रनटाइम आकलन एक सर्वव्यापी इंजीनियरिंग समस्या है (उदाहरण के लिए) नियंत्रण सिद्धांत और सर्किट डिजाइन से संबंधित है।

इस प्रकार, इस प्रश्न को पूछने में व्यापक उद्देश्य एक बेहतर प्रशंसा / अंतर्ज्ञान प्राप्त करना है, जिसके बारे में जटिलता वर्ग पी में रनटाइम आकलन के व्यावहारिक पहलू संभव हैं (अर्थात, अनुमान लगाने के लिए पी में कम्प्यूटेशनल संसाधनों की आवश्यकता है), बनाम संभव (बनाम) आवश्यक अनुमान लगाने के लिए EXP में कम्प्यूटेशनल संसाधनों की आवश्यकता होती है), बनाम औपचारिक रूप से अनिर्दिष्ट।

--- संपादित करें (उत्तर-उत्तर) ---

मैंने मैथोवर्फ्लो के समुदाय विकी "आकर्षक ट्यूरिंग-अनपेक्षित समस्याओं" के लिए वियोला के प्रमेय को जोड़ा है यह है कि विकी का पहला योगदान जटिलता वर्ग पी से जुड़ा हुआ है; यह वायोला के प्रमेय (और IMHO इसकी सुंदरता भी) की नवीनता, स्वाभाविकता, और व्यापक गुंजाइश को दर्शाता है।

--- संपादित करें (उत्तर-उत्तर) ---

ज्यूरिस हार्टमैनिस की मोनोग्राफ व्यवहार्य संगणनाएँ और प्रूफ़ेबल काम्प्लेक्सिटी प्रॉपर्टीज़ (1978) इमानुएल वायोला के प्रमाण के समान सामग्री को कवर करती है।


"कंप्यूटर विज्ञान के 75 वर्ष" विषय के तहत लैंस फ़ोर्टवेयर और बिल गैसरच के वेबलॉग पर पूछे गए सवालों के जवाब में, "मैंने अक्सर चाहा है कि ट्यूरिंग ने स्पष्ट रूप से पूछा था:" क्या वेरीफेक्टिव प्रक्रियाएं हैं जिन्हें कंप्यूटिंग में किया जा सकता है संख्या? "... ट्यूरिंग के बजाय भाग्य से कठिन सवाल पूछने के लिए:" क्या संभावित प्रक्रियाएं हैं जो एक संख्या की गणना करने में की जा सकती हैं? ", अगला प्रश्न पूछा जाएगा (लगभग)" क्या ट्यूरिंग मशीन मौजूद हैं जो कि काफी हैं? एनपी में, पी में किसकी सदस्यता अनिर्दिष्ट है? "यह दिखाने के लिए मैं अभी भी इसके बारे में सोच रहा हूँ! :)
जॉन सिडल्स

2
यद्यपि मैं इमानुएल वायोला का प्रमाण स्पष्ट हूं, लेकिन एक बहुत ही समान प्रश्न माथोवरफ़्लो पर पूछा और उत्तर दिया गया: mathoverflow.net/questions/28056/…
एलेक्स दस ब्रिंक

इस थ्रेड पर कई उत्तर और विचार एक निबंध / प्रश्न के लिए प्रासंगिक साबित हुए, जो डिक लिपटन ने अपने वेबलॉग गोडेल के लॉस्ट लेटर पर पोस्ट किए हैं ; वह निबंध / प्रश्न सेट "गेटिंग ऑन बेस विद पी = एनपी" है। URL: rjlipton.wordpress.com/2011/07/04/getting-on-base-with-pnp
जॉन सिड्स

हालांकि P में सीमाएं अनिर्णायक हैं, यह किसी को भी प्रयास करने से रोक नहीं सकता है (खुद को आगे सीमित करके)। एक उदाहरण है कि अगर यह में दिए गए cstheory जवाब
आर्टेम Kaznatcheev

1
इस सवाल ने निम्नलिखित लेख को प्रेरित किया: arxiv.org/abs/1307.3648
डेविड जी

जवाबों:


83

समस्या अनिर्णायक है। विशेष रूप से, आप इसे रोकने की समस्या को निम्नानुसार कम कर सकते हैं। एक उदाहरण को देखते हुए हॉल्टिंग समस्या का, एक नई मशीन का निर्माण है कि इस प्रकार काम करता है: लंबाई के इनपुट पर , यह simulates पर के लिए चरणों। यदि स्वीकार करता है, तो चरणों के लिए लूप और रोक; अन्यथा चरणों के लिए लूप और बंद करें।एम ' एन एम एक्स एन एम एन 2 एन 3(M,x)MnMxnMn2n3

अगर पर रुकती उस में ऐसा नहीं करता है कदम, इसलिए की रन टाइम होगा । यदि कभी रुकता नहीं है तो का रन टाइम कम से कम ।एक्स टी = हे ( 1 ) एम ' हे ( एन 2 ) एम एम ' एन 3Mxt=O(1)MO(n2)MMn3

इसलिए आप अगर तय कर सकते हैं स्वीकार करता है निर्णय लेने से अगर की रन टाइम है या ।x एम ' हे ( एन 2 ) हे ( एन 3 )MxMO(n2)O(n3)


4
O (1) चरणों में M को x पर रोकना क्यों है (यदि यह करता है)?
सुरेश वेंकट

10
एक्स एनM और स्वतंत्र हैं । xn
मनु

2
बहुत ही चतुर प्रमाण, क्या यह किसी प्रसिद्ध परिणाम का रूपांतर है या आपने इसे अभी-अभी तैयार किया है?
एंटोनियो ई। पोरेका

3
@ राफेल: यह एक मार्मिक क्षेत्र है, जो मुझे नहीं लगता कि हमने हल किया है। कुछ स्टैकएक्सचेंज साइटें दूसरों के उत्तरों के संपादन को प्रोत्साहित करती हैं। हमारे पास इसके खिलाफ कोई नीति नहीं है, लेकिन एक व्यावहारिक मामले के रूप में, मैंने लगभग कभी ऐसा नहीं किया है। एक तकनीकी बिंदु: यदि किसी उत्तर को बहुत अधिक संपादित किया जाता है, तो वह सामुदायिक विकि बन जाता है, और @Emanuele को कोई और प्रतिनिधि बिंदु नहीं मिलेंगे, यदि उसके बाद उसका उत्तर नहीं दिया गया। मुझे लगता है कि अतिरिक्त स्पष्टीकरण स्पष्ट करने में मदद करेगा: @ जॉन सिडल्स ने शुरू में सोचा था कि वादे का उपयोग नहीं किया जा रहा था, लेकिन प्रमाण एक मजबूत वादे का उपयोग करता है: रन या , न केवल पी।एन 2 एन 3Mn2n3
हारून स्टर्लिंग

2
@ जॉन: जब तक कोई प्रकाशित संदर्भ नहीं दिया जाता है, इस दिशानिर्देश पर विचार करें
राफेल

29

यह अधिक समझ में आने वाले लक्ष्य के साथ इमानुएल वायोला के उत्तर का एक रीफ़्रेशिंग है।

हम दिखाते हैं कि दी गई समस्या , सामान्य हॉल्टिंग समस्या को कम करके अनिर्णायक है ।एचPH

आज्ञा देना को रोकने की समस्या का कोई उदाहरण हो सकता है, यह है कि हम wether ( पर हाल्ट ) तय करना है। एक ट्यूरिंग मशीन का निर्माण करें जो निम्नानुसार काम करती है:(M,x)M(x)MxM

M*(y) = {
  n := |y|
  Simulate M(x) for n steps
  if ( M(x) has halted )
    Execute n*n arbitrary steps
  else
    Execute n*n*n arbitrary steps
}

अब हम निम्नलिखित निहितार्थों का पालन करते हैं:

M(x)n0N:M halts on x after at most n0 stepsy:nn0M(y) executes n2 arbitrary stepsTM(n)O(n2)

तथा

M(x)nN:M does not halt on x in less than n stepsy:M(y) executes n3 arbitrary stepsTM(n)Ω(n3)

इसलिए, । मानकर एल्गोरिथ्म निर्णायक था, इसलिए होगा , जो एक विरोधाभास पैदा करता है। H(M,x)P(M,2)PH


12

सकारात्मक पक्ष पर, यह निर्णायक है कि क्या एक टेप-ट्यूरिंग मशीन समय में को दिए गए में चलती है , देखें:सी , डी एनnCn+DC,DN

डेविड गजसर: सत्यापित करना कि क्या वन-टेप गैर-नियतात्मक ट्यूरिंग मशीनें समयCn+D चलती हैं , arXiv: 1312.0496


1
छोटे-समय के एक-टेप टीएम द्वारा असामान्य व्यवहार की कोई कमी नहीं। :)
केवह

4

मेरे लेख " चावल की प्रमेय की जटिल सामग्री " POPL'2008 में भी समस्या का समाधान किया गया था , जहां मैं यह साबित करता हूं कि कोई भी "जटिलता समूह" निर्णायक नहीं है। एक जटिलता क्लिक कार्यक्रमों का एक वर्ग है जो समान व्यवहार और जटिलता के साथ क्लैट प्रोग्राम को बंद करता है। मैं अर्ध-पर्णपाती गुणों के लिए आवश्यक शर्तें भी प्रदान करता हूं।

O (n ^ k) में चलने वाले कार्यक्रम उपरोक्त अर्थों में एक जटिलता क्लीक हैं, इसलिए सेट डिसीडेबल नहीं है।

परिणाम को हाल ही में मैथ्यू होयरूप द्वारा अनुमेय सेटिंग (जैसे पी) के लिए भी बढ़ा दिया गया है: सब-कर्सिव फ़ंक्शंस (आईसीएएलपी 2016) के निर्णायक गुण


2

पिछले उत्तरों में जोड़ने के लिए, यह समस्या न केवल बल्कि 0 पूर्ण है। इस प्रकार, यह अनिर्णायक है भले ही डिकेडर को हॉल्टिंग समस्या के लिए एक ओरेकल हो। Σ20

पूर्णता स्पष्ट करने के लिए है, जबकि पी-समय वादा हालत भी है -Complete, वहाँ कोड की एक डिसाइडेबल सेट है ऐसी है कि सभी मशीनों बहुपद समय और कर रहे हैं सवाल यह है कि पर पूर्ण ।Σ20SSO(n2)Σ20S

यह साबित करने के लिए, एक का चयन पूरा , के साथ गणनीय बहुपद समय (द्विआधारी संख्या के लिए)।Σ20φφ(x)kmψ(x,k,m)ψ

तब Then iff को रखता है निम्नलिखित मशीन जहां इनपुट लंबाई है (मशीन केवल इनपुट लंबाई के बारे में परवाह करती है):φ(x)O(n2)n

के लिए 0 करने के लिए :     अगर : # का उपयोग कर एक पाश परीक्षण किया         पड़ाव     के लिए प्रतीक्षा चरणों को रोकनेkn
m<nψ(x,k,m)

n2

ध्यान दें कि हर नहीं-बहुत-छोटे , चाहे कोई कार्यक्रम हमेशा (उदाहरण के लिए) चरणों में , , लेकिन एक मजबूत तरीके से सीमा के बारे में देता है ।cn2+cΠ10Σ20


-1

इस प्रश्न और संबंधित लोगों पर हाल ही में नए और अधिक व्यवस्थित विश्लेषण / कोण / परिणाम प्राप्त हुए हैं, जो कि "एल्गोरिदमिक वेरिफ़िबिलिटी" की अवधारणा और जटिलता सिद्धांत के लिए एक चावल-जैसे-थम एनालॉग की शुरुआत करते हैं। अमूर्त से एक प्रासंगिक खंड इस प्रकार है और पी बनाम एनपी आदि की उपयोगिता से संबंधित कई अन्य प्रमेय हैं

  • क्यों कम्प्यूटेशनल जटिलता के संकल्पना Verifiable गणित / Hromkovic के लिए मुश्किल है

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

    ध्यान दें कि, यदि पी! = एनपी एवी-गणित में साबित होता है, तो प्रत्येक एल्गोरिथ्म ए के लिए यह साबित होता है कि "A SATISFIABILITY को हल नहीं करता है या A बहुपदों में काम नहीं करता है"। दिलचस्प रूप से, हम अंत में बताते हैं कि ऐसे एल्गोरिदम मौजूद हैं जिनके लिए यह न तो सिद्ध है कि वे बहुपद में काम नहीं करते हैं, न ही कि वे SATISFIABILITY को हल नहीं करते हैं। इसके अलावा, SATISFIABILITY को हल करने वाला एक एल्गोरिथ्म है जिसके लिए कोई AV-गणित में साबित नहीं कर सकता है कि यह बहुपद समय में काम नहीं करता है।

    इसके अलावा, हम दिखाते हैं कि पी = एनपी एल्गोरिदम एक्स के अस्तित्व को दर्शाता है, जिसके लिए एवी-गणित में "एक्स बहुवचन SATISFIABILITY को बहुपद समय में" हल करने योग्य नहीं है।


-3

वियोला से समाधान को किसी भी चलने वाले समय (पाली से परे) के लिए सामान्यीकृत किया जा सकता है: आप इसे रोकने की समस्या को निम्नानुसार कम कर सकते हैं। हॉल्टिंग समस्या की एक आवृत्ति (M, x) को देखते हुए, एक नई मशीन M, का निर्माण करें जो निम्नानुसार काम करती है: लंबाई n के इनपुट पर, यह f के लिए x पर M (n) चरणों के लिए या M हाल्ट तक, जहां f (n) है ) किसी भी मनमाने ढंग से बढ़ते फ़ंक्शन (स्थिर से अधिक) n है। (अवलोकन।: एम the धीरे-धीरे इनपुट पढ़ता है, ताकि रैखिक समय बर्बाद करने से बचा जा सके [O (n)] केवल अनावश्यक रूप से सभी इनपुट को पढ़ने के लिए, अगर यह पर्याप्त रूप से बड़ा है और एम हाल्ट है।)

यदि M x पर रुकता है तो यह T = O (1) चरणों में होता है, इसलिए M time का रन समय O (1) होगा। यदि M कभी नहीं रुकता है तो M then का रन टाइम O (n ^ 2 * f (n)) है।

इसलिए आप तय कर सकते हैं कि एम you का रन टाइम O (1) या O (n ^ 2 * f (n)) है या नहीं।

फिर, राफेल से सहायक कोड को इसके अनुसार सामान्यीकृत किया जा सकता है:

आज्ञा देना (एम, एक्स) हॉल्टिंग समस्या का कोई उदाहरण हो सकता है, हमें यह तय करना होगा कि एम एक्स पर टिका है या नहीं। एक नियतात्मक ट्यूरिंग मशीन (DTM) M * का निर्माण करें जो निम्नानुसार काम करता है:

  1. M * (इनपुट) = {
  2. n: = 0
  3. इनपुट से पहला प्रतीक पढ़ें
  4. लूप:
  5. n: = n + 1
  6. F (n) चरणों के लिए या M (x) हाल्ट के लिए M (x) का अनुकरण करें
  7. इनपुट से अगला प्रतीक पढ़ें
  8. End_of_input तक या M (x) रुकने तक लूप करें
  9. }

अब हम निम्नलिखित निहितार्थों का पालन करते हैं:

M सबसे अधिक k (स्थिर) चरणों के बाद x पर रुकता है => T (M *) = O (1) और

M कभी भी x => T (M *) = O (n ^ 2 * f (n)) पर नहीं रुकता है

इसलिए, यहां तक ​​कि यह निर्णय लेना कि क्या एक मनमानी DTM का चलने का समय निरंतर से अधिक है, हलिंग समस्या जितनी कठिन है। □


2
1) कृपया LaTeX का उपयोग करें। २) इस प्रश्न में नया योगदान क्या है? 3) आपका तर्क दोषपूर्ण है। अनुकरण लेता है समय को पहले से ही, के निश्चित रूप से लगातार समय में नहीं चल सकता। MO(n)M
राफेल

बड़े पर्याप्त n के लिए, यदि M (x) रुकता है, तो इसका सिमुलेशन भी रुक जाता है और M * से n0 (स्थिर) चरणों में वापस आ जाता है।
एंड्रे लुइज़ बारबोसा
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.