खैर, संबंधपरक समतावाद जॉन रेनॉल्ड्स द्वारा पेश किए गए सबसे महत्वपूर्ण विचारों में से एक है, इसलिए यह बहुत आश्चर्यचकित नहीं होना चाहिए कि यह जादू जैसा दिखता है। यहाँ एक परियों की कहानी है कि उसने कैसे इसका आविष्कार किया होगा।
मान लें कि आप इस विचार को औपचारिक रूप देने की कोशिश कर रहे हैं कि कुछ फ़ंक्शंस (पहचान, नक्शा, गुना, सूचियों का उलटफेर) "कई प्रकारों पर उसी तरह" कार्य करते हैं, अर्थात, आपके पास पैरामीट्रिक बहुरूपता के बारे में कुछ सहज विचार हैं, और आपके पास कुछ नियम हैं इस तरह के नक्शे बनाने के लिए, अर्थात्, बहुरूपी λ -कुलस या इसके कुछ प्रारंभिक संस्करण। आप ध्यान दें कि भोले सेट-सिद्धांत संबंधी शब्दार्थ काम नहीं कर रहे हैं।
उदाहरण के लिए, हम प्रकार घूरने ∀X:Type.X→X,
जिसमें केवल पहचान मानचित्र होना चाहिए, लेकिन भोले सेट-सिद्धांत संबंधी शब्दार्थ λ X : T y p e जैसे अवांछित कार्यों की अनुमति देता है
। λ ए : एक्स । i f ( X = { 0 , 1 } ) t h e n 0 e l s e e a ।λX:Type.λa:X.if (X={0,1}) then 0 else a.
इस तरह की चीजों को खत्म करने के लिए, हमें कार्यों पर कुछ और शर्तें लगाने की जरूरत है। उदाहरण के लिए, हम कुछ डोमेन सिद्धांत की कोशिश कर सकते: प्रत्येक सेट से लैस X आंशिक आदेश के साथ ≤X और अपेक्षा करते हैं कि सभी कार्यों एक लय हो। लेकिन यह काफी कटौती नहीं करता है क्योंकि X आधार पर उपरोक्त अवांछित फ़ंक्शन या तो निरंतर या पहचान है , और वे मोनोटोन मैप हैं।
≤
और फिर आप दो बातें नोटिस करते हैं:
- ≤
- आपके द्वारा देखे जाने वाले प्रत्येक विशेष अवांछित उदाहरण के लिए, आप एक ऐसा संबंध ढूंढ सकते हैं, जो इसे समाप्त कर दे, लेकिन ऐसा कोई संबंध नहीं है जो इन सभी को समाप्त करता हो।
तो, आपने शानदार सोचा है कि वांछित कार्य वे हैं जो सभी संबंधों को संरक्षित करते हैं , और संबंधपरक मॉडल का जन्म होता है।