Sonlu otomatanın değiştirilmiş versiyonları tarafından kabul edilen diller


16

Deterministik bir sonlu otomat (DFA), tüm ve sadece normal dilleri kabul edebilen bir durum makine modelidir. DFA'lar, her bir durumun giriş alfabesinin tüm elemanları için bir geçiş sağlaması gerektiği şekilde tanımlanabilir (ve genellikle tanımlanabilir); diğer bir deyişle, geçiş fonksiyonu δ:Q×ΣQ bir (toplam) fonksiyon olmalıdır.

İki kat deterministik sonlu otomat (DDFA) dediğimizi düşünün. İki istisna dışında bir DFA'ya benzer şekilde tanımlanır: birincisi, olası her giriş sembolü için bir durumdan diğerine geçiş yapmak yerine, iki ayrı duruma yol açmalıdır; ikincisi, bir dizeyi kabul etmek için, tüm potansiyel yollar aşağıdaki koşullardan birini veya diğerini karşılamalıdır:

  1. DDFA'daki tüm potansiyel yollar kabul edilebilir bir duruma yol açar (buna tip-1 DDFA diyeceğiz).
  2. DDFA'daki tüm potansiyel yollar aynı kabul etme durumuna yol açar (buna tip-2 DDFA adını vereceğiz).

Şimdi sorum için:

L ( D D F A ) = L ( D F A ) L ( D D F A ) L ( D F A ) L ( D D F A ) L ( D F A ) L ( D D FL(DFA)L(DDFA)L(DDFA)=L(DFA)L(DDFA)L(DFA)L(DDFA)L(DFA)L(DDFA)

Kanıtlar (veya en azından orta derecede etli eskizler), çok karmaşık değilse takdir edilir.

Yanıtlar:


9

Bu Alex'in cevabı ile birlikte tam resmi verir.

L(DDFA)L(DFA) , olağan güç seti yapısının değiştirilmiş bir nihai durum koşulu ile uyarlanmasıyla kanıtlanabilir. Güç seti yapısında, durumlar orijinal otomattaki durum kümeleridir. Genellikle güç kümesi yapısını gerçekleştirdikten sonra, kümedeki durumlardan biri orijinal otomattaki nihai ise bir durum kesindir.

  • Tip-1 DDFA'da, yapılandırılmış otomattaki son durumlar, orijinal otomattaki tüm elemanların nihai olduğu setlerdir.

  • Tip-2 DDFA'da, nihai durumlar, orijinal otomasyondaki nihai durumların tekil kümeleridir.

Her iki durumda da, sonuçtaki otomatalar DFA'lardır.

Şimdi type-2DDFA'lar başlangıç ​​durumunun kabul edilip edilmediğine bağlı olarak sadece ve dillerini ifade edebilir . Bunun nedeni, bir devletten iki geçişin farklı durumlara gitmesi gerektiğidir, ancak kabul ancak aynı devlete ulaşırsa mümkündür.{ϵ}


7

Analizi başlatmak için, tip 1 için .L(DFA)L(DDFA)

Bunu bir DFA çoğaltarak ve çoğaltılan durumlara kenarlar ekleyerek yapabilirsiniz. Bir devlet varsa bir geçiş vardır üzerinde , aralarından bir geçiş yapmak için üzerinde de. Ayrıca, nin üzerinde ve geçişi vardır . Açıkçası, bu neredeyse her zaman aynı anda ve eyaletlerinde (veya muhtemelen sadece başlangıçta ) olacağımız ve dolayısıyla aynı dili tanıyacağımız anlamına gelir.s 2 x s 1 s 2 x s 1 s 2 s 2 x s i s i s is1s2xs1s2xs1s2s2xsisisi

Güncelleme: tip 2 için var, çünkü dilini tanıyan bir tip-2 DDFA mevcut değil . Böyle bir DDFA yapmaya çalışırsanız, bir başlangıç beyan etmesini ve sonra devletler için iki giden kenarları zorunda ve bir de , fakat bu devletler farklı olmalıdır ve dolayısıyla iki kabul yolları farklı biten kabul eden devletler.{ a } s s 1 s 2 aL(DFA)L(DDFA){a}ss1s2bir

Dave Clarke'ın cevabı ile birlikte, size tam bir analiz sunar.


Tip-2 için bu karşı örneği görmek çok güzel!
Dave Clarke

@ Clarke Clarke: teşekkürler. Biraz aptalca bir örnek, ama işe yarıyor :)
Alex ten Brink

"Aptal" yerine "Patolojik".
Dave Clarke

Çok iyi iş çıkardınız beyler. Kontrol edilecek dört şey vardı ve her birinizin iki tane var. İkiniz de itiraz etmedikçe, cevap olarak @DaveClarke 'i seçeceğim, çünkü sadece Alex'ten daha az temsilcisi var.
Patrick87

1
İlgili bir notta, tip 2 DDFA'lar tarafından kabul edilen diller üzerinde durmak ister misiniz, yoksa ayrı bir soru sormalı ve bu soruna bağlantı vermeli miyim?
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.