कुशल अभिकलन की धारणाएँ


11

एक बहुपद-समय ट्यूरिंग मशीन एल्गोरिदम को कुशल माना जाता है यदि इसके रन-टाइम, सबसे खराब स्थिति में, इनपुट आकार में एक बहुपद समारोह द्वारा बाध्य है। मुझे मजबूत चर्च-ट्यूरिंग थीसिस के बारे में पता है:

कम्प्यूटिंग के किसी भी उचित मॉडल को ट्यूरिंग मशीनों पर कुशलता से अनुकरण किया जा सकता है

हालांकि, मैं -calculus के एल्गोरिदम के कम्प्यूटेशनल जटिलता का विश्लेषण करने के लिए ठोस सिद्धांत से अवगत नहीं हूं ।λ

क्या हमारे पास गणना के प्रत्येक ज्ञात मॉडल के लिए कम्प्यूटेशनल दक्षता की धारणा है? क्या कोई मॉडल हैं जो केवल कम्प्यूटेशनल प्रश्नों के लिए उपयोगी हैं, लेकिन कम्प्यूटेशनल जटिलता प्रश्नों के लिए बेकार हैं?

जवाबों:


9

जहाँ तक मुझे पता है, कम्प्यूटेबिलिटी के मुख्य मॉडल λ-पथरी, ट्यूरिंग मशीन और पुनरावर्ती कार्य हैं । मैं पुनरावर्ती कार्यों में जटिलता के बारे में स्थिति से अवगत नहीं हूं, वे जटिलता के लिए बेकार हो सकते हैं या नहीं।

n

शुद्ध λ-कलन अपने आप में जटिलता के लिए बेकार था। हालाँकि एक सरल प्रकार की प्रणाली चलन में आई और कुछ λ-terms के लिए समाप्ति की गारंटी बहुत आसान तरीके से दी गई। तब कुछ अन्य प्रणालियों (सिस्टम टी , एफ , ..) ने समाप्ति को बनाए रखते हुए एक महान अभिव्यक्ति की अनुमति दी।

दक्षता या जटिलता समाप्ति की परिशोधन और प्रकार के तर्क से निकटता से संबंधित होने के कारण, बाद में हल्के रैखिक लॉजिक्स आए जो जटिलता के कई वर्गों की विशेषता रखते हैं। ( प्राथमिक , पी, और PSPACE और दूसरों के लिए कुछ बदलाव)। इस डोमेन में अनुसंधान बहुत सक्रिय है और इन जटिलता वर्गों तक सीमित नहीं है, और λ-पथरी तक भी सीमित नहीं है।

tl; dr: λ-पथरी संगणना, समाप्ति और जटिलता सिद्धांत के लिए उपयोगी थी।

हालांकि क्रेडिट देने के लिए जहां क्रेडिट देय है, ट्यूरिंग मशीनें जटिलता को परिभाषित करने के लिए एक अच्छा और सर्वसम्मत तरीका है, लेकिन यह केवल "बहुपद" जैसे ढीले सीमा के लिए सच है, तंग सीमा के लिए नहीं, जिसके लिए PRAM जैसे मॉडल अधिक उपयुक्त हैं।


फिर हम अपने अधिकांश रनटाइम विश्लेषण का उपयोग रैम-जैसे मॉडल के लिए क्यों करते हैं?
राफेल

O(1)O(log|memory|)nlog27

@ राफेल: आप मेरे अंतिम वाक्य पर प्रतिक्रिया दे रहे थे, है ना?
13

हां, मैंने किया (अनुभवहीन पाठक के लिए)।
राफेल

1

β

(λx.term)vterm[x:=v]
1

β

@ गिल्स: यह देखते हुए कि हम नहीं जानते कि इष्टतम कमी को लागू करने की वास्तविक (एकात्मक मॉडल) लागत क्या है, आपकी टिप्पणी वास्तव में प्रासंगिक नहीं है। अभी के लिए, ये अध्ययन केवल इस उत्तर में बताई गई समस्या का शोधन प्रदान करते हैं।
स्टेफेन जिमेनेज

1

मानक जटिलता मॉडल में λ-पथरी को शामिल करने के बारे में, यहां विषय पर कुछ (बहुत) ताजा शोध से सार है। यह for-कटौती के कुछ प्रतिबंधित रूप के लिए इस प्रश्न का उत्तर देता है। मूल रूप से, मानक लागत मॉडल में जटिलता सिर में कमी (जिसमें कॉल-बाय-नेम और कॉल-बाय-वैल्यू स्ट्रैटेजी शामिल है) तक सीमित होने पर reduction-कमी के चरणों की गिनती के समान है ।

Beniamino Accattoli और Ugo Dal Lago द्वारा हेड रिडक्शन के लिए एकात्मक लागत मॉडल के प्रतिवाद पर। (WST2012, कार्यवाही का लिंक )

Λ-पथरी उच्च-क्रम कार्यात्मक कार्यक्रमों का एक व्यापक रूप से स्वीकृत कम्प्यूटेशनल मॉडल है, फिर भी इसके लिए कोई प्रत्यक्ष और सार्वभौमिक रूप से स्वीकृत लागत मॉडल नहीं है। परिणामस्वरूप, उनके सामान्य रूप में λ-terms को कम करने के कम्प्यूटेशनल फैकल्टी का अध्ययन आमतौर पर कंक्रीट एल्गोरिदम पर तर्क द्वारा किया जाता है। यहां, हम दिखाते हैं कि जब सिर की कमी अंतर्निहित गतिशीलता है, तो एकात्मक लागत मॉडल वास्तव में अपरिवर्तनीय है। यह ज्ञात परिणामों में सुधार करता है, जो केवल कमजोर (कॉल-बाय-वैल्यू या कॉल-बाय-नेम) की कमी से निपटते हैं। Invariance स्पष्ट प्रतिस्थापन के एक रेखीय कलन के माध्यम से साबित होता है, जो λ-पथरी में किसी भी हेड रिडक्शन स्टेप को अधिक प्राथमिक प्रतिस्थापन चरणों में अच्छी तरह से विघटित करने की अनुमति देता है, इस प्रकार हेड-कमी के कॉम्बिनेटरिक्स को आसान बनाने का कारण बनता है।


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