संगणना के सिद्धांत के क्षेत्र में लैम्ब्डा कैलकुलस का क्या योगदान है?


85

मैं सिर्फ "यह जानने के लिए" लैम्ब्डा कैलकुलस पर पढ़ रहा हूं। मैं इसे ट्यूरिंग मशीन के विपरीत गणना के वैकल्पिक रूप के रूप में देखता हूं। यह कार्यों / कटौती (गंभीर रूप से बोलने) के साथ चीजों को करने का एक दिलचस्प तरीका है। हालांकि कुछ सवाल मुझे कचोटते रहते हैं:

  • लैम्बडा कैलकुलस का क्या मतलब है? इन सभी कार्यों / कटौती के माध्यम से क्यों जाना है? उद्देश्य क्या है?
  • परिणामस्वरूप मैं आश्चर्यचकित रह गया: CS के सिद्धांत को आगे बढ़ाने के लिए लैम्ब्डा कैलकुलस ने वास्तव में क्या किया? यह क्या योगदान था जो मुझे अपने अस्तित्व की आवश्यकता को समझने के लिए "अहा" क्षण की अनुमति देगा?
  • ऑटोमेटा सिद्धांत पर ग्रंथों में लैम्ब्डा कैलकुलस को क्यों नहीं शामिल किया गया है? सामान्य मार्ग विभिन्न ऑटोमेटा, व्याकरण, ट्यूरिंग मशीन और जटिलता कक्षाओं से गुजरना है। लैम्ब्डा कैलकुलस केवल SICP शैली के पाठ्यक्रमों के लिए पाठ्यक्रम में शामिल है (शायद नहीं?)। लेकिन मैंने शायद ही कभी इसे सीएस के मुख्य पाठ्यक्रम का हिस्सा देखा हो। क्या इसका मतलब यह है कि यह सब मूल्यवान नहीं है? शायद नहीं और मुझे शायद यहाँ कुछ याद आ रहा है?

मुझे पता है कि कार्यात्मक प्रोग्रामिंग भाषाएं लैम्ब्डा कैलकुलस पर आधारित हैं, लेकिन मैं इसे एक वैध योगदान के रूप में नहीं मान रहा हूं, क्योंकि यह बहुत पहले बनाया गया था क्योंकि हमारे पास प्रोग्रामिंग भाषाएं थीं। तो, वास्तव में लैम्ब्डा कैलकुलस को जानने / समझने की बात क्या है, इसके अनुप्रयोगों / सिद्धांत में योगदान को लिखिए?


6
उत्तर का एक संबंधित सेट -calculus और TMs के बीच सत्ता में अंतर को स्पष्ट करता है : cstheory.stackexchange.com/questions/1117/…λ
सुरेश वेंकट


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

अपने मुख्य अध्ययनों में मैंने Functional Programmingहास्केल और लिस्प की थोड़ी चर्चा की थी । उस उत्तराधिकारी को Principles of Programming Languages, जिसने एमएल का इस्तेमाल किया और लैम्ब्डा कैलकुलस पेश किया। जैसा कि कुछ जवाबों से पता चलता है, यह वास्तव में है जहाँ लैंबडा पथरी का संबंध है: प्रोग्रामिंग भाषाओं, टाइपिंग आदि के बारे में एक वर्ग में
शाज़

यह प्रश्न टीएम और
लैंबडा

जवाबों:


96

-calculus की दो प्रमुख भूमिकाएँ हैं।λ

  • यह अनुक्रमिक, कार्यात्मक, उच्च-क्रम कम्प्यूटेशनल व्यवहार का एक सरल गणितीय आधार है।

  • यह रचनात्मक तर्क में प्रमाणों का प्रतिनिधित्व है।

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

क्या किसी को -calculus को एक सक्षम प्रोग्रामर, या यहां तक ​​कि कंप्यूटर विज्ञान के एक सिद्धांतकार के रूप में जानना होगा? यदि आप उच्च-क्रम की विशेषताओं के साथ प्रकार, सत्यापन और प्रोग्रामिंग भाषाओं में रुचि नहीं रखते हैं, तो यह संभवतः गणना का एक मॉडल है जो आपके लिए बहुत उपयोगी नहीं है। विशेष रूप से, अगर आप जटिलता सिद्धांत में रुचि रखते हैं, तो λ -calculus शायद नहीं एक आदर्श मॉडल है क्योंकि बुनियादी कमी कदम है ( λ एक्स एम ) एन बीटा एम [ एन / एक्स ] शक्तिशाली है: यह एक मनमाना संख्या बना सकते हैं पर प्रतियों की एन , इसलिए बीटाλλ

(λx.M)NβM[N/x]
Nβगणना की सूक्ष्म लागत के लिए लेखांकन में एक अवास्तविक मूल धारणा है। मुझे लगता है कि यह मुख्य कारण है कि थ्योरी ए -calculus के प्रति आसक्त नहीं है । इसके विपरीत, ट्यूरिंग मशीनें प्रोग्रामिंग भाषा के विकास के लिए बहुत प्रेरणादायक नहीं हैं, क्योंकि मशीन रचना की कोई प्राकृतिक धारणा नहीं है, जबकि λ -calculus के साथ , यदि M और N प्रोग्राम हैं, तो ऐसा M N है । अभिकलन का यह बीजगणितीय दृश्य व्यवहार में प्रयुक्त होने वाली प्रोग्रामिंग भाषाओं से स्वाभाविक रूप से संबंधित है, और बहुत से भाषा के विकास को उपन्यास कार्यक्रम रचना संचालकों की खोज और जांच के रूप में समझा जा सकता है।λλMNMN

-calculus के इतिहास के एक विश्वकोषीय अवलोकन के लिए कार्डोन और हिंडले द्वारा लैंबडा-कैलकुलस और कॉम्बिनेटर लॉजिक का इतिहास देखें ।λ


8
यह बहुत अच्छा जवाब है।
सुरेश वेंकट

9
βββP

5
@DamianoMazza चूंकि यह एक नया परिणाम है, यह थ्योरी ए के इतिहास में प्रभावशाली नहीं हो सकता था। इसके अलावा, मुझे लगता है कि यह पुनर्वितरण केवल कुछ कटौती की धारणाओं के लिए रखता है। IIRC Asperti का पेपर P = NP, साझा करने से पता चलता है कि P और NP पतन हो जाता है यदि आपके पास J.-J के अर्थ में 'इष्टतम' कटौती की रणनीति है। लेवी।
मार्टिन बर्जर

6
βββ


20

λ

सीएस के सिद्धांत को आगे बढ़ाने के लिए लैम्ब्डा कैलकुलस ने वास्तव में क्या किया?

λλλ

λ

λ


2
λλππ

5
अगर मैं खुद को क्लोन कर सकता हूं, तो मैं बीएलएल और वास्तविकता का उपयोग करके पी / एनपी में देखने के लिए एक डुप्लिकेट बनाऊंगा। तार्किक संबंध "प्राकृतिक प्रमाण" नहीं प्रतीत होते हैं, रैखिक प्रकार का अनुशासन यह सुनिश्चित करता है कि आप रिलेटिव नहीं कर सकते हैं, और बीएलएल की पॉलीटाइम पूर्णता प्रमेय आपको इस बात की चिंता करने से बचते हैं कि आपके द्वारा याद किए गए एल्गोरिदम के वर्ग हैं या नहीं। रैखिकता और प्रतिनिधित्व सिद्धांत के बीच संबंध, जीसीटी से भी संबंध का सुझाव देता है। मुझे लगता है कि यह सब इसलिए है कि आप तांत्रित और निराश हैं, हालांकि। :)
नील कृष्णास्वामी

1
अरे @NeelKrishnaswami क्या आप मुझे पठन सामग्री की ओर संकेत कर सकते हैं जो BLL (बंधे रैखिक तर्क) और प्राकृतिक प्रमाणों से संबंधित है?
मार्टिन बर्जर

रे बी बनाम ए: लैम्ब्डा-कैलकुलस केवल समान गणनाओं को बेहतर ढंग से संरचित करने के बारे में है, लेकिन उदाहरण के लिए, अन्य एल्गोरिदम का उत्पादन नहीं कर सकता है। परिणाम पर कट-एलिमिनेशन और सबफोर्मुला प्रॉपर्टी के द्वारा, फर्स्ट-क्लास फंक्शन के बिना फर्स्ट-ऑर्डर टाइप के साथ कोई भी प्रोग्राम लिखा जा सकता है। लेकिन कट-एलिमिनेशन डुप्लिकेटिंग कोड से मेल खाता है: इसलिए हम फिर से पाते हैं कि यदि आपको पर्याप्त कॉपी-पेस्टिंग करने की इच्छा है, तो आपको उच्च-क्रम वाले कार्यों की आवश्यकता नहीं है। (रेनॉल्ड्स डिफ्रेंशलाइजेशन आपको कॉपी-पेस्टिंग से भी बचने की अनुमति देता है, लेकिन एक वैश्विक परिवर्तन है, इसलिए यह एक संकलक के लिए बेहतर है)।
Blaisorblade

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

13

आपके प्रश्नों को कई पक्षों से संपर्क किया जा सकता है। मैं ऐतिहासिक और दार्शनिक पहलुओं को पक्ष में छोड़ना चाहता हूं और आपके मुख्य प्रश्न को संबोधित करता हूं, जो कि मैं यह मानता हूं:

लैम्बडा कैलकुलस का क्या मतलब है? इन सभी कार्यों / कटौती के माध्यम से क्यों जाना है?

बूलियन बीजगणित, या संबंधपरक बीजगणित, या प्रथम-आदेश तर्क, या प्रकार सिद्धांत, या कुछ अन्य गणितीय औपचारिकता / सिद्धांत का क्या मतलब है? इसका उत्तर यह है कि उनके पास कोई अंतर्निहित उद्देश्य नहीं है, भले ही उनके डिजाइनरों ने उन्हें किसी उद्देश्य या किसी अन्य के लिए बनाया हो। लिबनीज, जब बूलियन बीजगणित की नींव डालते हैं, तो एक निश्चित दार्शनिक परियोजना को ध्यान में रखते थे; बोले ने अपने कारणों से इसका अध्ययन किया। रिलेशनल अलजेब्रा पर डी मॉर्गन का काम भी उनकी विभिन्न परियोजनाओं से प्रेरित था; Peirce और Frege के पास आधुनिक तर्क बनाने के लिए अपनी प्रेरणाएँ थीं।

मुद्दा यह है: लैंबडा कैलकुलस बनाते समय चर्च के पास जो भी कारण हो सकते हैं, लैम्ब्डा कैलकुलस की बात एक चिकित्सक से दूसरे में भिन्न होती है।

  • किसी के लिए यह गणना के बारे में बात करने के लिए एक सुविधाजनक संकेतन है; ट्यूरिंग मशीनों का एक विकल्प, और इसी तरह।

  • दूसरे के लिए यह एक ठोस गणितीय आधार है जिस पर अधिक परिष्कृत प्रोग्रामिंग भाषा (जैसे मैककार्थी, स्टेनली) का निर्माण करना है।

  • एक तीसरे व्यक्ति के लिए यह प्राकृतिक और साथ ही प्रोग्रामिंग भाषाओं (जैसे मोंटेग, फिच, क्रैटर) के शब्दार्थ देने के लिए एक कठोर उपकरण है

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


एक परिचय के लिए युग्मकों के लिए Hindley & Seldin का परिचय और λ- पथरी देखें । Barendregt की लैंबडा कैलकुलस बाइबिल है, इसलिए यदि आपको Hindley & Seldin के बाद हुक किया जाता है, तो तलाशने के लिए इसमें शब्दार्थ और वाक्य रचना दोनों प्रकार के विषय हैं।


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

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

@SashoNikolov - "एक तरह से जो टीएम द्वारा सदस्यता नहीं ली गई है।" परिभाषा के अनुसार, यह असंभव है, क्योंकि LC और TM समतुल्य हैं। किसी भी चीज को आप एक के साथ व्यक्त या साबित कर सकते हैं, आप दूसरे के साथ (और इसके विपरीत) कर सकते हैं। इसलिए वे एक दूसरे को निरर्थक बनाते हैं (जैसा कि वे दोनों सामान्य पुनरावर्ती सिद्धांत के साथ करते हैं, फिर भी एक अन्य टीएम-समकक्ष औपचारिकता)। इसका मतलब यह है कि हमें सभी टीएम-समतुल्य सिस्टम को बाहर फेंक देना चाहिए लेकिन टीएम को ही? मैं ऐसा नहीं कहूंगा, क्योंकि कभी-कभी टीएम या इसके विपरीत एलसी में चीजें व्यक्त करना आसान होता है। यह कम्प्यूटेशन के बारे में बात करने का सिर्फ एक और तरीका है।
गेब्रियल एल।

1
@GabrielL। आप पूरे वाक्य को पढ़ने, तो यह कहते हैं, "कैसे लैम्ब्डा पथरी है स्पष्ट एक तरीका है कि टीएमएस द्वारा सम्मिलित नहीं किया गया है में गणना की अवधारणा"। दो गणितीय परिभाषाएँ जो औपचारिक रूप से समतुल्य हैं, अभी भी अलग-अलग और पूरक तरीकों से एक ही अंतर्निहित अवधारणा को स्पष्ट कर सकती हैं। मेरी टिप्पणी का मतलब यह है कि टीएम की तुलना में लैम्ब्डा कैलकुलस के संदर्भ में कम्प्यूटेबिलिटी व्यक्त करने से क्या स्पष्टता मिलती है, यह पूछना वाजिब है। यह औपचारिक तुल्यता के बारे में बिल्कुल नहीं है।
सातो निकोलोव

समझ गया - कुंजी शब्द को किसी भी तरह याद करने में कामयाब रहे। उत्तर के लिए धन्यवाद।
गेब्रियल एल।

12

ट्यूरिंग ने तर्क दिया कि गणित को पढ़ने / लिखने के प्रतीकों के संयोजन को कम किया जा सकता है, एक सीमित सेट से चुना जा सकता है, और मानसिक 'राज्यों' की एक सीमित संख्या के बीच स्विच किया जा सकता है। उन्होंने अपनी ट्यूरिंग मशीनों में इस पर भरोसा किया, जहां प्रतीकों को एक टेप पर कोशिकाओं में दर्ज किया जाता है और एक ऑटोमेटन राज्य का ट्रैक रखता है।

हालांकि, ट्यूरिंग की मशीनें इस कमी का रचनात्मक प्रमाण नहीं हैं। उन्होंने तर्क दिया कि किसी भी ट्यूरिंग मशीन द्वारा किसी भी 'प्रभावी प्रक्रिया' को लागू किया जा सकता है, और यह दिखाया गया है कि एक यूनिवर्सल ट्यूरिंग मशीन उन सभी अन्य मशीनों को लागू कर सकती है, लेकिन उन्होंने वास्तव में प्रतीकों, राज्यों और अद्यतन नियमों का एक सेट नहीं दिया जो गणित को लागू करते हैं। जिस तरह से उसने तर्क दिया। दूसरे शब्दों में, उन्होंने एक 'मानक ट्यूरिंग मशीन' का प्रस्ताव नहीं किया था, जिसमें एक मानक सेट था जिसे हम अपने गणित को लिखने के लिए उपयोग कर सकते हैं।

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

अब, हम पूछ सकते हैं कि टीएम बोली के बजाय एलसी को एक आदिम के रूप में क्यों माना जाता है? इसका उत्तर यह है कि एलसी के शब्दार्थ निरूपित होते हैं : एलसी शब्द का अर्थ 'आंतरिक' होता है। चर्च के अंक हैं, इसके अलावा, गुणा, पुनरावृत्ति, आदि के लिए कार्य हैं। यह एलसी को बहुत अच्छी तरह से गठबंधन करता है कि कैसे (औपचारिक) गणित का अभ्यास किया जाता है, यही वजह है कि कई (कार्यात्मक) एल्गोरिदम अभी भी सीधे एलसी में प्रस्तुत किए जाते हैं।

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


5

अन्य उत्तर अच्छे हैं, यहां एक अतिरिक्त कोण / कारण है कि विचार के लिए दूसरों के साथ अभी भी अधिक निश्चित हो सकता है, फिर भी स्पष्ट रूप से ध्यान में रखना मुश्किल हो सकता है क्योंकि पुराने मूल समय की रेत में कुछ हद तक खो जाते हैं:

ऐतिहासिक मिसाल!

लैम्ब्डा कैलकुलस को निम्न रेफरी में कम से कम 1932 की शुरुआत में पेश किया गया था :

  • ए। चर्च, "लॉजिक की नींव का एक सेट", एनल्स ऑफ मैथमेटिक्स, सीरीज़ 2, 33: 346–366 (1932)।

ट्यूरिंग मशीन में पेश किया गया था ~ 1936 , इसलिए लैम्ब्डा पथरी कई वर्षों से टीएम की उपस्थिति से पहले!

  • ट्यूरिंग, एएम (1936)। "कॉम्प्यूटिबल नंबर्स पर, एनट्सचेयडंग्स समस्या के लिए एक आवेदन के साथ"। लंदन मैथमेटिकल सोसाइटी की कार्यवाही। 2 (1937) 42: 230–265। डोई: 10.1112 / plms / s2-42.1.230

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

लैम्ब्डा कैलकुलस बस एक तरीका है जो गणित के प्रमेय और तार्किक सूत्र व्युत्पत्ति वगैरह के रूप में इसका प्रतिनिधित्व करने के संदर्भ में एक तर्क-केंद्रित पीओवी से गणना का अध्ययन करता है। यह कंप्यूटिंग और पुनरावृत्ति और गणितीय प्रेरण के साथ आगे तंग युग्मन के बीच गहरे संबंध को भी दर्शाता है ।

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

इसलिए, नाटकीय रूप से, कोई यह भी कह सकता है कि कंप्यूटिंग की उत्पत्ति की खोज के लिए लैम्बडा कैलकुलस एक शैक्षणिक समय मशीन जैसा है !


1
परिशिष्ट, लैंबडा कैलकुलस भी व्हाइटहेड / रसेल द्वारा प्रिंसिपिया मैथमेटिका से अत्यधिक प्रभावित हुआ है, जो गोडेल के लिए एक बड़ी प्रेरणा थी । इस शोध के कुछ भी से प्रेरित था Hilberts 10 वीं समस्या है जो एक के लिए कहा सदी के मोड़ पर एल्गोरिथम समाधान से पहले "एल्गोरिथ्म" ठीक (गणितीय) में परिभाषित किया गया था, और वास्तव में है कि खोज काफी हद तक है बाद में सटीक तकनीकी परिभाषा के लिए क्या ले जाते हैं।
vzn

btw / स्पष्टीकरण / iiuc यह वास्तव में पोस्ट कैनोनिकल सिस्टम थे जिनका पहली बार पोस्ट द्वारा अध्ययन किया गया था और जाहिर तौर पर सरल पोस्ट पत्राचार समस्या एक विशेष मामला है। यह भी क्लेन था, जो सभी 3 प्रमुख प्रणालियों को विनिमेय / समतुल्य (टीएम, लैम्ब्डा कैलकुलस, पोस्ट कैनोनिकल सिस्टम) साबित करने में मदद करके ट्यूरिंग पूर्णता (उस नाम के तहत नेक नहीं) की अवधारणा को विकसित करने में सहायक था।
vzn

चर्च-ट्यूरिंग थीसिस विकिपीडिया का इतिहास भी देखें जो कई ऐतिहासिक विवरणों / अंतर्संबंधों का पता लगाता है
vzn

4
मैं एक कठिन समय होने से कोबोल की तुलना में नाराज नहीं हूं।
नील टोरंटो

-2

मैं अभी इस पोस्ट पर आया हूं और मेरी पोस्ट दिन (वर्ष!) के बजाय देर से होने के बावजूद, मैंने सोचा कि शायद मेरी "पैसे की कीमत" कुछ काम की हो सकती है।

विश्वविद्यालय में विषय का अध्ययन करते समय, मैंने इस मामले पर एक समान विचार किया था; इसलिए, मैंने व्याख्याता को "क्यों" का प्रश्न दिया और प्रतिक्रिया थी: "संकलनकर्ता"। जैसे ही उसने इसका उल्लेख किया, कमी के पीछे की शक्ति और यह आकलन करने की कला कि कैसे सबसे अच्छा हेरफेर करने के लिए अचानक क्यों पूरे उद्देश्य को बनाया गया था और अभी भी एक संभावित उपयोगी उपकरण है।

खैर, ऐसा बोलना मेरा "अहा" पल था।

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


संकलक पर "अहा" क्या था ?
पीएचडी

आपका अंतिम पैराग्राफ पूरी तरह से सट्टा लगता है और आप वास्तव में कभी नहीं समझाते हैं कि एक शब्द "कंपाइलर" सवाल का जवाब क्यों देता है।
डेविड रिचेर्बी

@PhD: प्रोग्राम्स चलाते समय बीटा-रिडक्शन और प्रतिस्थापन का उपयोग नहीं किया जाता है, लेकिन इनका उपयोग कंपाइलिंग ऑप्टिमाइज़र्स के अंदर किया जाता है। यही कारण है कि नहीं है लैम्ब्डा-पथरी का मुख्य महत्व है, लेकिन यह एक बहुत ही ठोस आवेदन है।
Blaisorblade
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.