कार्यात्मक भाषाएं ट्यूरिंग पूरी क्यों हैं?


22

शायद विषय की मेरी सीमित समझ गलत है, लेकिन यह वही है जो मैं अब तक समझता हूं:

  • कार्यात्मक प्रोग्रामिंग लैंबडा कैलकुलस पर आधारित है, जो अलोंजो चर्च द्वारा तैयार किया गया है।

  • इम्पीरियल प्रोग्रामिंग ट्यूरिंग मशीन मॉडल पर आधारित है, जो कि चर्च के छात्र एलन ट्यूरिंग द्वारा बनाई गई है।

  • लैंबडा कैलकुलस ट्यूरिंग मशीन की तरह शक्तिशाली और सक्षम है,
    जिसका अर्थ है कि वे कम्प्यूटेशनल पावर में बराबर हैं।

यदि फंक्शनल प्रोग्रामिंग लैम्बडा कैलकुलस पर आधारित है न कि ट्यूरिंग मशीन से, तो उनमें से कुछ (या सभी) ट्यूरिंग को पूर्ण क्यों कहा जाता है, और लैम्बडा को पूर्ण या ऐसा कुछ नहीं कहा जाता है? क्या "ट्यूरिंग संपूर्णता" शब्द किसी भी तरह से ट्यूरिंग मशीनों के लिए विशेष है, या यह केवल एक शब्द है?

अंत में, अगर अत्यावश्यक भाषाएं ट्यूरिंग मशीन से दूर होती हैं, और कंप्यूटर मूल रूप से ट्यूरिंग मशीन होते हैं, तो अनंत स्मृति के बिना, क्या इसका मतलब यह है कि वे हमारे आधुनिक पीसी पर कार्यात्मक प्रोग्रामिंग भाषाओं की तुलना में बेहतर प्रदर्शन करते हैं?

यदि ऐसा है, तो लैम्बडा कैलकुलस मशीन के बराबर क्या होगा?

मुझे पता है कि यह 3 अलग-अलग प्रश्न हैं, लेकिन वे सभी निकट से संबंधित हैं, और प्रत्येक पिछले प्रश्न पर निर्भर है जिसके साथ शुरू करने के लिए एक वैध प्रश्न है।


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

"ट्यूरिंग पूर्ण होने के लिए परिभाषित" कहना सिर्फ इतना गलत है। क्या हम कृपया शीर्षक बदल सकते हैं?
बाउर

@AndrejBauer शीर्षक संपादित करने के लिए आपका धन्यवाद, लेकिन मैं इसके लिए उत्सुक हूं कि यह क्यों ( टर्निंग कम्प्लीट के रूप में परिभाषित ) गलत है? क्या इसलिए कि यह एक विशेषण है? वर्णित परिभाषित से बेहतर शब्द होगा?
अब्दुल

1
@ अब्दुल खैर, समस्या "परिभाषित" शब्द है। यदि आप कहते हैं कि "कार्यात्मक भाषाओं को ट्यूरिंग पूर्ण" के रूप में परिभाषित किया गया है, तो आप कह रहे हैं कि या तो "कार्यात्मक भाषा" की परिभाषा या "ट्यूरिंग पूर्ण" की परिभाषा बताती है कि कार्यात्मक भाषाएं पूर्ण हो रही हैं। तथ्य के रूप में, न तो परिभाषा कहती है कि।
टेनर स्विट

जवाबों:


20

संक्षेप में :

ट्यूरिंग मशीनों के पास और पीसी जैसे सामान्य कंप्यूटरों के लिए अनिवार्य प्रोग्रामिंग भाषाओं की विशेषता है, (ट्यूरिंग मशीन के बजाय खुद रैंडम एक्सेस मशीन (RAM के करीब)) एक स्पष्ट मेमोरी की अवधारणा है जिसे स्टोर करने के लिए संशोधित किया जा सकता है (मध्यवर्ती परिणाम )। यह संगणना का एक ऑटोमैटिक दृश्य है, जिसमें एक राज्य की अवधारणा (परिमित राज्य नियंत्रण और मेमोरी सामग्री दोनों शामिल होती है) जो अभिकलन प्रक्रिया के रूप में बदल सकती है।

अधिकांश अन्य मॉडल अधिक सार हैं। यद्यपि वे गणना को एक मूल संरचना के परिवर्तन चरणों के उत्तराधिकार के रूप में व्यक्त कर सकते हैं, ये परिवर्तन गणितीय अर्थों के अंतरंग ब्रह्मांड के एक प्रकार में लागू होते हैं। यह गुणों को संरक्षित कर सकता है, जैसे कि संदर्भात्मक पारदर्शिता, जो गणितीय विश्लेषण को सरल बना सकता है। लेकिन यह प्राकृतिक भौतिक मॉडल से अधिक दूरस्थ है जो स्मृति के समतल पर निर्भर करता है।

इस प्रकार कोई प्राकृतिक कार्यात्मक मशीन नहीं हैं, नीचे बताए गए एक बड़े अर्थ को छोड़कर, क्योंकि सॉफ्टवेयर वास्तव में हार्डवेयर से अलग नहीं है।

ट्यूरिंग का कम्प्यूटेशन के रूप में ट्यूरिंग का संदर्भ शायद इस तथ्य से आता है कि उनका मॉडल, ट्यूरिंग मशीन इस भौतिक वास्तविकता बाधा के सबसे करीब था, जिसने इसे कम्प्यूटेशन का अधिक सहज मॉडल बना दिया।

आगे के विचार :

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

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

एक प्रमुख परिणाम यह है कि ये सभी संगणना मॉडल समतुल्य साबित हुए, जो चर्च-ट्यूरिंग थीसिस की ओर ले जाते हैं कि अभिकलन का कोई भी भौतिक रूप से प्राप्य मॉडल इन मॉडलों में से किसी से अधिक नहीं कर सकता है। गणना का एक मॉडल कहा जाता है ट्यूरिंग पूर्ण यदि यह इन मॉडलों में से एक के बराबर साबित हो सकता है, इसलिए उन सभी के बराबर है।

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

जिस समय एलन ट्यूरिंग ने अपने कंप्यूटिंग डिवाइस का निर्माण किया, उस समय अन्य प्रस्ताव सारणीबद्धता की औपचारिक परिभाषा के रूप में काम करने के लिए थे, गणित की नींव के लिए एक महत्वपूर्ण मुद्दा था (देखें एनट्सचेइदंगस्प्रोब्लेम )। ट्यूरिंग प्रस्ताव को उस समय के विशेषज्ञों द्वारा माना जाता था, क्योंकि गणना योग्यता क्या होनी चाहिए, इस पर एक सबसे निश्चित रूप से ज्ञात कार्य है (देखें संगणना और पुनरावृत्ति , आरआई सोर, 1996, धारा 3.2 देखें)। विभिन्न प्रस्ताव समतुल्य साबित हुए, लेकिन ट्यूरिंग अधिक आश्वस्त थे। [युवल फिल्मस की टिप्पणियों से]

यह ध्यान दिया जाना चाहिए कि, एक हार्डवेयर बिंदु से, हमारे कंप्यूटर ट्यूरिंग मशीन नहीं हैं, बल्कि इसे रैंडम एक्सेस मशीन (रैम) कहा जाता है , जो कि ट्यूरिंग पूर्ण भी हैं।

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

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

प्रोग्रामिंग प्रतिमानों में प्रोग्रामिंग भाषाओं का वर्गीकरण जैसे कि अनिवार्य, कार्यात्मक, तर्क, वस्तु उन्मुख भाषा के डिजाइन में इनमें से कुछ तकनीकों की प्रधानता के आधार पर है, और कुछ कंप्यूटिंग विशेषताओं के लिए उपस्थिति या अनुपस्थिति है जो कार्यक्रमों के लिए कुछ गुणों को लागू करते हैं या कार्यक्रम के टुकड़े भाषा में लिखे गए हैं।

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

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

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

लैम्ब्डा कैलकुलस मशीन मौजूद है: यह एक कंप्यूटर है जो लैम्ब्डा कैलकुलस एक्सप्रेशन को कम कर सकता है। आसानी से किया जाने वाला विज्ञापन।

विशेष मशीन आर्किटेक्चर के बारे में

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

इसमें शामिल है

मूल रूप से, ये भी अनिवार्य हार्डवेयर संरचनाएं हैं, लेकिन विशेष प्रतिमान सुविधाओं या माइक्रोप्रोग्राम्ड दुभाषियों के साथ कम से कम अपेक्षित प्रतिमान के लिए अनुकूल हैं।

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

फिर भी, और हालांकि मेरे पास इस पर कोई सटीक डेटा नहीं है, मुझे संदेह होगा कि इन उपक्रमों ने कुछ विचारों को छोड़ दिया, जो मशीनों, यादों और निर्देश सेट वास्तुकला के विकास को प्रभावित करते थे।


ट्यूरिंग मशीन का चुनाव, संदर्भ के रूप में, जो वास्तव में बनाया गया है, ज्यादातर ऐतिहासिक रूप से प्रेरित है: ट्यूरिंग कम्प्यूटेबिलिटी की संतोषजनक परिभाषा के साथ आने वाला पहला था।
युवल फिल्मस १०'१५ को

@YuvalFilmus और यह "संगणना की संतोषजनक परिभाषा" से अधिक क्यों था?
Babou

यही गोडेल ने सोचा था। बॉब सोरे के पास इस मामले पर कहने के लिए कुछ शब्द हैं: cs.uchicago.edu/~soare/Publications/compute.ps
युवल फिल्मस

@YuvalFilmus यह 46 पृष्ठ है। मेरा मतलब है कि मैं कुछ कारण दे रहा हूं कि यह अधिक संतोषजनक क्यों होना चाहिए। वे अनुभवहीन हो सकते हैं। यदि कोई और सम्मोहक है जो सफलता की व्याख्या करता है, तो यह स्पष्ट रूप से उल्लेख करने योग्य है।
Babou

धारा 3.2 को देखें। संगणना की पिछली परिभाषाएँ थीं लेकिन वे आश्वस्त नहीं थे। ट्यूरिंग पहला ऐसा व्यक्ति था, जो कम से कम कुछ प्रमुख लोगों के लिए कायल था।
युवल फिल्मस

21

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

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

अन्य प्रतिमानों के आधार पर प्रोग्रामिंग भाषा बहुत सफल हो सकती है, भले ही अंतर्निहित सीपीयू मूल रूप से उनका समर्थन न करे; उदाहरण के लिए, प्रिंटर स्टैक भाषा चलाते हैं। मशीन कोड की तुलना में प्रोग्रामिंग के लिए अधिक है।


"ट्यूरिंग मशीनें एक अच्छा सैद्धांतिक मॉडल हैं, लेकिन वे वास्तविक कंप्यूटर का बहुत अच्छा मॉडल नहीं हैं।" अनंत स्मृति की कमी को छोड़कर, अन्य कारण क्या हैं कि यह वास्तविक कंप्यूटर के लिए एक अच्छा मॉडल नहीं है? इसके अलावा, क्या मैं यह सोचने में सही था कि कार्यात्मक भाषाएं लैम्ब्डा कैलकुलस से दूर हैं?
अब्दुल

5
ट्यूरिंग मशीनों में रैंडम एक्सेस नहीं होता है, जबकि आपका सीपीयू करता है। कार्यात्मक भाषाएं में पथरी से संबंधित होती हैं । λ
युवल फिल्मस

11
इम्पीरेटिव भाषाएं C में, निरंतर समय में ऐरे एक्सेस की अनुमति देती हैं A[x]। ट्यूरिंग मशीनें निरंतर समय में ऐसा नहीं कर सकती हैं। यही कारण है कि सैद्धांतिक कंप्यूटर विज्ञान में भी, एल्गोरिथ्म के चल रहे समय का विश्लेषण ट्यूरिंग मशीन मॉडल के बजाय रैम मशीन मॉडल पर किया जाता है।
युवल फिल्मस

14
वास्तव में, ट्यूरिंग मशीनें हैं वास्तविक कंप्यूटर का एक अच्छा ... सिवाय इसके कि जब ट्यूरिंग उसके कागज पर लिखा था, "कंप्यूटर" एक मानव पेन और कागज के साथ काम करने के लिए एक नौकरी का विवरण था। रीड / राइट हेड एक पेन का मॉडल है, टेप पेपर की शीटों के अनंत ढेर का एक मॉडल है (बस उन्हें छोटे स्ट्रिप्स में काट लें और उन्हें एक साथ गोंद करें), वर्णमाला का एक मॉडल है, ठीक है, हमारी वर्णमाला , और परिमित संक्रमण नियमों की सीमित मात्रा का एक मॉडल है जो किसी के सिर में रख सकते हैं।
जोर्ग डब्ल्यू मित्तग

3
यह सबसे अच्छी जानकारी थी जो मैंने कभी भी क्यों नर्क में रहने वाली ट्यूरिंग मशीन को चुना। मैंने हमेशा सोचा है कि "उन्होंने गणना के ऐसे भद्दे मॉडल को क्यों चुना"। मैंने हमेशा सोचा है कि अगर गणना के सिद्धांत का आविष्कार मेरे लिए छोड़ दिया गया था (भगवान हमारी मदद करें; हम बहुत दूर नहीं होंगे) तो शायद मैंने अभी भी गणना का एक बेहतर मॉडल चुना होगा। अब मुझे लगता है कि वह कहाँ से आ रहा था और यह इतना अधिक समझ में आता है।
जेक

10

क्योंकि "ट्यूरिंग-कम्प्लीट" का अर्थ है "यह ट्यूरिंग मशीन जो भी गणना कर सकती है, वह गणना कर सकती है।"


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

1
@ युवलफिल्मस: इसका नाम एलन ट्यूरिंग के मम के नाम पर रखा जा सकता है, लेकिन यहां दावा किया गया है कि ऐसा नहीं है ;-)
स्टीव जेसप

@YuvalFilmus हो सकता है (हालाँकि, जहाँ तक मैं जानता हूँ, नहीं है)। लेकिन जहां से यह शब्द आता है, केवल माध्यमिक महत्व का है। यहाँ क्या मायने रखता है, इस शब्द का क्या मतलब है
डेविड रिचरबी

2
यह छोटा और मीठा है, लेकिन शायद थोड़ा बहुत छोटा है। ट्यूरिंग मशीन "क्या" करती है? अच्छी तरह से उन चीजों के बीच जो वे करते हैं "टेपों को पढ़ना और लिखना है, जो लैम्ब्डा अभिव्यक्ति नहीं करते हैं, बेहतर होगा" गणना के ट्यूरिंग-पूर्ण मॉडल सभी कम्प्यूटेशनल कार्यों को गणना करने की अनुमति देते हैं। "
थियोडोर नॉरवेल

@ TheodoreNorvell मुझे लगता है कि आपकी टिप्पणी वैसी ही है जैसी मैं सोच रहा था। मुझे पता था कि लैम्ब्डा कैलकुलस और ट्यूरिंग मशीन सत्ता में बराबर हैं, लेकिन तंत्र में भिन्न (और अब मुझे पता चला है कि अन्य हैं), लेकिन मैं सोच रहा था कि "ट्यूरिंग पूर्णता" शब्द किसी भी तरह से ट्यूरिंग मशीन के लिए विशेष था, या अगर यह सिर्फ एक नाम था।
अब्दुल

6

आपके एक प्रश्न का अभी तक उत्तर नहीं मिला है:

यदि ऐसा है, तो लैम्बडा कैलकुलस मशीन के बराबर क्या होगा?

एक लिस्प मशीन । हार्डवेयर को विशेष रूप से कम्प्यूटेशन के LISP मॉडल के अनुरूप बनाया गया है। विकिपीडिया लेख वाणिज्यिक उत्पादों के बारे में बात करता है, लेकिन विश्वविद्यालय में मेरे अध्ययन के निदेशक ने अपने कार्यालय में एक हाथ से बनाया था।


0

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

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


दूसरे शब्दों में यह कहा जा सकता है कि ट्यूरिंग पूर्णता घटना के महत्व को पहचानने / पहचानने के लिए 1 था। बदले में, इस शब्द के उपयोग के माध्यम से सीएस उसे इस स्मारकीय उपलब्धि के लिए "पहचानता" है।
vzn

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