क्या किसी डिग्राफ की ट्रांसएग्जिटिविटी की जांच करना आसान नहीं है (असममित जटिलता के संदर्भ में) डिग्राफ का ट्रांजेक्टिव क्लोजर लेना? क्या हम यह जानते हैं कि डिगिट सकर्मक है या नहीं, यह निर्धारित करने के लिए से बेहतर कोई बाउंड बाउंड है ?
क्या किसी डिग्राफ की ट्रांसएग्जिटिविटी की जांच करना आसान नहीं है (असममित जटिलता के संदर्भ में) डिग्राफ का ट्रांजेक्टिव क्लोजर लेना? क्या हम यह जानते हैं कि डिगिट सकर्मक है या नहीं, यह निर्धारित करने के लिए से बेहतर कोई बाउंड बाउंड है ?
जवाबों:
नीचे मैं निम्नलिखित दिखाऊंगा: यदि आपके पास एक हे () समय की जाँच के लिए एल्गोरिथ्म अगर एक ग्राफ किसी के लिए सकर्मक है , तो आपके पास एक हे () एक समय में एक त्रिकोण का पता लगाने के लिए एल्गोरिथ्म नोड ग्राफ, और इसलिए ( FOCS'10 से एक पेपर द्वारा ) आपको एक ओ () समय एल्गोरिथ्म दो बूलियन गुणा करने के लिए मैट्रिस, और इसलिए 70 के दशक से फिशर और मेयर के परिणामस्वरूप , यह भी एक हे () समय एल्गोरिथ्म सकर्मक बंद करने के लिए।
मान लीजिए कि आप त्रिकोण का पता लगाना चाहते हैं नोड । अब हम निम्नलिखित ग्राफ बना सकते हैं। विभाजन के साथ त्रिपक्षीय है पर प्रत्येक नोड। यहाँ प्रत्येक नोड का प्रतियां हैं भागों में । प्रत्येक किनारे के लिए का निर्देशित किनारों को जोड़ें तथा । प्रत्येक गैर के लिए का निर्देशित किनारा जोड़ें ।
सबसे पहले, अगर एक त्रिकोण होता है , फिर सकर्मक नहीं है। यह किनारों के बाद से है में हैं परंतु नहीं है। दूसरा, यदि सकर्मक नहीं है, तो कुछ नोड से कुछ निर्देशित मार्ग मौजूद होना चाहिए कुछ नोड के लिए में ऐसा है कि में एक निर्देशित बढ़त नहीं है । हालाँकि, सबसे लंबा रास्ता है है किनारों, और इस तरह के किसी भी पथ के रूप में होना चाहिए तथा इसमें नहीं है , इसलिये में एक त्रिकोण बनाएँ ।
ऐसा दिखता है किसी भी निचली सीमा का अर्थ है बूलियन मैट्रिक्स गुणन के लिए एक कम बाध्यता। हम जानते हैं कि एक बूलियन मैट्रिक्स गुणन का उपयोग करके परिवर्तनशीलता जांच प्राप्त की जा सकती है, अर्थात सकर्मक है यदि और केवल यदि ।
अगर एक डीएजी ट्रांजेक्टिव है, तो यह तय करना उतना ही कठिन है जितना कि एक सामान्य डिग्रेक्टिव ट्रांसिटिव (जो हमें आपके पिछले सवाल पर वापस लाए :))।
मान लें कि आपके पास समय में एक एल्गोरिथ्म चल रहा है यह तय करने के लिए कि क्या कोई डीएजी सकर्मक है।
एक निर्देशित ग्राफ दिया , यदि आप तय करने के लिए निम्न यादृच्छिक एल्गोरिथ्म का उपयोग कर सकते हैं समय में सकर्मक है और त्रुटि संभावना :
1. for $O(\log{\frac{1}{\delta}})$ iterations:
1.1. Compute a random permutation on $V$. Denote the result by $<v_1,v_2,...,v_n>$.
1.2. Set $G'=(V,E\cup \{(v_i,v_j)|i<j\})$ (i.e. compute a random acyclic orientation).
1.3. If $G'$ (which is acyclic) is not transitive return false.
2. return true.
अब यह स्पष्ट है कि यदि सकर्मक था, यह एल्गोरिथम सच है।
अब मान लीजिए सकर्मक नहीं था। चलो ऐसा है कि (इस तरह के किनारों के रूप में होना चाहिए सकर्मक नहीं है)। संभावना है कि है , इसलिए प्रत्येक पुनरावृत्ति में संभावना है कि एल्गोरिथ्म का आंकड़ा होगा सकर्मक नहीं था और बाद में विफलता की संभावना सबसे अधिक है ।
मुझे लगता है कि यह रैखिक समय में संभव होना चाहिए, अर्थात कहाँ पे कोने की संख्या और है किनारों की संख्या। हो सकता है कि निर्देशित सेटिंग के लिए कुछ ग्राफ ट्रैवर्सल स्कीम को अपनाने से? एक प्रारंभिक बिंदु यहां वर्णित लेक्सएफएफएस / लेक्सडीएफएस हो सकता है ; निर्देशित रेखांकन के लिए ऐसा लगता है कि हमें डीएफएस के बजाय टोपोलॉजिकल सॉर्टिंग का उपयोग करना चाहिए, इसलिए हो सकता है कि कुछ लेक्सटीएस एल्गोरिथ्म की खोज संभव हो ?
Regarding the previous answer, here's a simple way of defining such an algorithm. Assign to each vertex an index , initialized to . For each , let denote the multiset of indices of its in-neighbors. We simulate a topological sorting by maintaining a set of unexplored vertices, initialized to the entire set. At each step, we do the following:
Chose a vertex whose multiset is minimal (in the multiset order);
Update to the current loop counter and remove from .
Can this algorithm be used for your problem, or for some other application?