नंद द्वार और ट्यूरिंग पूर्णता के बीच संबंध


14

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


1
"आधुनिक कंप्यूटर नंद द्वार से बने हैं" मुझे पूरा यकीन है कि यह गलत है। डिजिटल डिजाइनों के लिए विशिष्ट सेल पुस्तकालयों में दसियों शामिल हैं जब गेट के सौ नहीं होते हैं और वे फ़ंक्शन (एओआई गेट्स के लिए) के साथ-साथ प्रशंसक और प्रशंसक-आउट में भिन्न होते हैं।
एपीग्रामग्राम

आप सही हैं, मेरा एक सैद्धांतिक अर्थ है कि सभी डिजिटल तर्क NANDS से बन सकते हैं, जिन्हें कार्यात्मक रूप से पूर्ण माना जाता है
bsm

जवाबों:


9

वास्तव में बहुत कम संबंध है। पूरी तरह से समझने के लिए, मुझे कार्यक्रमों और सर्किटों के बीच संबंध की व्याख्या करने दें ।

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

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

हम एक प्रोग्राम को एक सर्किट P n में बदल सकते हैं जो P की लंबाई n के इनपुट पर अनुकरण करता है । सर्किट पी 0 , पी 1 , पी 2 के इसी क्रमPPnPn मनमाना नहीं है - वे सब किया जा सकता हैका निर्माणएक कार्यक्रम से है जो दिए गए n आउटपुट पी एन । हम सर्किट के ऐसे अनुक्रम को एकसमानसर्किट कहते हैं (भ्रामक रूप से, हम अक्सर अनुक्रम को "अनिश्चित एन के लिए" सिंगल "सर्किट पी एन के रूप में सोचते हैं)।P0,P1,P2,nPnPnn

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

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


क्या आप समझा सकते हैं "सर्किट का एक क्रम बूलियन, कंप्यूटेबल या अनप्लग करने योग्य स्ट्रिंग्स से हर फ़ंक्शन की गणना कर सकता है"? क्या इनकंप्यूटिबल (ट्यूरिंग-पूर्णता के दृष्टिकोण से) की गणना करने की उनकी क्षमता इनपुट आकार पर प्रतिबंध से आती है?
bsm

2
@ एलएसएम सर्किट के एक क्रम की गणना कर सकते हैं पर कोई प्रतिबंध नहीं हैं। लंबाई के इनपुट के लिए आप जो भी चाहें चुन सकते हैं और आप प्रत्येक n के लिए स्वतंत्र रूप से ऐसा कर सकते हैंnn
युवल फिल्मस

क्या आप उस पर, @YuvalFilmus को उजागर कर सकते हैं? यह अजीब लगता है कि कोल्मोगोरोव जटिलता जैसे एक असुविधाजनक फ़ंक्शन अचानक सर्किट का उपयोग करके "कम्प्यूटेबल" होगा।
Cort Ammon

2
@CortAmmon हर परिमित कार्य कम्प्यूटेशनल है। किसी भी (स्ट्रिंग) समारोह के लिए , लंबाई के तार करने के लिए अपने प्रतिबंधfn

3

आप वास्तव में सही हैं। एक संयोजन तर्क सर्किट एक परिमित ऑटोमेटन के बराबर है। नंद द्वार उन्हें अधिक शक्तिशाली नहीं बनाते हैं; इनका उपयोग किया जाता है क्योंकि यह केवल एक डिजिटल गेट के साथ एक डिजिटल लॉजिक सर्किट बनाने के लिए सस्ता है, क्योंकि यह सभी विभिन्न फाटकों के साथ इसे बनाना है। वास्तव में, एक NAND गेट का निर्माण सिर्फ AND गेट और NOT गेट से किया जा सकता है। फ्लिप-फ्लॉप सर्किट ट्यूरिंग-पूरा करते हैं। यहाँ एक महत्वपूर्ण कुंजी है:

संयुक्त सर्किट ~ परिमित ऑटोमेटा ~ नियमित भाषा ~ नियमित अभिव्यक्ति ~ प्रस्तावना पथरी ~ सीधी रेखा कार्यक्रम

μ

यदि आप और अधिक सीखना चाहते हैं, तो एक बहुत अच्छी पुस्तक है जिसे आप पीडीएफ फॉर्म में मुफ्त में डाउनलोड कर सकते हैं जो यह सब समझाती है:

https://cs.brown.edu/people/jes/book/pdfs/ModelsOfComputation.pdf

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