एक साथ n और इनपुट बिट्स की गणना करने के लिए आवश्यक बाइनरी गेट्स की संख्या


16

एक साथ इनपुट बिट्स की गणना करने के लिए आवश्यक बाइनरी गेट्स की न्यूनतम संख्या क्या है ? तुच्छ ऊपरी बंध । मेरा मानना ​​है कि यह इष्टतम है, लेकिन इसे कैसे साबित किया जाए? मानक गेट उन्मूलन तकनीक यहां काम नहीं करती है क्योंकि इनपुट वेरिएबल्स में से किसी एक को असाइन करने से आउटपुट में से एक को तुच्छ बनाता है।n2n2

इस समस्या को इंगो वेगेनर की पुस्तक "बूलियन फंक्शंस की जटिलता" में एक व्यायाम 5.12 के रूप में भी दिया गया है: "Let । उन्मूलन विधि से, कोई भी आकार निचली सीमा को सिद्ध कर सकता है। बड़ा निचला सीमा सिद्ध करने का प्रयास करें। "fn(x)=x1xnx¯1x¯nn+Ω(1)


1
@Ryan: सवाल AND के बारे में नहीं है बल्कि AND और OR के बारे में है । मैं हालांकि साशा के सवाल का जवाब नहीं जानता।
त्सुयोशी इतो

1
@TsuyoshiIto धन्यवाद, किसी तरह मैं इसे गलत तरीके से पार्स करने में कामयाब रहा। यह निश्चित रूप से एक nontrivial समस्या है - एक व्यक्ति से अधिक लाभ प्राप्त करने के लिए अन्य प्रकार के फाटकों का उपयोग करने की कल्पना कर सकता है । 2n2
रियान विलियम्स

2
@ साशा, क्या आपने अपने पहले के कुछ कागजात की तरह छोटे उदाहरण (जैसे ) में सैट सॉल्वर लगाने की कोशिश की है ? n=4
रयान विलियम्स

2
@ रयान हाँ, ज़रूर। क्या हम जानते हैं कि है , सी 4 = 5 , सी 57 । यह पुस्तक से फ़ंक्शन के लिए है (यह 1 iff सभी n इनपुट बिट्स बराबर हैं)। यह 2 n - 3 की तरह बढ़ता है । और के आकार के एक सर्किट 2 n - 3 निर्माण करने के लिए आसान है: पहली गणना एक्स मैंएक्स मैं + 1 सभी के लिए मैं = 1 , ... , n -C3=3C4=5C571n2n32n3xixi+1 ( ( n - 1 ) द्वार), और फिर उनमें से संयोजन के रूप गणना ( ( n - 2 ) फाटकों)। i=1,,n1(n1)(n2)
अलेक्जेंडर एस। कुलिकोव

1
@Tsuyoshi: मुझे लगता है कि फाटकों साशा का कार्य करते है प्रश्न के दूसरे समारोह ( n ( x ) = एक्स 1 ... एक्स एनˉ एक्स 1 ... ˉ एक्स एन ) के साथ बनाया जा सकता है कि एन - 1 XNOR गेट्स ( x i , x i + 1 पर लागू ) और n - 2 और XNORs के लिए लगाए गए गेट्स। 2n3fn(x)=x1xnx¯1x¯nn1xi,xi+1n2
मार्जियो डी बियासी

जवाबों:


14

ब्लम एंड सीसेन का यह पेपर उपयोगी हो सकता है:

एन.बलम, एम। सीनन। AND और NOR के एक साथ संगणना के लिए सभी इष्टतम नेटवर्क की विशेषता । एक्टा इन्फ। 21: 171-181 (1984)

मैंने सोचा था कि है कि के लिए 2 n - c बाध्य ब्लम और Seysen के तरीकों का उपयोग कर प्राप्त किया जा सकता के निचले हिस्से, लेकिन ऐसा लगता है यह स्थिति नहीं है।x1xnx¯1x¯n 2nc


1
क्या ब्लम और सीसेन पेपर का एक सार्वजनिक पीडीएफ संस्करण उपलब्ध है?
Marzio De Biasi

@ व्लादिमीर, संदर्भ के लिए धन्यवाद! मैं यह जांचने की कोशिश करूंगा कि क्या लेख को खोजने पर उनके तरीके इस मामले में लागू हैं।
अलेक्जेंडर एस। कुलिकोव

3
@ व्लादिमीर, फिर से शुक्रिया! वास्तव में, इस पत्र में मेरे प्रश्न का उत्तर बिल्कुल av और भी है: यह कहता है कि और या एक साथ गणना करने के लिए आवश्यकता है और इस आकार के किसी भी सर्किट की गणना और AND स्वतंत्र रूप से (यह दिलचस्प है!)। यह भी दिखाने के लिए मुश्किल नहीं है कि सी ( n ) सी ( एक एन डी , हे आर ) - सी 2 n - सी '2n2C(fn)C(AND,OR)c2nc
अलेक्जेंडर एस। कुलिकोव

@ साशा, हां, मैंने इस साधारण निर्माण को याद किया। चीजों को स्पष्ट करने के लिए, समाचार पत्र में और और न ही कार्यों में माना जाता है, इसलिए के लिए AND और OR हम मिल कम एक गेट बदलकर और के लिए बाध्य एक्स 1 ... एक्स एनˉ एक्स 1 ... ˉ एक्स एन --- 2 n - 52n2x1xnx¯1x¯n2n5
व्लादिमीर लिसिकोव

1
बस एक अनुस्मारक @SashaK। यदि आपको उत्तर पसंद है, तो कृपया वोट संख्या के नीचे टिक मार्क पर क्लिक करके इसे "स्वीकार" करें।
सुरेश वेंकट

3

आपका प्रश्न न्यूनतम संख्या की तुलना के साथ-साथ किसी सूची की न्यूनतम और अधिकतम गणना के बारे में जाने-माने प्रश्न से संबंधित है। उस मामले में जवाब है 3n/2

ऊपरी बाध्यता को साबित करने वाला चतुर एल्गोरिथ्म एक ही बाउंड के साथ AND / OR सर्किट का अनुवाद करता है, क्योंकि तुलनाओं में से एक न्यूनतम और अधिकतम दोनों की गणना करता है।

हालाँकि, निचला बाउंड (एक प्रतिकूल तर्क द्वारा दिया गया) अनुवाद करने के लिए लगता है, कम से कम मोनोटोन सर्किट के मामले में (क्योंकि एंड / या सर्किट अधिकतम / मिनट एल्गोरिथ्म में अनुवाद करता है)। यह । शायद विरोधी तर्क का विश्लेषण करके एक तंग निचली सीमा प्राप्त की जा सकती है।3n/2

ऊपरी बाउंड "एल्गोरिदम का परिचय" में दिखाई देता है, जहां आप यह भी आसानी से पता लगा सकते हैं कि अधिकतम / मिनट तुलनित्र सर्किट मान्य हैं यदि वे बूलियन इनपुट के लिए काम करते हैं (एक उपयुक्त सीमा का उपयोग करें)। निचली बाउंड को यहां पाया जा सकता है


2
साशा के प्रश्न में ध्यान दें, सर्किट के निर्माण के लिए सभी 2-बिट बुलियन फ़ंक्शन का उपयोग किया जा सकता है।
रयान विलियम्स

हां, यह स्पष्ट नहीं है कि सभी बाइनरी फ़ंक्शन के मामले में निचले बाउंड का अनुवाद कैसे किया जा सकता है।
अलेक्जेंडर एस। कुलिकोव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.