साथ यह समस्या coNP- हार्ड (और इसलिए coNP- पूर्ण) है।k=3
यह साबित करने के लिए, मैं इस समस्या के पूरक के लिए 3-SAT से कम कर दूंगा (दिए गए सर्किट के लिए, सर्किट एक गैर-विशेषण फ़ंक्शन को लागू करता है)।NC03
पहले एक प्रारंभिक परिभाषा जो सहायक होगी:
हम एक लेबल ग्राफ को एक निर्देशित ग्राफ होने के लिए परिभाषित करते हैं, जिनके कुछ किनारों को शाब्दिक रूप से लेबल किया जाता है, इस संपत्ति के साथ कि प्रत्येक शीर्ष पर एक या तो एक आने वाली बढ़त होती है, एक आने वाले किनारे पर लेबल होती है, या दो बिना लेबल वाले आने वाले किनारे होते हैं।
कमी
मान लीजिए कि हमारे पास 3-सैट का फॉर्मूला है, जिसमें एम शामिल है , जिनमें से प्रत्येक में तीन लीटर हैं। पहला कदम ϕ से एक लेबल ग्राफ जी का निर्माण करना है । इस लेबल के ग्राफ में निम्नलिखित गैजेट की एक प्रति है () भयानक आरेख के लिए खेद है) ϕ में प्रत्येक खंड के लिए । L1, L2 और L3 के लेबल वाले तीन किनारों को खंड में शाब्दिक रूप से लेबल किया गया है।ϕmGϕϕ
|
| |
| |
| O<-----\
| ^ |
| | |
| | |
| /----->O |
| | ^ |
| | | |
| | | |
| O O O
| ^ ^ ^
| | | |
| |L1 |L2 |L3
| | | |
| O O O
| ^ ^ ^
| | | |
| | | |
| \------O------/
| ^
| |
| |
| O
| ^
| |
|
गैजेट (प्रत्येक क्लॉज के लिए एक) सभी एक बड़े चक्र में व्यवस्थित होते हैं, जिसमें एक गैजेट के निचले हिस्से को अगले के शीर्ष से जोड़ा जाता है।
ध्यान दें कि गैजेट की यह व्यवस्था वास्तव में एक लेबल ग्राफ का निर्माण करती है (प्रत्येक शीर्ष में 1 या 2 है, जिसमें केवल किनारों के साथ ही 1 इंद्री के लेबल तक ले जाया जा सकता है)।
सूत्र से और लेबल ग्राफ जी (जिसमें से निर्माण किया गया था φ ) हम अगले एक का निर्माण एन सी 0 3 सर्किट (इस कमी समाप्त होगा)। इस सर्किट के लिए इनपुट और आउटपुट की संख्या n + v है जहां n ϕ में चर की संख्या है और v , G में वर्टिस की संख्या है । एक इनपुट और एक उत्पादन में प्रत्येक चर को असाइन किया गया φ और में प्रत्येक शीर्ष करने के लिए जी । तो एक्स में कुछ चर रहा है φϕGϕNC03n+vnϕvGϕGxϕफिर हम के साथ जुड़े इनपुट और आउटपुट बिट्स को x i n और x o u t के रूप में संदर्भित करेंगे । इसके अलावा, यदि एल के साथ एक शाब्दिक है एल = एक्स तो हम परिभाषित एल मैं n = एक्स मैं n और यदि एल के साथ एक शाब्दिक है एल = ¬ एक्स तो हम परिभाषित एल मैं n = ¬ एक्स मैं एन । अंत में, यदि v , G में कुछ शीर्ष हैxxinxoutll=xlin=xinll=¬xlin=¬xinvGफिर हम साथ जुड़े इनपुट और आउटपुट बिट्स के पास भेजेगा के रूप में वी मैं n और वी ओ यू टी ।vvinvout
चार प्रकार के आउटपुट बिट्स हैं:
1) हर चर के लिए में φ , एक्स ओ यू टी = एक्स मैं एन । ध्यान दें कि यह आउटपुट केवल एक इनपुट बिट पर निर्भर करता है।xϕxout=xin
2) हर शिखर के लिए ठीक एक आने वाली बढ़त के साथ लेबल ग्राफ में ( यू , वी ) ऐसी है कि धार लेबल नहीं किया गया है, वी ओ यू टी = वी मैं n ⊕ यू मैं एन । ध्यान दें कि यह आउटपुट केवल दो इनपुट बिट्स पर निर्भर करता है।v(u,v)vout=vin⊕uin
3) हर शिखर के लिए ठीक एक आने वाली बढ़त के साथ लेबल ग्राफ में ( यू , वी ) ऐसी है कि धार लेबल किया गया है एल , वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∧ एल मैं n ) । ध्यान दें कि यह आउटपुट केवल तीन इनपुट बिट्स पर निर्भर करता है क्योंकि l i n केवल x i n पर निर्भर करता है जो कि शाब्दिक l में चर x का उपयोग किया जाता है ।v(u,v)lvout=vin⊕(uin∧lin)linxinxl
4) हर शिखर के लिए ठीक दो भेजे किनारों के साथ लेबल ग्राफ में ( यू , वी ) और ( डब्ल्यू , वी ) , वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∨ डब्ल्यू मैं n ) । ध्यान दें कि यह आउटपुट केवल तीन इनपुट बिट्स पर निर्भर करता है।v(u,v)(w,v)vout=vin⊕(uin∨win)
चूंकि सभी मामलों में आउटपुट केवल तीन इनपुट पर निर्भर करता है, हम जो सर्किट बनाते हैं वह वांछित के रूप में में है।NC03
शुद्धता सबूत मामले 1: संतुष्टि योग्य हैϕ
मान लीजिए के लिए एक संतोषजनक काम वहां मौजूद । फिर इनपुट्स के लिए मूल्यों के निम्नलिखित दो सेटों का निर्माण करें।ϕ
1) के चर के साथ जुड़े आदानों संतोषजनक काम के मूल्यों दिया जाता है। G के कोने से जुड़े सभी इनपुट को मान 0 दिया गया है।ϕG
2) के चर के साथ जुड़े आदानों संतोषजनक काम के मूल्यों दिया जाता है। जी में एक क्लॉज गैजेट में कोने पर विचार करें । यदि किसी लेबल का मान 0 है (संतोषजनक असाइनमेंट के तहत), तो उस लेबल के साथ लेबल किए गए किनारे के लक्ष्य समापन बिंदु पर शीर्ष के साथ जुड़े इनपुट को 0. का मान दिया जाता है। यदि L1 और L2 दोनों का मान 0 है तो दूसरा -गैजेट में शीर्ष शीर्ष (जैसा कि ऊपर दिखाया गया है) को 0. का मान भी दिया गया है। अन्य सभी शीर्षों को 1 का मान दिया गया है।ϕG
हम यह दिखाना चाहते हैं कि इनपुट के इन दो सेटों में समान आउटपुट मिलते हैं और इसलिए सर्किट एक क्रमांकन को एन्कोड नहीं करता है।NC03
चार प्रकार के आउटपुट बिट्स पर विचार करें:
1) हर चर के लिए में φ , एक्स ओ यू टी = एक्स मैं एन । चूंकि x i n इनपुट के दोनों सेट के लिए समान है, इस फॉर्म के आउटपुट हमेशा इनपुट के दो सेट में समान होंगे।xϕxout=xinxin
2) हर शिखर के लिए ठीक एक आने वाली बढ़त के साथ लेबल ग्राफ में ( यू , वी ) ऐसी है कि धार लेबल नहीं किया गया है, वी ओ यू टी = वी मैं n ⊕ यू मैं एन । गैजेट की जांच करना जिसकी प्रतियां जी बनाती हैं , हम देखते हैं कि ऐसे सभी किनारों में केवल जोड़े के जोड़ होते हैं जिनके इनपुट मान हमेशा इनपुट के दूसरे सेट के तहत 1s होते हैं। इस प्रकार v ओ यू टी = वी मैं n ⊕ यू मैं n = 0 ⊕ 0 =v(u,v)vout=vin⊕uinG आदानों का पहला सेट के तहत और वी ओ यू टी = वी मैं n ⊕ यू मैं n = 1 ⊕ 1 = 0 आदानों के दूसरे सेट के तहत। इस प्रकार इनपुट के दो सेटों में इस फॉर्म के आउटपुट हमेशा समान (और वास्तव में शून्य) होंगे।vout=vin⊕uin=0⊕0=0vout=vin⊕uin=1⊕1=0
3) हर शिखर के लिए ठीक एक आने वाली बढ़त के साथ लेबल ग्राफ में ( यू , वी ) ऐसी है कि धार लेबल किया गया है एल , वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∧ एल ) । यदि l असाइनमेंट के तहत गलत है, तो v i n 0 इनपुट के दोनों सेट के तहत है; तब वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∧v(u,v)lvout=vin⊕(uin∧l)lvin आदानों के दोनों सेट के तहत। यदिअसाइनमेंट के तहत एल सही है, तो v i n इनपुट के पहले सेट के तहत 0 और दूसरे के नीचे 1 है; यह भी ध्यान दें कि गैजेट में, केवल लेबल किए गए किनारों ( u , v ) में वर्टीकल u होता है, जिसमें हमेशा u i n = 1 होता हैvout=vin⊕(uin∧l)=vin⊕(uin∧0)=vin=0lvin(u,v)uuin=1आदानों के दूसरे सेट के तहत। परिणामस्वरूप हम देखते हैं कि इनपुट्स के दोनों सेटों के तहत, जब भी मैं सच होता हूं , तो ; तब वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∧ एल ) = वी मैं n ⊕ ( यू मैं n ∧ 1 ) = वी मैं n ⊕ यू मैं n = वी मैं n ⊕ vuin=vinl। इस प्रकार इनपुट के दो सेटों में इस फॉर्म के आउटपुट हमेशा (और वास्तव में शून्य) समान रहेंगे।vout=vin⊕(uin∧l)=vin⊕(uin∧1)=vin⊕uin=vin⊕vin=0
4) हर शिखर के लिए ठीक दो भेजे किनारों के साथ लेबल ग्राफ में ( यू , वी ) और ( डब्ल्यू , वी ) , वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∨ डब्ल्यू मैं n ) । प्रत्येक गैजेट में दो ऐसे वर्टिकल होते हैं। शीर्ष शीर्ष और दूसरा-शीर्ष शीर्ष से। हम उन दो मामलों पर अलग से विचार करते हैं।v(u,v)(w,v)vout=vin⊕(uin∨win)
4a) जब किसी गैजेट में दूसरा शीर्ष शीर्ष है, तो u और w L1 और L2 लेबल वाले किनारों के दो लक्ष्य अंत बिंदु हैं। आदानों के पहले सेट के तहत, वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∨ डब्ल्यू मैं n ) = 0 ⊕ ( 0 ∨ 0 ) = 0 । आदानों के दूसरे सेट के तहत, यू मैं एन एल 1 iff 0 (संतोषजनक काम के तहत मान 0 है उर्फ है यू मैं n =vuwvout=vin⊕(uin∨win)=0⊕(0∨0)=0uin ); इसी तरह, w i n 0 है, यदि संतोषजनक असाइनमेंट के तहत L 0 का मान 0 है (aka w i n = L 2 ); और अंत में, वी मैं n परिभाषित किया गया है होना करने के लिए 0 iff दोनों L1 और L2 मान 0 है (उर्फ v मैं n = एल 1 ∨ एल 2 )। इस प्रकार आदानों के दूसरे सेट के तहत, वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∨ डब्ल्यू मैं n ) = (uin=L1winwin=L2vinvin=L1∨L2 । इस प्रकार इनपुट के दो सेटों में इस फॉर्म के आउटपुट हमेशा समान (और वास्तव में शून्य) होंगे।vout=vin⊕(uin∨win)=(L1∨L2)⊕(L1∨L2)=0
4 बी) जब किसी गैजेट में शीर्ष शीर्ष पर होता है, तो u दूसरा शीर्ष शीर्ष शीर्ष होता है और w L3 नामक किनारे का लक्ष्य समापन बिंदु होता है। आदानों के पहले सेट के तहत, वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∨ डब्ल्यू मैं n ) = 0 ⊕ ( 0 ∨ 0 ) = 0 । इनपुट के दूसरे सेट के तहत, u i n 0 है, यदि L1 और L2 दोनों का मान 0 है (aka u i n = L)vuwvout=vin⊕(uin∨win)=0⊕(0∨0)=0uin ); w i n 0 है, अगर if L3 का मान 0 है (aka w i n = L 3 ); और अंत में v i n = 1 । इस प्रकार आदानों के दूसरे सेट के तहत, वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∨ डब्ल्यू मैं n ) = 1 ⊕ ( ( एल 1 ∨ एल 2 ) ∨ एल 3 )uin=L1∨L2winwin=L3vin=1 , जहां समानता ( एल 1 ∨ एल 2 ∨ एल 3 ) = 1 हर खंड के लिए एक संतोषजनक काम में परिभाषा द्वारा आयोजित करता है। इस प्रकार इनपुट के दो सेटों में इस फॉर्म के आउटपुट हमेशा (और वास्तव में शून्य) समान रहेंगे।vout=vin⊕(uin∨win)=1⊕((L1∨L2)∨L3)=1⊕(L1∨L2∨L3)=1⊕1=0(L1∨L2∨L3)=1
स्पष्ट रूप से, हम देखते हैं कि आउटपुट इनपुट के दो अलग-अलग सेटों के लिए समान हैं और इसलिए सर्किट एक गैर-विशेषण फ़ंक्शन को लागू करता है।NC03
सुधार प्रमाण मामला 2: असंतोषजनक हैϕ
मान लीजिए कि अब लिए कोई संतोषजनक कार्य मौजूद नहीं है । फिर विरोधाभास के लिए मान लें कि इनपुट के कुछ दो अलग-अलग सेटों में N C 0 3 सर्किट समान आउटपुट वाले होते हैं।ϕNC03
जाहिर है, दो आदानों के लिए एक ही मान होना आवश्यक है हर चर के लिए एक्स में φ । इस प्रकार अब हम स्पष्ट रूप से x के मान को संदर्भित कर सकते हैं ।xinxϕx
परिभाषित करें कोने के सेट होने के लिए v में जी ऐसा है कि वी मैं n इनपुट मानों के दो सेट में अलग है।SvGvin
हम नीचे दिए गए नींबू को साबित करेंगे:
लेम्मा 1: कुछ गैजेट में लेबल किनारों का लक्ष्य अंतिम बिंदु पर सभी तीन कोने में नहीं हैं तो गैजेट में उन तीन के ऊपर कोई कोने में हैं एस ।SS
लेम्मा 2: यदि कुछ गैजेट में शीर्ष शीर्ष में नहीं है, तो अगले गैजेट में S में कोई शीर्ष नहीं है ।SS
के बाद से गैजेट एक पाश फार्म इससे यह संकेत मिलता है कि अगर किसी भी गैजेट में लेबल किनारों का लक्ष्य अंतिम बिंदु पर सभी तीन कोने में नहीं हैं तो में कोई शिखर जी में है एस (दूसरे शब्दों में एस खाली है)।SGSS
हालांकि, एक खंड के साथ जुड़े एक गैजेट पर विचार कि संतुष्ट नहीं है। इस गैजेट में सभी तीन लेबल मूल्य 0. है हम उस किनारे पता ( यू , वी ) लेबल एल को पूरा करना चाहिए वी ओ यू टी = वी मैं n ⊕ ( यू मैं n ∧ एल ) , लेकिन एल = 0 , तो वी ओ यू टी = v i n(L1∨L2∨L3)(u,v)Lvout=vin⊕(uin∧L)L=0 । इस प्रकार चूंकि आउटपुट दोनों इनपुट के लिए समान है, v i n का मानभी इनपुट के दो सेटों में समान होना चाहिए। दूसरे शब्दों में, हमने दिखाया है कि v , S में नहीं है। इस प्रकार हम देखते हैं कि इस विशेष गैजेट में, लेबल किनारों के लक्ष्य अंत बिंदु पर तीन कोने S में नहीं हैं।vout=vin⊕(uin∧L)=vin⊕(uin∧0)=vin⊕0=vinvinvSS
नतीजतन, हम निष्कर्ष निकालते हैं कि खाली है। हालांकि, इसका तात्पर्य है कि इनपुट के दो सेटों के बीच, कोई अंतर नहीं थे, जो इस धारणा का खंडन करता है कि ये इनपुट सेट अलग हैं। नतीजतन, हम देखते हैं कि एन सी 0 3 सर्किट द्वारा अधिनियमित किया गया कार्य इंजेक्टिव है और इसलिए एक आपत्ति है।SNC03
सब छोड़ दिया है कि नींबू साबित करना है।
ऐसा करने के लिए, हम ध्यान दें कि में प्रत्येक प्रकार के शीर्ष के लिए (लेबल के साथ indegree 1, लेबल के बिना indegree 1, और indegree 2), यदि सभी आवक किनारों में कोने से नहीं S से आते हैं, तो प्रश्न में शीर्ष भी S में नहीं है। । इसका कारण यह है में सभी तीन मामलों v ओ यू टी = वी मैं n ⊕ एक्स जहां एक्स चर और / या करने के लिए किनारों के साथ कोने के साथ जुड़े आदानों की कुछ कार्य है v । चूँकि इस तरह के सभी कोने अनुमान के अनुसार S में नहीं हैं , X का मान इनपुट के दोनों सेट के तहत समान होना चाहिए। इसलिए v iGSSvout=vin⊕XXvSXभी आदानों के दोनों सेट के तहत एक ही है। दूसरे शब्दों मेंv,Sमें नहीं है।vin=vout⊕XvS
अब जब हमारे पास यह नियम है कि एक शीर्ष में नहीं है, जब भी उसके पूर्ववर्ती सभी S में नहीं हैं , तो नींबू केवल ऊपर दिए गए गैजेट आरेख में नियम को बार-बार लागू करके अनुसरण करते हैं।SS