Turing Machine, bir NFA'nın bir dizi asal uzunluk kabul edip etmeyeceğine karar verebilir mi?


14

Aşağıdaki sorunun karar verilebilir olup olmadığını bilmek istiyorum:

Eşgörünüm: n durumlu bir NFA A

Soru: A'nın bazı uzunluk dizesini kabul etmesi için bir asal sayı p var mı?

Benim inancım, bu sorunun çözülemez olduğu, ancak kanıtlayamıyorum. Karar verici, belirli bir sayının asal olup olmadığını anlamak için kolayca bir algoritmaya sahip olabilir, ancak NFA'yı tam olarak hangi uzunlukları üretebileceğini bilmek için yeterince ayrıntılı olarak nasıl analiz edebileceğini göremiyorum. NFA ile dizeleri test etmeye başlayabilir, ancak sonsuz bir dil için asla durmayabilir (ve böylece bir karar verici olamaz).

Çözümün elbette ihtiyacı varsa NFA kolayca bir DFA veya normal ifadeye değiştirilebilir.

Bu soru, 2 hafta içinde çıkacağım bir final için kendi kendine hazırlanmış bir hazırlık sorusu olarak düşündüğüm bir şey.


Bunun lisans düzeyinde olup olmadığından emin değilim, bu yüzden silme konusunda endişelenmeyin. Zor bir sorun olabilir, bkz. Örneğin terrytao.wordpress.com/2007/05/25/…

Ben uydurdum, bu yüzden zor olabilir. NFA'ları / DFA'ları içeren kararsız sorunların hiçbir kanıtını bulamadım, bu yüzden birini denemenin ilginç olabileceğini düşündüm.

sL(n)

Yanıtlar:


17

a+bkgcd(a,b)=1

Yukarıdakileri birlikte çekmek, normal (hatta bağlamsız dil) asal uzunluktaki dizeler içerip içermediğini kontrol etmek için bir algoritma verir. Kesinlikle basit bir soru değil , IMVHO ...


Bu örnekte Parikh'in teoremini anlamaya yardımcı olduğum için teşekkür ederim. Açıkçası bir NFA'yı PDA'daki yığını kullanmadan bir PDA'ya dönüştürebiliriz. Doğrusal alt kümeler döngüleri belirliyor mu? Öyleyse, bu nasıl çalışır?
Chill

1
@Chill, DFA üzerinden herhangi bir yolu düşünün. Doğrudan başlangıç ​​durumundan son duruma geçebilir veya döngü yapabilir. Dizelerin olası uzunlukları, "düz kısım" + rasgele için "olası bir döngünün uzunluğu" çarpı katı " toplamı ile belirlenir . Sadece bir DFA arapsaçı çizin ve yolları takip edin. Olası uzunlukların, döngüler tarafından tanımlanan aritmetik dizilerin ailelerine düştüğünü göreceksiniz, yani yarı çizgi kümesini oluştururlar. Bağlamdan özgür olmanıza gerek yok (sadece güzel bir ücretsiz bonus). kk
vonbrand

1
Sanırım bu sorumu cevaplıyor. Parikh'in teoremini daha fazla okumaya çalışacağım. Fikrini ve bu durumda döngüleri nasıl belirleyebileceğini anlıyorum. Ne bulmak istiyorum bu sorunu çözmek için gerçek bir algoritma yapmak daha "eller açık" bir çözümdür.
Chill

@Chill, sadece önceki yorumuma bak. DFA üzerindeki sembolleri bir grafik olarak silerek ve başlangıç ​​başlangıç ​​durumu ile nihai durumlar arasındaki yürüyüşleri kontrol ederek olası uzunlukların bir tanımını bulmak o kadar zor değildir. Herhangi bir örnek için resmileştirilmesi zor, elle anlaşılması kolaydır.
vonbrand

3
@dkuper, o kadar basit değil . normal dili sonsuzdur, ancak asal uzunluktaki bir dize içermez. aaaa(aa)
vonbrand
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.