SAT के लिए न्यूनतम सर्किट खोजने की जटिलता के बारे में क्या जाना जाता है?


23

न्यूनतम सर्किट को खोजने की जटिलता के बारे में क्या जाना जाता है जो सैट की लंबाई तक गणना करता है ? n

औपचारिक रूप से: एक फ़ंक्शन की जटिलता क्या है, जिसे इनपुट के रूप में दिया गया है, न्यूनतम सर्किट सी को ऐसे किसी भी सूत्र के लिए is के साथ ? φ | n , सी ( φ ) = एस टी ( φ ) ?1nCφ|φ|nC(φ)=SAT(φ)

(मैं विशेष रूप से निचले सीमा में रुचि रखता हूं।)

अनुभवहीन नियतात्मक एल्गोरिथ्म (गणना सैट लंबाई करने के लिए जानवर बल ऊपर से , तो सभी सर्किट आकार के क्रम में जब तक आप एक है कि सही ढंग से सैट लंबाई अप करने के लिए गणना करता है खोजने के लिए प्रयास करें n लेता है) 2 हे ( एन ) सैट गणना करने के लिए समय है, और फिर एक अतिरिक्त सर्किट को खोजने के लिए एक अतिरिक्त O ( 2 n 2 M ) का समय, जहां M न्यूनतम सर्किट का आकार है। nn2O(n)O(2n2M)M

क्या कोई नियतात्मक एल्गोरिथ्म है जो SAT के लिए न्यूनतम सर्किट पाता है जिसका रनिंग टाइम , जहां एम न्यूनतम सर्किट का आकार है? या इससे कुछ जटिलता गिरती है?o(2n2M)M


यहाँ दो चीजें हैं, जो कि मेरे प्रश्न से संबंधित हैं, निश्चित रूप से वह नहीं है जो मैं पूछ रहा हूं (जो कि, मुझे लगता है, मुझे खोज करने में थोड़ी मुश्किल क्यों हुई):

  • सर्किट कम से कम समस्या: एक सर्किट (या इसकी सत्य सारणी, या कई अन्य वेरिएंट द्वारा दिए गए फ़ंक्शन f) दिए गए न्यूनतम सर्किट C C को C के समान फ़ंक्शन की गणना करते हुए पाते हैं । यहां तक ​​कि अगर सर्किट कम से कम करना आसान था, तो यह जरूरी नहीं होगा कि उपरोक्त कार्य आसान है, क्योंकि जिस फ़ंक्शन को हम कम से कम करना चाहते हैं उसे भी गणना कर सकते हैं (SAT लंबाई तक एन ) को कठिन माना जाता है, जबकि सर्किट न्यूनतमकरण समस्या में हम कार्य करते हैं कम से कम मुफ्त है (यह इनपुट के रूप में दिया गया है)।CfCCn

  • बनाम पी / पी एल वाई । मेरा सवाल केवल यह नहीं है किन्यूनतम सर्किट काआकार क्याहै; यह अपने आकार की परवाह किए बिना एक न्यूनतम सर्किट खोजने की जटिलता के बारे में है। हम बहुपद समय तो में कम से कम सर्किट गणना कर सकता है जाहिर है अगर एन पी पी / पी एल y (और वास्तव में एन पी पी , के बाद से तो सर्किट परिवार है पी -uniform), लेकिन बातचीत की जरूरत है सच नहीं हो। वास्तव में, मेरा मानना ​​है किइम्मरमैन और महानीसबसे पहले एकअलंकरणका निर्माण करने वाले थे जहाँ एनNPP/polyNPP/polyNPPP लेकिन पी एन पी - अर्थात, एनNPP/polyPNP बहुपद आकार सर्किट है, लेकिन वे बहुपद समय में नहीं पाया जा सकता।NP


आप बिना शर्त कम सीमा चाहते हैं? (बेशक समय जटिलता सैट के सर्किट जटिलता से कम होती है, लेकिन हम अनिवार्य रूप से उत्तरार्द्ध के बारे में कुछ भी ठोस नहीं जानते हैं।)
रियान विलियम्स

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

3
आह, मैं अब समझ गया। यह एक बहुत अच्छा सवाल है। Bshouty एट अल द्वारा SAT सर्किट सीखने के लिए एल्गोरिदम से विचारों का उपयोग करते हुए भोले बंध पर सुधार करना संभव हो सकता है। यदि आपको पहले से ही कुछ आकार तक SAT के लिए एक सर्किट मिल गया है, तो शायद आप बूटस्ट्रैप कर सकते हैं और इसे अधिक कुशलता से बड़े आकार के सर्किट को खोजने के लिए उपयोग कर सकते हैं।
रयान विलियम्स

जवाबों:


12

मान लेते हैं कि कोई SAT को समान रूप से समान रूप से बहुत तेजी से हल नहीं कर सकता है। अर्थात, T (n) में SAT M को हल करने वाला TM M है, और SAT के लिए सबसे छोटे सर्किट का आकार T '(n) है जो T (n) से बहुत छोटा नहीं है (कहते हैं, - विशेष रूप से इस धारण करता है, तो सुलझाने SAT के लिए छोटी से छोटी सर्किट आकार की है 2 Ω ( एन ) जो बहुत अच्छी तरह से सच हो सकता है)।T(n)=poly(T(n))2Ω(n)

तो, आप एक सर्किट द्वारा एम के कुछ विहित सिमुलेशन को चलाकर "लगभग" न्यूनतम सर्किट प्राप्त कर सकते हैं, समय के साथ मूल रूप से इष्टतम (जितना समय आपको आउटपुट लिखने में लगता है)। बस इस कारण से, यह अनुमान लगा रहा हूं कि किसी भी "अच्छी" धारणा के आधार पर इस प्रश्न के लिए कोई कम बाध्य नहीं होगा। हालांकि, मुझे नहीं पता कि वास्तव में न्यूनतम करने के लिए "लगभग न्यूनतम" से कैसे जाना है। ऐसा करने का एक तरीका इस तथ्य का उपयोग करना होगा कि को आकार देने के लिए सर्किट का पता लगाना बहुपदीय पदानुक्रम में एक प्रश्न है,ST(T(n))2o(M)T(n)=2no(1)

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