क्या हम कोलमोगोरोव जटिलता का उत्पादन नहीं कर सकते हैं?


28

हमें ट्यूरिंग-मशीन और एक सार्वभौमिक ट्यूरिंग मशीन का एक उपसर्ग मुक्त एन्कोडिंग को ठीक करते हैं U कि इनपुट पर (T,x) (का उपसर्ग से मुक्त कोड के रूप में एन्कोड T के बाद x आउटपुट) जो कुछ भी T पर इनपुट आउटपुट x (संभवतः दोनों हमेशा के लिए चल रहे हैं)। कम से कम प्रोग्राम p की लंबाई जैसे कि U ( p ) = x की लंबाई के रूप में x , की कोलमोगोरोव जटिलता को परिभाषित करें ।K(x)pU(p)=x

वहाँ एक ट्यूरिंग मशीन है T ऐसी है कि के लिए हर इनपुट x यह आउटपुट एक पूर्णांक T(x)|x|इस बात का Kolmogorov जटिलता से अलग है x , यानी, T(x)K(x) लेकिन lim inf|x|T(x)= ?

स्थितियां आवश्यक हैं, क्योंकि

(a) यदि T(x)|x|, तो एक संख्या को आउटपुट करना आसान होगा जो कि के (x) से बहुत अलग है K(x)क्योंकि यह बड़ा है |x|+cU ,

(b) अगर lim inf|x|T(x)<C की अनुमति है, तो हम लगभग सभी नंबरों के लिए 0 (या कुछ अन्य स्थिर) आउटपुट कर सकते हैं , "सौभाग्य से" सबसे अधिक अनुमान लगाने पर (अंतिम रूप से कई संख्याएँ) जो 0 (कुछ अन्य स्थिरांक) का मूल्यांकन करती हैं और कुछ और वहाँ उत्पादन करती हैं। हम \ limsup_ {| x | \ rightarrow \ infty} T (x) = \ infty की भी गारंटी दे सकते हैं lim sup|x|T(x)=जैसे x = 2 ^ n के लिए 2 \ n लॉग इन करें2lognx=2n

यह भी ध्यान दें कि हमारा काम आसान होगा यदि हम जानते हैं कि T(x) विशेषण नहीं है, लेकिन इस बारे में बहुत कम जानकारी है , इसलिए उत्तर यू पर निर्भर हो सकता है U, हालांकि मुझे संदेह है कि यह होगा।

मुझे पता है कि संबंधों का सामान्य रूप से बहुत अध्ययन किया जाता है, लेकिन

क्या कभी किसी ने एक समान प्रश्न पूछा है जहां हमारा लक्ष्य एक एल्गोरिथ्म देना है जो कुछ पैरामीटर को आउटपुट नहीं करता है ?

मेरी प्रेरणा यह समस्या है http://arxiv.org/abs/1302.1109


5
यह आपके एन्कोडिंग पर निर्भर करता है, जैसा कि आप जिस लिंक से surjectivity पर विषय में उल्लेख किया गया है, यह ऐसा हो सकता है कि केवल प्रोग्राम की लंबाई भी मान्य हो। तो अपने प्रश्न को गैर-तुच्छ बनाने के लिए आपको एन्कोडिंग पर अधिक परिकल्पना करने की आवश्यकता है। Kp
डेनिस

2
आपके दूसरे प्रश्न के लिए: हाँ। पूर्णांक को देखते हुए , -th Turing मशीन को निरूपित करते हैं। एक तिरछे गैर-पुनरावर्ती (या DNR) फ़ंक्शन एक फ़ंक्शन है ऐसे सभी पूर्णांक , । (यही कारण है, अगर पर हाल्ट , तो , और नहीं तो ने हाल ही में कम्प्यूटेबिलिटी में मनमाने ढंग से हो सकता है।) ये काफ़ी अध्ययन किया गया है / गणनीय यादृच्छिकता समुदाय। Google "तिरछे गैर-पुनरावर्ती" इस पर कागजात खोजने के लिए। M[M]Mf:NNM[M](M)f(M)[M]Mf(M)[M](M)f(M)
जोशुआ ग्रोको

1
@ डेनिस: मुझे लगता है कि आप गलत हैं। पहले पैरा में दी गई सार्वभौमिक ट्यूरिंग-मशीनों की मेरी परिभाषा के अनुसार, सभी लंबाई वैध कार्यक्रम हो सकते हैं।
डोमटॉर्प

3
कुछ समय पहले मैंने सोचा था (व्यर्थ में) एक स्पष्ट रूप से सरल संस्करण के बारे में: ( ) यह साबित करने के लिए कि पर्याप्त के लिए , for सभी । x0K(x)|x|/2xx0
मार्जियो डी बियासी

1
@ रेकी: यह ठीक है, मुझे ट्यूरिंग मशीनों के एन्कोडिंग पर कोई प्रतिबंध नहीं है, केवल कार्यक्रमों पर, जिसे आप पहले पैरा में पढ़ सकते हैं।
डोमटॉर्प

जवाबों:


7

इस सवाल को फिर से परिभाषित किया जा सकता है कि क्या रूप में और डेनिस टिप्पणियों में बताते हैं यह कुछ एनकोडिंग के लिए गलत है। यहाँ एक कमजोर कथन और इसका एक प्रमाण दिया गया है जो एन्कोडिंग के किसी भी विवरण पर निर्भर नहीं करता है, लेकिन मैं सरलता के लिए एक द्विआधारी भाषा मानूंगा:liminf|x||T(x)K(x)|=0

मान लें कि एक कम्प्यूटेशनल फ़ंक्शन है, जो और । तब । अनौपचारिक रूप से, यदि प्रत्येक स्ट्रिंग के कोलमोगोरोव जटिलता के चारों ओर एक लक्ष्य है जो बिना किसी व्यापक रूप से बढ़ता है, तो कोई भी योग्य फ़ंक्शन इसे मारने से बच नहीं सकता है।T:{0,1}N0T(x)|x|liminf|x|T(x)=liminf|x||T(x)K(x)|<

यह देखने के लिए, को एक यादृच्छिक -बिट संख्या, यानी और । सभी इस तरह के एक यादृच्छिक मौजूद है। यह भी ध्यान दें कि के मूल्यों की एक अनंत संख्या है , जिसके लिए , यह पर रखी शर्तों से निम्नानुसार है । अब को सबसे छोटा स्ट्रिंग दें, जैसे कि । स्पष्ट रूप से एक निरंतर जैसे कि , क्योंकि औरnb0n<2bK(n)bbnb|{T(x)=b}|2bTxnthT(x)=bc1K(x)>bc1K(n)bn से गणना की जा सकती है । और एक निरंतर जैसे कि , क्योंकि भी ऊपर से केवल एक निरंतर से अधिक से घिरा हुआ है , और को से गणना की जा सकती है । तब , और हमारे पास लिए अनंत संख्या में विकल्प हैं (जो कम से कम साथ हैं ), अनंत मानों की संख्या देते हुए के लिए , तो हम किया जाता है।xc2K(x)<b+c2K(n)bxn|K(x)T(x)|<c1+c2b2bx

एक निहितार्थ यह है कि कुछ , अनंत बार। तो कोई कह सकता है कि हम कुछ ऐसा उत्पादन नहीं कर सकते जो कोलमोगोरोव जटिलता नहीं है!cZT(x)=K(x)+c


1
अच्छा, मुझे लगता है कि यह काम करना चाहिए। बेशक, साथ कोई तार नहीं हो सकता है , इसलिए हो सकता है कि आपको , right की आवश्यकता हो? f(x)=bf(x)b
डोमटॉर्प

1
इसे होना चाहिए ताकि से गणना योग्य हो । इसलिए, मुझे लगता है कि किसी को का चयन करने की आवश्यकता है ताकि या इतने तार नक्शे पर आ सकें। मुमकिन है, मान्यताओं का अर्थ यह होना चाहिए कि असीम रूप से ऐसे कई (हालांकि मैं इसे फिलहाल नहीं देख रहा हूं)। (जहाँ तक मैं बता सकता हूँ, मान्यताओं का किसी अन्य तरीके से उपयोग नहीं किया गया है।)f(x)=bnxb,n b2b+1b
एमिल जेकाबेक मोनिका

1
हां, वास्तव में इसकी जरूरत है। लेकिन सबूत विरोधाभास द्वारा आसान है - यदि यह हमेशा अगर , तो किसी भी सीमा , हम यह निष्कर्ष निकाल सकते हैं कि कम से कम तार को मैप किया जाता है , इस प्रकार असीम रूप से कई, जो विरोध करता है । <2bb>b0b0<bBBb0b0lim inf=
डोमटॉर्प

डेनिस जिस बारे में बात करता है वह मेरे सवाल की पहली पंक्ति में सार्वभौमिकता को परिभाषित करने के तरीके पर लागू नहीं होता है। उनकी टिप्पणी भी तुच्छ है, मुझे कोई सुराग नहीं है कि इतने लोगों ने उनकी टिप्पणी को क्यों गलत ठहराया है। लेकिन अफसोस, पीटर के गलत जवाब को भी बहुत उभार मिले, मैं इस साइट पर विश्वास खो रहा हूं ...
डोमोटरप

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

3

मुझे लगता है कि निम्नलिखित काम करता है। मैं कोलमोगोरोव जटिलता के लिए उपयोग करूंगाC(x)

  • दे दो एक समयबद्ध (जैसे कि, इनपुट कार्यक्रम की लंबाई के कुछ घातीय समारोह), और कॉल परिणाम । यदि कोई प्रोग्राम टाइमबाउंड से अधिक है, तो एक अनंत लूप में प्रवेश करता है।UtUtUt
  • बता दें कि पर का सबसे छोटा प्रोग्राम । ध्यान दें कि गणना योग्य है।Ct(x)xtCt
  • चलो वापसी , जब तक कि यह मूल्य के बराबर होता हैजो मामले में वापस लौटाता है। 0. जब तक खाली प्रोग्राम का आउटपुट नहीं होता है, जिस स्थिति में रिटर्न 1 होता है।T(x)Ct(x)+1|x|x
  • चूंकि , हमेशा से अलग होगा । पिछले चरण में तर्क किनारे के मामलों का ध्यान रखता है।C(x)Ct(x)T(x)C(x)
  • Ut सभी स्ट्रिंग्स के लिए एक कोड के रूप में कार्य करता है, इसलिए इसमें अवर अनन्तता है।

टिप्पणियों के एक जोड़े, एक वैकल्पिक (लेकिन समतुल्य) व्याख्या में केसी सिद्धांत निम्नलिखित बताता है: लगभग सभी तार पहले से ही उनके इष्टतम प्रतिनिधित्व ( एक दिए गए मॉडल के लिए wrt ) में हैं, केवल कई तारों को छोड़कर जो एक इष्टतम प्रतिनिधित्व (न्यूनतम) में परिवर्तित हो सकते हैं एक दिए गए अभिकलन मॉडल (या TM) को wrt । इस अर्थ में लगभग हर कार्यक्रम इष्टतम स्ट्रिंग अभ्यावेदन का उत्पादन करता है, लेकिन ये ज्ञात (या कम्प्यूटेबल) प्राथमिकताओं में नहीं हैं
निकोस एम।

आपके पास? T(x)|x|
डोमटॉर्प

@domotorp तकनीकी रूप से हमारे पास जहां सबसे छोटे प्रिंट प्रोग्राम की लंबाई है। बेशक, यह स्थिरांक लिए भी है (और वास्तव में, जब तक कि प्रिंट प्रोग्राम वास्तव में धीमा नहीं है, यह एक ही निरंतर है)। T(x)|x|+ccC(x)
पीटर

लेकिन यह वही है जो पूरे प्रश्न को दिलचस्प बनाता है! मैं इसके बजाय किसी भी फंक्शन से पूछ सकता था, जैसे; , मेरा एकमात्र उद्देश्य आप के समान समाधान को समाप्त करना था। |x||x|/2+99
डोमोटर

@domotrop मुझे दिखाई देता है, इसलिए आप को ऊपरी हिस्से नहीं होने के लिए बाध्य करना चाहते हैं । यह अधिक दिलचस्प है ...T(x)C(x)
पीटर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.