Dikkate değer düzenli ifade otomatalarının sınıflandırılması


10

Belirli alanlarda karmaşık özelliklerinin bazı ampirik testleri gerçekleştirmek için düzenli ifadeleri otomata dönüştürmek için algoritmalar bir taksonomi çizmek çalışıyorum.

Birkaç 'büyük' ​​adın farkındayım, ör.


Thompson

"Düzenli İfade Arama Algoritması", Thompson, 1968

Glushkov

"Düzenli Bir İfadeyi Otomasyona Dönüştüren Yeni Bir Karesel Algoritma", Ponty, et. al, 1996

Antimirov

"Düzenli İfadelerin Kısmi Türevleri ve Sonlu Otomata Yapıları", Antimirov, 1996

Takip et

"Automata'yı izleyin", Ilie, et. al, 2003;

"Bir ifadenin takip otomasyonunun hesaplanması", Champarnaud, et. al, 2002

Hromkovic

"Düzenli İfadeleri Küçük e-Serbest Belirsiz Sonlu Otomata Çevirme", Hromkovic, et. al, 2001


ve ayırt edici özellikleri (epsilon-özgürlüğü, determinizm, boyut, minimizasyon, vb.) ama bunun kapsamlı bir liste olmadığını biliyorum.

Özellikle yukarıda listelenenlerden önemli ölçüde farklı zaman karmaşıklıkları ve / veya önemli ölçüde farklı topolojiler sunan algoritmalar ile ilgileniyorum.

Başkalarını biliyorsanız, inşaat algoritmasını ayrıntılı olarak açıklayan bir makaleye yapılan bağlantı büyük beğeni toplar (bunu uygulayacaksam gerekli olanı okuyun!)

Düzenleme: İstendiği gibi bazı referanslar eklendi.


@Radu GRIGaha fazla referans ekledim. Bunlar, bu otomatalar için bildiğim en iyi referanslar, ancak başkaları da olabilir.
s8soj3o289

1
Glushkov için her zamanki referansım J. Berstel ve J.-E. Pin, "Yerel diller ve Berry – Sethi algoritması", 1996.
Sylvain

1
Bu arada, bu algoritmaların bazılarının Vaucanson C ++ kütüphanesinde, bu algoritmaların oluşturulmasıyla ilgili referanslar için uygulamalar bulabilirsiniz. trac.lrde.org/vaucanson/browser/include/vaucanson/algorithms (içinde standart_of = Glushkov, thompson_of = Thompson, derive_term_automaton = Antimirov, brzozowski = Brzozowski)
Michaël Cadilhac

@ michael-cadilhac İşaretçi için teşekkürler. Diğerlerini kendim uygulamadan önce bunun hakkında bilgi sahibi olmayı isterdim! Kesinlikle bir göz atacağım.
s8soj3o289

Yanıtlar:


7

Watson (Tech. Rep. Univ. Eindhoven 1995), sonlu otomata yapı algoritmalarının taksonomisini yazmıştır; birkaç yeni gelişme aşağıda bulunmaktadır.

Epsilon-geçişli NFA'lar için, Sippu / Soisalon-Soininen (Springer, 1998) tarafından hazırlanan ayrıştırma teorisi kitabı Thompson'un yapısının bir varyantını içerir. Ilie ve Yu (I&C 2003) ve Gulan ve Fernau (FSTTCS 2008) klasik yapının rafine versiyonlarını vermektedir. Düzenli ifadelere karşılık gelen minimum minimum epsilon-NFA boyutu Gruber ve Gulan tarafından da incelenmiştir (LATA 2010). Thompson'un yapısından kaynaklanan altta yatan digrafların yapısı Giammarresi, Ponty, Wood & Ziadi (Discr. Appl. Math 2004) ve Gulan (Tech. Rep. Univ. Trier, 2010) tarafından incelenmiştir.

Epsilon içermeyen NFA'lar ile ilgili olarak, Berry & Sethi (TCS 1986) ve Brüggemann-Klein (TCS 1993) tarafından yapılan önceki çalışmalardan bahsetmek istiyorum, ancak muhtemelen Watson'un taksonomisi tarafından kapsanmaktadır.

n2Ö(günlük*n)

Ayrıca not: Düzenli ifade eşleşmesi için hızlı algoritmalar ile ilgili olarak, Bille ve Thorup'un son çalışmalarının farkındayım (ICALP 2009, SODA 2010). Klasik Thompson yapısını kullanıyorlar (artı elbette hız elde etmek için birçok numara).


1
bu harika bir cevap, çok teşekkür ederim. Son zamanlarda konuyla ilgili bir kitap yayınladığınızı görüyorum - ayrıca bir herhangi bir biçimde çevrimiçi olarak mevcuttur ve b. belirli alan adları için hiç 'ortalama vaka' karmaşıklığına baktınız mı? öncelikle nlp uygulamalarıyla ilgileniyorum, ancak bazıları büyük ölçüde anekdotsal kanıtlar bu algoritmaların bazılarının ortalama vaka karmaşıklığının cs literatüründe açıklanan en kötü senaryolardan önemli ölçüde farklı olduğunu düşündürmektedir.
s8soj3o289

Ayrıca, bir cevap seçme açısından hangi görgü kurallarını belirlediğinden emin değilim. cevabınız daha önce seçtiğim yanıttan açıkça daha üstündür.
s8soj3o289

Sadece kitabın fragmanı çevrimiçi olarak ücretsiz olarak kullanılabilir.
Hermann Gruber

Ortalama vaka durumu karmaşıklığı ile ilgili olarak, M. Holzer (TCS 2007) ile sonlu diller için ortalama NFA boyutunda da bir makale bulunmaktadır. ancak çoğu ilgili Nicaud'un Glushkov otomata üzerindeki çalışması gibi görünüyor (LATA 2009); ilginç bir başlık ile Nicaud, Pivoteau & Razet (FSTTCS 2010) tarafından hazırlanan yeni bir makale de var - henüz bakamadım.
Hermann Gruber

Gouveia, Moreira & Reis (CiE 2010) RE'den NFA'ya dönüşüm konusunda deneyler yürütmektedir. Broda, Machiavelo, Moreira & Reis (DLT 2010) pozisyon (Glushkov) otomatlarının ve denklem (Antimirov) otomatlarının durumlarını ortalama olarak karşılaştırır. Bu da ilgi çekici olabilir.
Hermann Gruber

5

Listenizde dikkate alınmayanlardan biri , yakın zamanda Scott Owens, John Reppy ve Aaron Turon tarafından tekrar incelenen ACM 1964 Dergisi Janusz Brzozowski'nin Düzenli İfadelerin Türevleri'dir . Düzenli ifadeler için genişletilmiş bir gösterim için tekniğin pratik bir uygulamasını sağlayan Fonksiyonel Programlama Dergisi (2009), 19: 173-190 .


2
Antimirov, Brzozowski'nin deterministik olmayan bir çeşididir.
Sylvain

Adı kesinlikle tanıdık geliyordu.
Dave Clarke

'yeniden incelenen' yazı için teşekkürler, bunu görmemiştim!
s8soj3o289
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.