कॉम्बिनेटर पथरी के लिए बेसिस सेट


19

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

मुझे पता है कि कई एकल-कॉम्बीनेटर बेस हैं, जैसे कि इओटा कॉम्बिनेटर और विभिन्न अन्य जो फोकर द्वारा निर्मित / समीक्षा की गई हैं । हालांकि, ये "अनुचित" कॉम्बिनेटर हैं, जिसका अर्थ है कि वे शुद्ध अमूर्त के बजाय अन्य कॉम्बिनेटरों के संदर्भ में व्यक्त किए जाते हैं। 1 इस प्रश्न के प्रयोजनों के लिए मैं उचित समुच्चय से बना आधार सेटों में दिलचस्पी लेता हूं।

क्या अन्य संभावित आधार सेटों का अध्ययन भी मौजूद है? वुल्फ्राम की गणना के विभिन्न अन्य मॉडलों के अध्ययन की तर्ज पर आदर्श कुछ होगा , जिसमें विभिन्न संयोजनों का व्यवस्थित रूप से अध्ययन किया जाता है। विशेष रूप से, मुझे इसमें दिलचस्पी है कि क्या निम्नलिखित बातों के सरल उदाहरण ज्ञात हैं:

  • एक न्यूनतम आधार सेट जिसमें I कॉम्बिनेटर शामिल है। (मैं "न्यूनतम" का उपयोग कर रहा हूं इसका मतलब है कि यदि आप किसी सदस्य को हटा देते हैं तो यह आधार होना बंद हो जाता है, इसलिए SKI आधार की गणना नहीं होगी।)
  • एक न्यूनतम आधार सेट जिसमें वाई कॉम्बीनेटर, या द कॉम्बिनेटर (उर्फ मॉकिंगबर्ड) शामिल हैंω

एस, के और बी, सी, के, डब्ल्यू के अलावा कॉम्बिनेटर लॉजिक के लिए अन्य संभावित आधारों के बारे में कोई अन्य जानकारी वास्तव में सहायक होगी।

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

1 सटीक होने के लिए: लैम्ब्डा कैलकुलस में एक उचित कॉम्बीनेटर फॉर्म की एक अभिव्यक्ति है , जहां केवल , आदि मुक्त चर के रूप में, और किसी भी सार शामिल नहीं है। उदाहरण के लिए, एक उचित संयोजन है, लेकिन नहीं है, क्योंकि इसमें एक लंबर शब्द पर लागू होता है।(λएक्स1एक्स2...पी(एक्स1,एक्स2,...))पी(एक्स1,एक्स2,...)एक्स1एक्स2(λxyz.x(zz))(λx.x(λy.y))एक्स

जवाबों:


2

एक आधार से कॉम्बिनेटरों को स्विच करके अन्य बेस बनाना आसान है जो कुछ ऐसा ही करते हैं। उदाहरण के लिए, BCKW से शुरू होकर, आप लिए स्विच कर सकते हैं (चूंकि दोनों स्विच शब्द चारों ओर हैं) और for (दोनों डुप्लिकेट चीजों के बाद से)। आप जानते हैं कि यह अभी भी एक आधार है क्योंकि आप इससे और को पुनर्प्राप्त कर सकते हैं : और ।सीटी=(λएक्सyyएक्स)डब्ल्यूω=(λएक्सएक्सएक्स)सीडब्ल्यूसी=बी(टी(बीबीटी))(बीबीटी)डब्ल्यू=सी(बीω(बीबीटी))


1

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

इसका मतलब है कि बी, टी, एम, के, आई, जहां टैब = बीए और मा = एए जैसे कुछ भी एक आधार है। वास्तव में, बी, टी, एम, के, क्योंकि मैं बी, टी, एम, के से व्युत्पन्न हो सकता है, के (यह साबित करना आसान नहीं है, सबूत को पहले बी, टी, एम से निकाला जाता है और फिर I = लिया जाता है) SKK।)

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