भोले सेट सिद्धांत पर आधारित प्रकार प्रणाली


11

जैसा कि मैं समझता हूं, कंप्यूटर विज्ञान में डेटा प्रकार रसेल के विरोधाभास जैसी चीजों के कारण सेट सिद्धांत पर आधारित नहीं हैं, लेकिन जैसा कि वास्तविक विश्व प्रोग्रामिंग भाषाओं में हम ऐसे जटिल डेटा प्रकारों को व्यक्त नहीं कर सकते हैं जैसे "सेट जिसमें स्वयं शामिल नहीं है", क्या हम कर सकते हैं यह कहना कि अभ्यास प्रकार इसके सदस्यों का एक अनंत सेट है जहां उदाहरण सदस्यता को इस प्रकार / सेट (कुछ गुणों, विधियों के अस्तित्व) के लिए आंतरिक सुविधाओं की संख्या से परिभाषित किया गया है? यदि नहीं, तो प्रतिरूप क्या होगा?


1
रसेल के विरोधाभास का इससे सीधे तौर पर कोई लेना-देना नहीं है।
बाउर

जवाबों:


11

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

अधिक सटीक होना, एक रिकर्सिवली निर्धारित मान के प्रकार (जहां आम तौर पर एक समारोह प्रकार है) एक निश्चित बिंदु समीकरण द्वारा परिभाषित किया गया है जहां कर सकते हैं कोई भी कार्यक्रम हो। यदि सेट के रूप में व्याख्या की है तो हम हर उम्मीद करेंगे एक निश्चित बिंदु है। लेकिन इस संपत्ति के साथ एकमात्र सेट सिंगलटन है।vττv=Φ(v)Φ:τττTf:TTT

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

एलेक्स सिम्पसन, कम्प्यूटेशनल सेट के सिद्धांतों में पुनरावर्ती प्रकारों के लिए कम्प्यूटेशनल पर्याप्तता , शुद्ध और लागू तर्क के इतिहास में, 130: 207-275, 2004।


7

सिमेंटिक सबटाइपिंग एक अंतर्निहित सेट थेरैटिक प्रकार की व्याख्या पर आधारित है, जहां सबटाइपिंग सबसेट है। मेरा मानना ​​है कि मूल कार्य , XML प्रोसेसिंग लैंग्वेज CDuce के संदर्भ में Castagna द्वारा किया गया है। प्रकार XML दस्तावेजों के सेट के अनुरूप हैं। तब से विचारों को -calculus और एक पथरी वस्तुओं और कक्षाओं में पुन: लागू किया गया है ।π


1
कास्टागना के अग्रदूत हैं। एक लंबे समय से पहले ही लोग पहले से ही प्रति मॉडल में घटाव मॉडलिंग के लिए सबसेट संबंध का इस्तेमाल करते थे। एक प्रकार एक आंशिक समतुल्य संबंध (प्रति) से मेल खाता है और उपप्रकार केवल ऐसे संबंधों का समावेश है।
लेडी बाउर

4

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

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

[[α.αα]]=ΠXU.XX

हालांकि, ध्यान दें कि प्रकार की इस व्याख्या कार्यों कि के प्रत्येक तत्व में कुछ अलग करना भी शामिल है - हम पर शाखा कर सकते हैं में एक अलग समारोह देने के लिए प्रत्येक के लिए । इसके विपरीत, बहुरूपिक प्रकार में केवल पहचान फ़ंक्शन होता है, क्योंकि केवल संचालन भाषा प्रोग्रामिंग आपको टाइप पर प्रदर्शन करने देगी जो सभी प्रकार के काम करते हैं।यू एक्स एक्स एक्स यू αUUXXXUα

इसलिए यह शब्दार्थ (उदाहरण के लिए) इस तथ्य के आधार पर किसी भी अनुकूलन को सही नहीं ठहरा सकता है कि पहचान केवल निवासी है ।α.αα


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

सैम, मुझे आपकी बात समझ में नहीं आती: यह पढ़ता है कि आप पूरी तरह से मेरे साथ सहमत हैं! मानक सेट-सिद्धांत संबंधी शब्दार्थ यह साबित नहीं कर सकता है कि उस प्रकार का एकमात्र निवासी पहचान है, इसलिए आपको एक अलग शब्दार्थ की आवश्यकता है।
नील कृष्णस्वामी

1
@ नील: आपके द्वारा वर्णित समस्या तब भी बनी रहती है जब हम सेट से दूर चले जाते हैं। इसका समाधान कुछ और के साथ सेट की श्रेणी को बदलना नहीं है, बल्कि विभिन्नता को मॉडल करना है। जैसा कि मुझे पता है कि आप जानते हैं , अर्थात्, संबंधपरक समालोचना का उपयोग करना है। लेकिन तब चीजें सेट में भी काम करती हैं, अगर मैं गलत नहीं हूं। सेट के साथ "केवल" समस्या निश्चित बिंदुओं की कमी है (दोनों पुनरावर्ती मूल्यों और पुनरावर्ती प्रकार के स्तर पर)।
लेडी बाउर

1
आह, मुझे लगता है कि मैं समझता हूं कि मैं आपको और सैम को भ्रमित क्यों कर रहा हूं! मेरा निश्चित रूप से यह मतलब नहीं है कि यह एक भोली सेट-सिद्धांत मॉडल का उपयोग करने के लिए अस्वाभाविक है, बस यह मॉडल अक्सर अनपेक्षित उत्तर देता है - यही कारण है कि मैंने "कठिन उपयोग करने के लिए" कहा, और "गलत" नहीं। आप निश्चित रूप से एक उपयोगी मॉडल (यानी, संबंधपरक रूप से) बनाने के लिए सेट का उपयोग कर सकते हैं, लेकिन फिर हम सवाल में सुझाए गए फैशन में टाइप-ए-सेट के रूप में घुसपैठ नहीं कर रहे हैं। (इसके अलावा, जैसा कि आप जानते हैं, impredicative polymorphism के साथ कोई भोली मॉडल नहीं है, लेकिन पारमार्थिकता अभी भी अर्थपूर्ण रूप से सार्थक है।)
नील कृष्णस्वामी

1
मुझे लगता है कि आपकी बात शब्दार्थ के बीच के पत्राचार के बारे में है - एक सेट-सिद्धांत संबंधी शब्दार्थ प्रणाली एफ-शैली के बहुरूपता के लिए एक अच्छा फिट नहीं है, क्योंकि इसमें अकथनीय निवासी हैं। लेकिन यह सेट-थ्योरिटिक शब्दार्थ के खिलाफ एक बिंदु नहीं है , बस एक बयान है कि हमारे शब्दार्थ को सहमत होना चाहिए। यदि हमारी भाषा की सुविधा देता है हमें कार्यों के बारे में आप बात कर रहे हैं व्यक्त (टाइप रैकेट करता है, उदाहरण के लिए) के रूप में है, तो हम कर सकते हैं चाहता हूँ सेट सैद्धांतिक अर्थ विज्ञान।
सैम टोबिन-होचस्टाट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.