Saya mencoba menyusun taksonomi algoritma untuk mengubah ekspresi reguler menjadi automata sehingga dapat melakukan beberapa tes empiris dari sifat kompleksitas mereka di domain tertentu.
Saya mengetahui beberapa nama 'besar', misalnya,
Thompson
"Algoritma Pencarian Ekspresi Reguler", Thompson, 1968
Glushkov
"Algoritma Quadratic Baru untuk Mengubah Ekspresi Reguler menjadi Automaton", Ponty, et. al, 1996
Antimirov
"Derivatif Parsial Ekspresi Reguler dan Konstruksi Automata Hingga", Antimirov, 1996
Mengikuti
"Ikuti Automata", Ilie, et. al, 2003;
"Menghitung ikuti otomat ekspresi", Champarnaud, et. al, 2002
Hromkovic
"Menerjemahkan Ekspresi Reguler ke Automata Terbatas Nondeterministic E-Free Kecil", Hromkovic, et. al, 2001
dan sifat-sifatnya yang membedakan (epsilon-free-ness, determinisme, ukuran, minimalisasi, dll) tetapi saya tahu ini bukan daftar lengkap.
Saya terutama tertarik pada algoritma yang menyajikan kompleksitas waktu yang sangat berbeda dengan yang tercantum di atas, dan / atau topologi yang sangat berbeda.
Jika Anda mengetahui orang lain, tautan ke makalah yang menjelaskan algoritme konstruksi secara terperinci akan sangat dihargai (perlu dibaca jika saya akan mengimplementasikannya!)
Sunting: Menambahkan beberapa referensi sesuai permintaan.
Jawaban:
Watson (Tech. Rep. Univ. Eindhoven 1995) telah menulis taksonomi algoritma konstruksi automata terbatas; beberapa perkembangan terbaru ditemukan di bawah ini.
Untuk NFA dengan transisi epsilon, buku teori parsing oleh Sippu / Soisalon-Soininen (Springer, 1998) berisi varian konstruksi Thompson. Ilie dan Yu (I&C 2003) dan Gulan dan Fernau (FSTTCS 2008) memberikan versi yang disempurnakan dari konstruksi klasik. Ukuran minimum yang diperlukan dari epsilon-NFA yang sesuai dengan ekspresi reguler dipelajari lebih lanjut oleh Gruber dan Gulan (LATA 2010). Struktur digraf dasar yang dihasilkan dari konstruksi Thompson dipelajari oleh Giammarresi, Ponty, Wood & Ziadi (Disc. Appl. Math 2004) dan oleh Gulan (Tech. Rep. Univ. Trier, 2010).
Mengenai NFA bebas epsilon, saya ingin menyebutkan karya sebelumnya oleh Berry & Sethi (TCS 1986) dan oleh Brüggemann-Klein (TCS 1993), tetapi itu mungkin dicakup oleh taksonomi Watson.
Juga perhatikan: Mengenai algoritma cepat untuk pencocokan ekspresi reguler, saya mengetahui pekerjaan terbaru oleh Bille dan Thorup (ICALP 2009, SODA 2010). Mereka menggunakan konstruksi Thompson klasik (ditambah tentu saja banyak trik untuk mendapatkan kecepatan).
sumber
Satu yang tidak dipertimbangkan dalam daftar Anda adalah Derivatif Ekspresi Reguler oleh Janusz Brzozowski, Jurnal ACM 1964, yang baru-baru ini dipertimbangkan kembali oleh Scott Owens, John Reppy, dan Aaron Turon dalam turunan ekspresi-reguler yang diperiksa ulang. Journal of Functional Programming (2009), 19: 173-190 , yang menyediakan implementasi praktis dari teknik untuk notasi yang diperluas untuk ekspresi reguler.
sumber