Bağlamdan bağımsız ve düzenli diller etkin bir şekilde karar verilebilir mi?


12

Bağlamdan bağımsız ve düzenli dillerin (uygun) etkili sorunların (sözde ) alt kümeleri olduğunu gösteren bu rakamla karşılaştım . Etkili sorunların tüm karar verilebilir sorunların bir alt kümesi olduğunu mükemmel bir şekilde anlıyorum çünkü bunları çözebiliriz, ancak çok uzun zaman alabilir.P

Neden tüm bağlam serbest ve düzenli diller verimli Karar verilebilen? Bu, onları çözmek uzun zaman almayacağı anlamına mı geliyor (yani daha fazla bağlam olmadan biliyoruz)?

resim açıklamasını buraya girin


3
Meraktan, bu rakamı nerede buldun? “Etkin” resmi bir kavram olmadığından ve farklı insanlar bunu farklı şeyler ifade etmek için kullanabileceğinden, açıklamak için bağlamın olması yardımcı olabilir.
Gilles 'SO- kötü olmayı kes'

2
"Verimli", " " anlamına gelirse (yaygın olduğu gibi), "verimli", polinomlar da büyük değerler verdiğinden "çok uzun bir süre değil" anlamına gelmez. Karmaşıklığın temel bir sonucunun, her biri bir sonrakinden daha kolay olan sonsuz sorun dizileri olduğudur. Bu, P'nin içinde ve dışında tutar . PP
Raphael

@Raphael: Bu bağlamda verimli, polinom zamanında karar verilebilen bir dil sınıfıdır. Sonlu bir süre için çözüm bulamadığımız kararsız sorunların aksine "çok uzun zaman alabilirdi" kararını verdim.
Gigili

bunu söylemek için doğru teknik yolu w w bir kelime w ve bir dil olup olmadığını belirlemek bir dil p. yani / aka "dil tanıma"
vzn

Yanıtlar:


15

O(n)

O(n3)

PEXPTIMEP


2
Daha iyi bir çalışma süresine sahip olan bağlamsız gramamitler için matris çarpma algoritmasından bahsetmek isteyebilirsiniz ve bu algoritmanın hemen hemen her pratik bağlamsız gramerde çok verimli (doğrusal olarak) çalıştığı söylenebilir: sciencedirect.com/science/article/pii A
Alex ten Brink

@AlextenBrink Bu sorunun "polinom olsun ya da olmasın" dan daha ince ayrıntı istediğini düşünmüyorum.
Raphael

1
O(n)

1
Aslında, normal diller için açıkça belirleyici otomatlara ihtiyacınız yoktur. Tüm hesaplamaları paralel olarak tüm durumları takip ederek güç kümesi yapısını taklit ederek simüle edersiniz.
Hendrik Jan

1
@Dave: Burada verilen diğer karmaşıklıklar gibi, sabit bir normal dil için giriş dizesi uzunluğunda doğrusal.
Hendrik Jan

1

DC'nin cevabında arıtma / "ince baskı" : Chomsky Normal Form şeklindeki tüm CFL'ler CYK algoritması ile verimli bir şekilde ayrıştırılabilir ve tüm CFL'ler CNF'ye dönüştürülebilir. Bununla birlikte, keyfi bir CFL'yi CNF'ye dönüştürmek , bazı algoritmalara bağlı olarak en kötü durumda üstel alan alabilir. (Burada P-zamanı dönüşümünü garanti eden bir algoritmanın farkında değilim, başka biri var mı? Belirsiz CFL'ler veya belirsiz olanlar gibi tüm uç / en kötü durumları düşünmek gerekir .) CNF bölümündeki Wikipedia durumları Dönüşüm sırası

|G|222|G|

Bu nedenle, verimli bir şekilde ayrıştırılamayan CFL'ler olabileceği görülmektedir. Çoğu programlama dili etkin bir şekilde CNF'ye dönüştürülebilir (veya belki de çoğunlukla CNF veya CNF'ye yakın olarak tanımlanabilir ), bu nedenle P'de "tipik" diller için ayrıştırma CFL'si "pratikte" dir. el yazısı arama ile ilgili son makaleleri bul). Örneğin, Greibach'ın bu eski (1973) araştırma makalesi, en kötü vaka performansının P tarafından sınırlandırılmayabileceğini de göstermektedir.

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.