केवल टाइप किए गए लंबो कैलकुलस पर फ़ंक्शन समानता निर्धारित करने के लिए एल्गोरिदम?


10

हम जानते हैं कि केवल टाइप किए गए लंबो-शब्द की बीटा-समता निर्णायक है। M, N: σ → σ को देखते हुए, क्या यह निर्णायक है कि क्या सभी X के लिए: , MX ? NX?β


सीधे शब्दों में टाइप करें लैंबडा कैलकुलस / STLC विकिपीडिया। चूँकि इसकी ट्यूरिंग पूरी नहीं है, इसलिए गणना का कोई अन्य मूल मॉडल है जो इसके समकक्ष है? यह
पड़ाव का

3
@Marzio: वास्तव में, मुझे लगता है कि यहां समस्या सवाल तैयार करने के तरीके के साथ है, जो काफी अभेद्य है। एक बार ठीक से तैयार हो जाने के बाद, यह एक शोध-स्तरीय प्रश्न है। एक बेहतर सूत्रीकरण होगा: हम जानते हैं कि केवल टाइप किए गए लंबो-टर्म की बीटा-समता निर्णायक है। M, N: \ sigma \ rightarrow \ tau को देखते हुए ,M,N:στ क्या यह सभी X:σ , MXβNX ? उत्तर सामान्य रूप से नकारात्मक है (इसलिए कोई एल्गोरिथ्म जैसे कि विकलिब द्वारा मांगे गए मौजूद नहीं है)। हालांकि शायद उम्मीद की जा रही है, यह स्पष्ट रूप से एक प्राथमिकता नहीं है और 90 के दशक के कुछ पत्रों का परिणाम है।
डैमियानो मजाज़

@DamianoMazza: ठीक है, वास्तव में मैंने इसे बंद करने के लिए मतदान नहीं किया था ... मैं अपनी टिप्पणी हटा दूंगा, आपकी छोड़ दूंगा और ओपी की टिप्पणी या संपादन की प्रतीक्षा करूंगा।
Marzio De Biasi

@DamianoMazza और Marzio, मैं इस तरह के औपचारिक सवाल करने के लिए पर्याप्त नहीं जानता। काश, मैंने ऐसा किया होता, लेकिन यह ऐसा कुछ नहीं है जो मैं अपने स्कूल में सीखता। वास्तव में, यहां तक ​​कि "बीटा-समानता" के लिए गुग्लिंग, जो कुछ ऐसा है जो मैंने वास्तव में सवाल पूछने से पहले किया था, मुझे इतने कम परिणाम देता है कि यह लगभग ऐसा है जैसे यह शब्द भी मौजूद नहीं था। इसलिए मुझे इस बात का अंदाजा भी नहीं है कि आप इस सब के बारे में सीखते और पढ़ते हैं। क्या आप लोग कृपया मुझे विषय का अध्ययन करने के लिए सही जगह की ओर संकेत करेंगे? प्रश्न अपडेट किया गया।
MaiaVictor

1
@ विक्लिब: बीटा-तुल्यता एक तकनीकी धारणा है, मैंने अपने उत्तर में इसका उल्लेख करने से परहेज किया। मोटे तौर पर, दो शब्द बीटा-समतुल्य होते हैं जब वे समान परिणाम देते हैं। तो सभी लिए कहने का अर्थ है कि और समान फ़ंक्शन की गणना करते हैं। लैम्बडा -कैलकुलस के बारे में (टाइप्ड या अनकैप्ड) लर्निंग के बारे में संकेत देने वाले, मुझे लगता है कि करी-हावर्ड पर पीटर सेलिंगर के नोट्स और सोरेंसन और उर्जिकज़ेन लेक्चर नोट्स उत्कृष्ट शुरुआती स्थान हैं। MXβNXXMN
दामियानो माज़ा

जवाबों:


13

जैसा कि मैंने अपनी टिप्पणी में कहा, सामान्य तौर पर इसका जवाब नहीं है।

समझने के लिए महत्वपूर्ण बिंदु (मैं विक्लिब के लिए यह कहता हूं, जो इन चीजों के बारे में सीखता हुआ प्रतीत होता है) यह है कि एक प्रोग्रामिंग भाषा / मशीनों का सेट जिसमें सभी प्रोग्राम / संगणनाएं किसी भी तरह से समाप्त नहीं होती हैं, का अर्थ है कि फ़ंक्शन समानता (यानी, चाहे दो) कार्यक्रम / मशीनें एक ही कार्य की गणना करती हैं) पर्णनीय है। एक आसान उदाहरण: पॉलीनोमियलली क्लॉकिंग ट्यूरिंग मशीनों का सेट लें। परिभाषा के अनुसार, ऐसी सभी मशीनें सभी इनपुट पर समाप्त हो जाती हैं। अब, किसी भी ट्यूरिंग मशीन जो भी दिया , वहाँ एक ट्यूरिंग मशीन है कि, इनपुट में दी गई स्ट्रिंग , simulatesएक निश्चित इनपुट पर की गणना के चरण (कहते हैं, खाली स्ट्रिंग) और स्वीकार करता है यदि सबसे अधिक में समाप्त होता हैM 0 x | x | एम एम | x | N M 0 N M 0 N MMM0x|x|MM|x|कदम, या अन्यथा अस्वीकार करता है। यदि एक ट्यूरिंग मशीन है जो हमेशा तुरंत अस्वीकार कर देती है, तो और दोनों (स्पष्ट रूप से) बहुपद रूप से जाते हैं, और फिर भी अगर हम यह तय कर सकते हैं कि और एक ही फ़ंक्शन की गणना करते हैं (या, इस मामले में, उसी भाषा को तय करें), हम यह तय करने में सक्षम होंगे कि क्या (जो याद है, एक मनमाना ट्यूरिंग मशीन है) खाली स्ट्रिंग पर समाप्त होता है।NM0NM0NM

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

हैरी जी। मेयरसन, स्टेटमैन के एक प्रमेय का एक सरल प्रमाण। सैद्धांतिक कंप्यूटर विज्ञान, 103 (2): 387-394, 1992. ( यहां ऑनलाइन उपलब्ध )।

कि पत्र में, Mairson शो है कि, किसी भी ट्यूरिंग मशीन दी , वहाँ एक सरल प्रकार है और एक अवधि के संक्रमण समारोह एन्कोडिंग । (यह स्पष्ट रूप से एक प्राथमिकता नहीं है, अगर किसी के पास चर्च पूर्णांक पर STLC की अत्यंत खराब अभिव्यंजक शक्ति को ध्यान में रखना है। वास्तव में, Mairson का एन्कोडिंग तत्काल नहीं है)। इससे, एक शब्द का निर्माण करना कठिन नहीं हैσ λ δ एम : σ σ एमMσλδ:σσ

टी:nटी[σ]एल

(जहां पर इन्स्टेन्शियशन है चर्च पूर्णांकों के प्रकार की) ऐसी है कि को कम कर देता है अगर ज्यादा से ज्यादा में समाप्त चरणों जब खाली स्ट्रिंग को खिलाया, या अन्यथा । ऊपर के रूप में, अगर हम यह तय करने में सक्षम थे कि द्वारा गया फ़ंक्शन स्थिर फ़ंक्शन है, तो हमने खाली स्ट्रिंग पर की समाप्ति का फैसला किया होगा ।σ टी एमnटी[σ]σ1 _ Mn 0 _ t M 0 _ Mटीn_1_n0_टी0_


शायद एसटीएलसी में बहु-चर बहुपद कार्यों के एन्कोडिंग का उपयोग करना संभव है और फिर मटियासेविच के प्रमेय के लिए अपील करना ।
कोड़ी

इसलिए STLC पूरा नहीं हो रहा है, लेकिन एक ट्यूरिंग मशीन के संक्रमण फ़ंक्शन को एनकोड करने के लिए पर्याप्त शक्तिशाली है !? तो ट्यूरिंग मशीन को एक टेप के रूप में परिभाषित किया जा सकता है और उस पर एक एसटीएलसी कार्यक्रम संचालित हो सकता है?
माईविक्टर

2
@Viclib: इसके बारे में सोचें: एक ट्यूरिंग ट्यूरिंग मशीन के एक कदम का अनुकरण करने के लिए अधिक कम्प्यूटेशनल शक्ति की आवश्यकता नहीं होती है। मूल रूप से, आपको केवल परिमित डेटा प्रकार (यदि-तब-और के साथ), सूचियों (मूल संचालन के साथ: विपक्ष, पूंछ, आदि) और आदेशित जोड़े की आवश्यकता है। (वास्तव में, विस्तारित चर्च-ट्यूरिंग थीसिस का दावा है कि इस तरह की कम जटिलता हर उचित मशीन मॉडल के लिए आम है)। एसटीएलसी गायब है, इनपुट से स्वतंत्र रूप से TM संक्रमण "विज्ञापन लिबासम" को चलाने की क्षमता है: यह केवल इनपुट आकार में घातांक के एक टॉवर के बराबर कई बार उन्हें पुनरावृत्त कर सकता है (मैरसन का पेपर देखें)।
डैमियानो मजाज़

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