डेटा संरचना समरूपता है


20

अस्वीकरण: मैं सीएस सिद्धांतकार नहीं हूं।

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

क्या अधिक प्रतिबंधात्मक (लेकिन अधिक उपयोगी) परिभाषा है? (या यदि नहीं, तो क्यों?) क्या "निर्मित डेटा संरचनाओं" की श्रेणी की एक विहित परिभाषा है?

जवाबों:


16

ऐसी कोई श्रेणी विहित नहीं है, इसी कारण से गणना की कोई विहित श्रेणी नहीं है। हालांकि, डेटा संरचनाओं पर बड़े और उपयोगी बीजीय संरचनाएं हैं।

अधिक सामान्य ऐसी संरचनाओं में से एक, जो अभी भी उपयोगी है, दहनशील प्रजातियों का सिद्धांत है। एक प्रजाति है एक फ़नकार , जहां बी उनके बीच परिमित सेट और जीवों की श्रेणी है। आप प्रजातियों के बारे में सोच सकते हैं स्थानों के सार सेट द्वारा अनुक्रमित संरचनाओं के परिवार के रूप में। यह बी पर फफूंदी की व्याख्या करता है - ऐसे परिवारों को अमूर्त लेबल का नाम बदलने के संबंध में अपरिवर्तनीय होना चाहिए। फिर, प्रजातियों की गणना मूल रूप से फंक्शनल स्तर पर फ़ंक्शन विधियों को उत्पन्न करने के लिए, गिनती के बजाय डेटा संरचनाओं के सेट उत्पन्न करने के लिए।F:BBBB

एक प्रोग्रामिंग भाषा में लागू किए गए इस सिद्धांत को देखने के लिए, आप ब्रेंट यॉर्गी के हास्केल संगोष्ठी के पेपर, प्रजाति और फंक्शंस और प्रकार पढ़ सकते हैं , ओह माय ! । मुझे लगता है कि ऋषि के पास एक प्रजाति पैकेज भी है, हालांकि यह प्रोग्रामिंग के बजाय कंप्यूटर बीजगणित की ओर उन्मुख है।


14

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

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

Holcombe द्वारा बीजगणितीय ऑटोमेटा थ्योरी पर एक पाठ्य पुस्तक में निम्नलिखित दिलचस्प उद्धरण हैं (पृष्ठ 42)।

कई अन्य परिणाम होमोमोर्फिज्म और उद्धरणों से संबंधित हैं ... जबकि वे स्वतंत्र बीजीय हित के हैं, लेकिन वे अभी तक ऑटोमेटा और संबंधित क्षेत्रों के अध्ययन में विशेष रूप से उपयोगी साबित नहीं हुए हैं। वास्तव में, मशीनों का बीजगणितीय सिद्धांत एक महत्वपूर्ण सम्मान में अन्य बीजगणितीय सिद्धांतों में ली गई दिशा से हटता है ... ऑटोमेटा सिद्धांत में जोर हालांकि, नहीं है [पर] क्या मशीनों "जैसा दिखता है" लेकिन वे "क्या कर सकते हैं" । हम दो मशीनों को बहुत निकटता से संबंधित मानेंगे यदि वे दोनों "एक ही काम" कर सकते हैं, लेकिन वे बीजगणितीय समरूपता नहीं हो सकते हैं!


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

उदय, क्या आप इस बारे में कुछ और विस्तार कर सकते हैं कि श्रेणी सिद्धांत (अस्मितावाद) कैसे एक अच्छा फिट नहीं है?
ल्यू

@ WereukaszLew, यदि श्रेणी सिद्धांत एक अच्छा फिट था, तो आप यह कह पाएंगे कि सभी प्रकार के लंबो कैलकुलस प्रकार के प्रकार के साथ एक प्रकार चर एक्स फंक्शंस हैं। लेकिन वे नहीं हैं, उदाहरण के लिए, एफ (एक्स) = (एक्स -> एक्स) एक फ़नकार नहीं है।
उदय रेड्डी

7

यह पूछने के बजाय कि हम आइसोमोर्फिज्म की धारणा को कैसे मजबूत / कमजोर कर सकते हैं, एक और संभावना यह पूछने की है: कम्प्यूटेशनल संरचनाओं के बीच तुल्यता की सही धारणा क्या है, और इस धारणा को अंतर्निहित गणितीय संरचना क्या है।

संरचनाओं का एक बड़ा परिवार कोलजेब्रा है। सूचियों, पेड़ों, ऑटोमेटा जैसी संरचनाएं, दोनों परिमित और अनंत किस्म को कोलजेब्रस के रूप में वर्णित किया जा सकता है। फिर हम कोलजब्रस के बीच समरूपता या समरूपता का अध्ययन कर सकते हैं।

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


2

डिस्क्लेमर: मुझे यकीन नहीं है कि मुझे आपका सवाल समझ में आया। क्या आप दो डेटा संरचनाओं के बीच या दो "डेटा संरचना विनिर्देशों" के बीच समरूपता के बारे में बात करना चाहते हैं? (इन्हें कभी-कभी सार डेटा प्रकार कहा जाता है।)

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

सेल जांच मॉडल की जानकारी के लिए, उदाहरण के लिए मिल्टर्सन का सर्वेक्षण देखें। ( सेल जांच जटिलता: एक सर्वेक्षण )

यदि आप डेटा संरचनाओं के बीच समरूपता को परिभाषित करने की आवश्यकता के बारे में अधिक कहते हैं, तो अधिक सहायता प्रदान करना संभव हो सकता है। बेझिझक मुझे मैसेज करें।

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