डिपेंडेंट प्रकार, शोधन प्रकार और होरे लॉजिक के बीच अंतर


18

मैं थोड़ा निर्भर प्रकार के सिद्धांत को जानता हूं। विकिपीडिया से:

एक आश्रित प्रकार एक प्रकार है जिसकी परिभाषा एक मूल्य पर निर्भर करती है।

और मेरे प्रकार सिद्धांत पाठ्यक्रम से मुझे याद है कि एक निर्भर प्रकार है:

एक प्रकार से अनुक्रमित प्रकार के परिवार।

लेकिन मुझे आश्रित प्रकार और शोधन के प्रकार और होरे तर्क के बारे में भ्रम है।

क्योंकि डिपेंडेंट बनाम शोधन प्रकार से शोधन प्रकार एक होरे तर्क की तरह दिखता है। और अधिक शक्ति शोधन के प्रकार के अलावा राज्य को समर्पित करने की अनुमति देने की अनुमति देता है जिसे संतुष्ट होना पड़ता है (जो लगभग होरे लॉजिक जैसा दिखता है)?

परिशोधन प्रकारों की तुलना में आश्रित प्रकार जो अतिरिक्त चीज देता है? और शोधन प्रकार + सत / बाधा सॉल्वर की तुलना में निर्भर प्रकार अधिक शक्तिशाली है।

क्या कोई उदाहरण के साथ हवा को साफ कर सकता है।

जवाबों:


18

हाल ही में पॉल-एन्ड्रे मेलीएसे और नोम ज़िलबर्गर द्वारा काम किया गया है जो इसकी खोज करता है। विशेष रूप से कागजात में फ़नकार टाइप रिफाइनमेंट सिस्टम और टाइप रिफाइनमेंट सिस्टम के लिए एक इस्बेल ड्यूलिटी प्रमेय हैं । पहले एक वार्ता का एक वीडियो भी है।

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

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

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

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

होरे तिकड़ी के लिए, वे एक प्रकार की शोधन प्रणाली हैं। वे वास्तव में पहले पेपर में एक प्रकार के शोधन प्रणाली के उदाहरण के रूप में उपयोग किए जाते हैं। हालाँकि, होरे टाइप थ्योरी कुछ ऐसा देती है, जिसे गैर-शोधन प्रकार की प्रणाली के रूप में देखा जा सकता है, जिसमें होरे ट्रिपल शामिल हैं।

विभिन्न प्रणालियों की "शक्ति" के बारे में जवाब देने के लिए, आपको एक विशेष (निर्भर) प्रकार की प्रणाली (एस) और एक विशेष (परिवार) शोधन प्रकार प्रणाली (ओं) को निर्दिष्ट करने की आवश्यकता है। "आश्रित प्रकार की प्रणाली" शब्द बहुत ही व्यापक प्रकार की प्रणालियों को शामिल करता है, और "प्रकार शोधन प्रणाली" और भी व्यापक है। फिर भी, शब्द परस्पर अनन्य नहीं हैं, इसलिए यह "आश्रित प्रकार की प्रणालियों" और "शोधन प्रकार प्रणालियों" के बीच तुलना नहीं होगी। हालाँकि, अगर "आश्रित प्रकार की प्रणाली" के द्वारा आप कोक की तरह कुछ सोच रहे हैं , और "शोधन प्रकार प्रणाली" के लिए कुछ तरल जैसेतो यह बहुत एक तरफा है। कोक को आम तौर पर व्यवहार में गणित के लगभग सभी को संभालने के लिए पर्याप्त शक्तिशाली के रूप में देखा जाता है; आप सचमुच लागू कर सकते हैं और कोक के भीतर एक एसएमटी सॉल्वर को सही साबित कर सकते हैं और फिर उसका उपयोग कर सकते हैं; और सबसे उप-प्रकार के बहुत करीबी एनालॉग को तैयार किया जा सकता है। (एनयूपीआरएल का शाब्दिक रूप से सबसेट प्रकार होता है।) दूसरी तरफ, एसएमटी सॉल्वर आम तौर पर निर्णायक सिद्धांतों तक सीमित होते हैं जहां कॉक की ऐसी कोई सीमा नहीं है; और कई प्रकार जैसे कि लिक्विड टाइप्स में विधेय को निर्दिष्ट करने के लिए एक सीमित और गैर-एक्स्टेंसिबल भाषा है। (बेशक, "निर्भर प्रकार प्रणाली" से आप डिपेंडेंट एमएल का मतलब कर सकते हैं , और "प्रकार शोधन प्रणाली" NuPRL [जो एक आश्रित प्रकार की प्रणाली भी है] जो दूसरे तरीके से एकतरफा होगी।)


1
बहुत बहुत धन्यवाद, सच में मदद की। हाँ प्रैक्टिस प्रोग्रामिंग (popl '99) में डिपेंडेंट टाइप्स पढ़ रहा था और असमंजस में पड़ गया। चीयर्स।
पुष्पा

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