Minimal bir DFA'nın ters çevrilmesi de minimum mu?


10

Soru hemen hemen başlıkta. Bazı dilinin durumları olan minimal bir DFA tarafından kabul edilebildiği bir zaman var mı , ancak nin ters çevrilmesi olan , durumları olan bir DFA tarafından kabul edilebilir , burada ?LnLRLmm<n


3
Bir DFA'nın tersi mutlaka belirleyici değildir. Normal ifade AAA + 'yı kabul eden bir DFA, aynı etikete sahip iki gelen ok içeren bir terminal durumuna sahiptir.
Ian

Yanıtlar:


7

Dilin ters çevrilmesini kabul eden minimum DFA daha küçük olabilir. Sonlu dili düşünün kelimeleri eşdeğer değildir, bu nedenle için herhangi bir DFA en az 12 durum gerektirir; aslında tam olarak 12 eyalete sahip bir DFA var. Ters dil , yalnızca 9 durumlu bir DFA tarafından kabul edilir: bir başlangıç ​​durumu, buna karşılık gelen durumlar başlangıç , başlangıç , bir kabul durumu ve bir başarısız duruma karşılık gelen durumlar; bu da optimum , çünkü eşit değildir.

L=(0+1)22+(0+2)21+(1+2)20.
ϵ,0,1,2,00,01,02,11,12,22,000,001L
LR=2(0+1)2+1(0+2)2+0(1+2)2
0,1,20(1+2),1(0+2),2(0+1)ϵ,0,1,2,01,12,20,011,000

Özetle, için minimum DFA 12 durum gerektirirken, için olan sadece 9 durum gerektirir.LLR

Yorumlarında belirtildiği gibi, çoklu başlangıç ​​durumlarına sahip NFA'lar için bu fenomen olamaz, çünkü için bir NFA'daki tüm okların yönünü çevirirseniz, için geçerli bir NFA elde edersiniz .LLR


Teşekkürler! Bir şekilde bir DFA'yı tersine çevirebildiğinizi ve (doğrudan) bir DFA geri alabileceğinizi bir şekilde kafamda anladım, sanırım tamamlayıcı ile karıştırdım.
jmite

1
@jmite Aynı beyin osuruğuna sahiptim ve yanlış cevabın çelişkisiyle zarif bir kanıt yazdım. :) Tersine değil, düşündüğüm gibi çalışan bir tamamlayıcıdır. Hata.
Patrick87
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.