2010-06-26 29 views
10

मैं सिर्फ श्रेणी सिद्धांत के बारे में पढ़ना शुरू कर रहा हूं, और अगर कोई सीएस contravariance/covariance और श्रेणी सिद्धांत के बीच कनेक्शन समझा सकता है तो इसकी बहुत सराहना करेंगे। कुछ उदाहरण श्रेणियां क्या होंगी (यानी उनकी वस्तुएं/morphisms क्या हैं?)? अग्रिम में धन्यवाद?कोई व्यक्ति प्रकार covariance/contravariance और श्रेणी सिद्धांत के बीच कनेक्शन समझा सकता है?

उत्तर

8

$ डी $ करने के लिए $ सी $ से एक contravariant functor एक सामान्य रूप में सटीक एक ही बात है (यानी covariant) $ C $ से $ D^{op} $ से मज़ेदार, जहां $ D^{op} $ $ 12 $ opposite category $ D $ है। तो सबसे पहले विपरीत श्रेणियों को समझना सबसे अच्छा है - तो आप स्वचालित रूप से contravariant functors समझ जाएगा!

contravariant functors नहीं, सीएस में सभी कि अक्सर आते हैं, हालांकि मैं दो अपवाद के बारे में सोच सकते हैं:

  1. आप subtyping के संदर्भ में contravariance के बारे में सुना हो सकता है। हालांकि यह तकनीकी रूप से एक ही शब्द है, कनेक्शन वास्तव में वास्तव में कमजोर है। ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में, कक्षाएं आंशिक क्रम बनाती हैं; प्रत्येक आंशिक क्रम "बाइनरी होम-सेट" वाली एक श्रेणी है - किसी भी दो ऑब्जेक्ट्स $ ए $ और $ बी $ दिए गए हैं, बिल्कुल एक मॉर्फिज्म $ ए \ बी $ iff $ ए \ leq B $ (दिशा को ध्यान दें; यह थोड़ा भ्रमित अभिविन्यास उन कारणों के लिए मानक है जो मैं यहां समझाऊंगा) और अन्यथा कोई रूप नहीं है।

    पैरामाइज्ड प्रकार, जैसे स्कैला का आंशिक कार्य [-ए, यूनिट] इस साधारण श्रेणी से खुद को मज़ेदार हैं ... हम आम तौर पर उन वस्तुओं पर ध्यान केंद्रित करते हैं जो वे ऑब्जेक्ट्स के लिए करते हैं: कक्षा X, आंशिक समारोह [एक्स, यूनिट] एक वर्ग भी है। लेकिन मकसद भी morphisms को संरक्षित करते हैं; इस मामले में यदि हमारे पास पशु का एक उप-वर्ग कुत्ता था, तो हमारे पास एक मस्तिष्क कुत्ता $ $ से $ पशु होगा, और मज़ेदार इस मोर्फिज्म को संरक्षित रखेगा, जिससे हमें एक मोर्फिज़्म आंशिक कार्य [पशु, इकाई] $ \ $ $ आंशिक कार्य [कुत्ता, यूनिट], हमें बता रहा है कि आंशिक कार्य [पशु, इकाई] आंशिक कार्य [कुत्ता, इकाई] का एक उप-वर्ग है। यदि आप इसके बारे में सोचते हैं, तो यह समझ में आता है: मान लें कि आपके पास ऐसी स्थिति है जहां आपको कुत्ते पर काम करने वाले फ़ंक्शन की आवश्यकता होती है। एक समारोह जो सभी जानवरों पर काम करता है निश्चित रूप से वहां काम करेगा!

    उस ने कहा, आंशिक रूप से आदेशित सेटों के बारे में बात करने के लिए पूर्ण-श्रेणी श्रेणी सिद्धांत का उपयोग करना समय-समय पर ओवरकिल है।

  2. कम आम है, लेकिन वास्तव में श्रेणी सिद्धांत का उपयोग करता है: श्रेणी प्रकार (हास्क) पर विचार करें जिनकी वस्तुएं हास्केल प्रोग्रामिंग भाषा के प्रकार हैं और जहां एक मॉर्फिज्म $ \ tau_1 \ to \ tau_2 $ प्रकार का एक कार्य है \ tau_1 $ -> $ \ tau_2 $। एक श्रेणी निर्णय (हास्क) भी है, जिनकी ऑब्जेक्ट्स टाइपिंग निर्णय $ \ tau_1 \ vdash \ tau_2 $ की सूची हैं और जिनकी morphisms एक सूची में सभी निर्णयों के सबूत हैं, जो कि सूची में अन्य सूची के निर्णय का उपयोग करते हैं। (सबूत

 
    B |- Int 
    ---------- 
     ...... 
    ---------- 
    A |- Int 

जो एक आकारिता $ है के लिए $ बी को एक \: वहाँ निर्णय (Hask) के प्रकार (Hask) से एक functor जो एक प्रकार (Hask) -morphism $ च लेता है बी \ vdash Int) \ to (ए \ vdash Int) $ - दिशा में परिवर्तन की सूचना दें।असल में यह क्या कह रहा है कि यदि आपके पास एक ऐसा फ़ंक्शन है जो ए को बी में बदलता है, और टाइप बी के एक फ्री वेरिएबल एक्स के साथ टाइप इंट की अभिव्यक्ति है, तो आप इसे "x = fy in let" के साथ लपेट सकते हैं। .. "और अभी भी इंट टाइप की अभिव्यक्ति पर पहुंचें, लेकिन जिसका केवल फ्री वैरिएबल $ ए $, $ B $ नहीं है।

5
+0

वास्तव में बहुत अच्छा है। साझा करने के लिए धन्यवाद। मुझे आशा है कि वे कुछ दिन एन के साथ आएंगे! :) –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^