दो नियमित भाषाओं का समसामयिक संयोग कब है?


16

और भाषाओं को देखते हुए , मान लें कि यदि उनका शब्द सभी _ है , तो उनका संघटन अस्पष्ट है , बिलकुल और साथ और अन्यथा अस्पष्ट है। (मुझे नहीं पता कि इस संपत्ति के लिए एक स्थापित शब्द है - इसके लिए खोज करने के लिए कठिन बात!) एक तुच्छ उदाहरण के रूप में, का संघ अपने आप में अस्पष्ट है ( ), लेकिन स्वयं के साथ का संयोग असंदिग्ध है।बी बीABABडब्ल्यू = एक एक बीwABw=abaAbBडब्ल्यू = एक = ε एक = एक ε { एक }{ε,a}w=a=εa=aε{a}

क्या यह तय करने के लिए एक एल्गोरिथ्म है कि क्या दो नियमित भाषाओं का संगम अस्पष्ट है?


1
जी, यह पूरी तरह से एक नए सिरे से सीएस समस्या है, है ना? ईमानदारी से, मैंने बहुत कोशिश नहीं की है; मैं उम्मीद कर रहा था कि साहित्य में कहीं इसके लिए एक स्थापित एल्गोरिथ्म है और मुझे पहिया को सुदृढ़ करने के लिए नहीं जाना होगा। मैं यहाँ पर सॉफ्टवेयर लिख रहा हूँ; मैंने केवल कुछ साल पहले (कुछ साल पहले) सीएस पाठ्यक्रम लिया है, इसलिए मैं मूल रूप से विकिपीडिया से शुरू कर रहा हूँ। मुझे पता है कि कोई भी व्यक्ति ऐसे व्यक्ति को पसंद नहीं करता है जो उनके उत्तर के लिए काम नहीं करना चाहता है, इसलिए यदि कोई पाठ्यपुस्तक या एक पेपर या कुछ ऐसा है जो आप मुझे केवल एक एल्गोरिथ्म सौंपने के बजाय मुझे बता सकते हैं, तो यह उपयोगी होगा! धन्यवाद!
रस्टर्न

मैंने इसे एक टिप्पणी के रूप में जोड़ा है, क्योंकि इसका विषय बहुत अच्छा है, लेकिन शायद इससे आपको कुछ मदद मिल सकती है। यूनिकोड कंसोर्टियम में भाषाओं के बीच समानता का निर्धारण करने के लिए कुछ प्रक्रियाएँ हैं। मैंने उनकी साइट पर एक बहुत ही जानकारीपूर्ण लिंक पढ़ा है, लेकिन मेरे जीवन के लिए आज इसका जवाब देने के लिए इसे ढूंढना संभव नहीं था। आप इस अनुसंधान करने के लिए समय है, तो यहां उनके FAQ पृष्ठ है unicode.org/faq
htm11h

जवाबों:


10

संकेत: और बी के लिए डीएफए को देखते हुए , एक एनएफए का निर्माण करें जो बी में शब्दों को स्वीकार करता है जिसमें कम से कम दो अलग-अलग डिकम्पोजिशन हों। NFA के लिए मानक NFA की दो प्रतियां का ट्रैक रखता है एक बी (के लिए DFAs में शामिल होने के द्वारा गठित एक और बी के साथ ε , संक्रमण) सुनिश्चित करना है कि से स्विच एक करने के लिए बी दो विभिन्न बिंदुओं पर होता है।ABABABABϵAB


संकेत के लिए धन्यवाद! इसलिए अगर मैं समझता हूं, मैं में अस्पष्ट शब्दों के लिए एनएफए का निर्माण कर सकता हूं और फिर शून्यता के लिए उस ऑटोमेटन का परीक्षण कर सकता हूं । पेचीदा हिस्सा "यह सुनिश्चित करना है कि से बी में स्विच दो अलग-अलग बिंदुओं पर होता है"। मुझे यकीन नहीं है कि दो बी डीएफए के क्रॉस उत्पाद (?) लेने के अलावा और ( -टर्मिनल, -टर्मिनल) उत्पाद राज्यों को हटाने के अलावा मैं कैसे काम कर रहा हूं - मुझे चिंता है से संक्रमण एक बी करने के लिए NFA एक बी DFA के विचार के साथ पेंच हैं एकABABABAAABABA-टर्मिनल। लगता है, उम, हालांकि अक्षम; वहाँ एक ज्ञात एल्गोरिथ्म सॉफ्टवेयर के लिए उपयुक्त है?
रस्टर्न

हां, यह बहुत अधिक कुशल नहीं है, हालांकि हमेशा इसे स्मार्ट तरीके से करने का विकल्प होता है। मैं इस समस्या के लिए किसी विशिष्ट एल्गोरिथ्म के बारे में नहीं जानता, लेकिन कोई भी मौजूद हो सकता है।
युवल फिल्मस

7

अपडेट किया गया (युवल फिल्मस को धन्यवाद)।

यह देखते हुए दो भाषाओं और वाई के एक * , चलो एक्स - 1 YXYA मैं दावा है किएक्सवाईयदि और केवल यदि भाषा स्पष्ट हैएक्स-1एक्सवाईवाई-1एक+खाली है।

X1Y={uAthere exists xX such that xuY}YX1={uAthere exists xX such that uxY}
XYX1XYY1A+

सबूत । मान लीजिए कि अस्पष्ट है। तो फिर वहाँ एक शब्द मौजूद यू जिस पर दो decompositions है एक्स वाई , का कहना है कि यू = एक्स 1 y 2 = एक्स 2 y 1 , जहां एक्स 1 , एक्स 2एक्स और वाई 1 , y 2वाई । सामान्यता की हानि के बिना, हम मान सकते हैं कि x 1 x 2 का पूर्वसर्ग है , अर्थात x 2 = xXYuXYu=x1y2=x2y1x1,x2Xy1,y2Yx1x2 के लिए कुछ z + । यह इस प्रकार है कि u = x 1 y 2 = x 1 z y 1 , whence y 2 = z y 1 । इस प्रकार z एक्स - 1 एक्स वाई वाई - 1x2=x1zzA+u=x1y2=x1zy1y2=zy1zX1XYY1

अब मान लीजिए कि कुछ अरिक्त शब्द है जेड । तो फिर वहाँ मौजूद एक्स 1 , एक्स 2एक्स और वाई 1 , y 2वाई ऐसी है कि एक्स 2 = एक्स 1 z और y 2 = z y 1 । यह इस प्रकार है कि x 2 y 1 = x 1 z y 1 =X1XYY1zx1,x2Xy1,y2Yx2=x1zy2=zy1 और इसलिए उत्पाद X Y अस्पष्ट है।x2y1=x1zy1=x1y2XY

तो और वाई नियमित कर रहे हैं, तो दोनों एक्स - 1 एक्स और वाई वाई - 1 नियमित और इस तरह कर रहे हैं एक्स - 1 एक्स वाई वाई - 1 भी नियमित रूप से है (एक automaton इस भाषा को स्वीकार करने के लिए युवाल के जवाब देखें)।XYX1XYY1X1XYY1


What if z is the empty word?
Yuval Filmus

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