Tanımlar Sonlu Özdevinirlerle Eşdeğerlik Düzenli Deyimler Tanımlar Sonlu Özdevinirlerle Eşdeğerlik
DD’ler: Giriş Düzenli Deyimler (DD) dilleri tarif etmek için cebirsel bir yötemdir. Tam olarak düzenli dilleri anlatırlar. E bir düzenli deyim ise, L(E) tanımladığı dildir. DD’leri ve tanımladıkları dilleri özyinelemeli olarak anlatacağız.
DD’ler: Tanım Temel 1: a herhangi bir sembol ise, a bir DD’dir, ve L(a) = {a}. Not: {a} içinde bir tek dizi bulunan dildir, ve bu dizinin uzunluğu 1’dir. Temel 2: ε bir DD’dir, ve L(ε) = {ε}. Temel 3: ∅ bir DD’dir, ve L(∅) = ∅.
DD’ler: Tanım – (2) Tümevarım 1: E1 ve E2 düzenli deyim iseler, o zaman E1+E2 bir düzenli deyimdir, ve L(E1+E2) = L(E1)L(E2). Tümevarım 2: E1 ve E2 düzenli deyim iseler, o zaman E1E2 bir düzenli deyimdir, ve L(E1E2) = L(E1)L(E2). Bitiştirme (concatenation): wx’den oluşam diziler kümesi, şöyle ki w L(E1) içindedir ve x L(E2) içindedir. Genel olarak, A ve B dizi kümeleri ise: AB = {zw | z A ve w B}
DD’ler: Tanım – (3) Tümevarım 3: E düzenli deyim ise, o zaman E* düzenli deyimdir, ve L(E*) = (L(E))*. Kapatılma, veya “Kleene kapatılması” = {w1w2…wn|n > 1, wi L(E)} {ε }
İşlem Önceliği İşlemlem önceliğinin değiştirilmesi gerektiğinde parantez kullanılabilir. Öncelik sırası: * (en yüksek) Bitiştirme (concatenation) + (en düşük).
Örnekler: DD’ler L(01) = {01}. L(01+0) = {01, 0}. İşlemlerin öncelik sırasına dikkat. L(0*) = {ε, 0, 00, 000,… }. L((0+10)*(ε+1)) = içinde ardışık iki tane 1 olmayan tüm ikili diziler.
DD’lerle Özdevinirlerin Eşdeğerliği Her DD için, ayni dili kabul eden bir özdevinir olduğunu göstermemiz gerekir. En güçlü özdevinir tipini, yani ε-BSÖ’yü kullanalım. Ayrıca, her özdevinir için, dilini tanımlayan bir DD olduğunu göstermemiz gerekir. En sınırlı özdevinir tipini, yani DSÖ’yü kullanalım.
Bir DD’yi ε-BSÖ’ye Dönüştürme İspat, DD’deki işleç (operator) sayısı (+, bitiştirme, *) üzerine bir tümevarımdır. Her seferde özel şekilde bir özdevinir oluştururuz.
Oluşturulan ε-BSÖ’lerin Şekli Dışarıdan gelen veya dışarıya giden yay yok Başlangıç durumu “Final” durumu.
DD’den ε-BSÖ’ye: Temel a a sembolü: ε: ∅: ε
DD’den ε-BSÖ’ye : Tümevarım 1 – Birleşim E1 E2 İçin E1 İçin ε E2 İçin
DD’den ε-BSÖ’ye : Tümevarım 2 – Bitiştirme E1E2 İçin E1 İçin E2 İçin ε
DD’den ε-BSÖ’ye : Tümevarım– Kapatma E* İçin ε E İçin
DSÖ’den DD’ye Bir tür tümevarım. DSÖ’nün durumlarının 1,2,…,n olduğu varsayılır. Sınırlı yol (path) kümelerinin etiketleri DD’ler oluştururuz. Temel: tek yay veya hiç yay yok. Tümevarım: bir sonraki sıradaki duruma geçme hakkı bulunan yollar.
k-Yolları k-yolu DSÖ’nün diyangramında k’dan daha yüksek sayılı bir durum içinden geçmeyen bir yoldur. Başlangıç ve bitiş noktalarında sınırlama yok.
Örnek: k-Yolları 1 3 2 2’den 3’e 0-yolları: Etiketler için DD = 0. 2’den 3’e 0-yolları: Etiketler için DD = 0. 2’den 3’e 1-yolları: Etiketler için DD = 0+11. 2’den 3’e 2-yolları: Etiketler için DD = (10)*0+1(01)*1 2’den 3’e 3-yolları: Etiketler için DD = ??
k-Yolu Tümevarımı Rijk i durumundan j durumuna gitmek için k-yollarının etiketlerinin düzenli deyimi olsun. Temel: k=0. Rij0 = i’den j’ye olan yayların etiketlerinin toplamı. Öyle bir yay yoksa ∅. i=j ise ε’yi ekle.
1 3 2 Örnek: Temel R120 = 0. R110 = ∅ + ε = ε.
k-Yolu Tümevarım Durumu i’den j’ye bir k-yolu ya: k durumunun içinden hiç geçmez, ya da k durumunun içinden bir veya daha fazla defa geçer. Rijk = Rijk-1 + Rikk-1(Rkkk-1)* Rkjk-1. Sonra k’den j’ye gider k içinden geçmez k’den k’ye sıfır veya daha fazla gider i’den k’ye ilk kez gider
Tümevarımın görseli k’ye giden yol k içinden geçmeyen i yollar k’den k’ye birkaç defa j k Durumlar < k k’dan j’ye
Son Adım DSÖ ile ayni dili olan DD, Rijn lerin toplamıdır, şöyle ki: n durumların sayısıdır, yani yollarda sınırlama yok. i başlangıç durumudur. j bitiş durumlarından bir tanesidir.
Örnek R233 = R232 + R232(R332)*R332 = R232(R332)* 1 3 2 Örnek R233 = R232 + R232(R332)*R332 = R232(R332)* R232 = (10)*0+1(01)*1 R332 = 0(01)*(1+00) + 1(10)*(0+11) R233 = [(10)*0+1(01)*1] [(0(01)*(1+00) + 1(10)*(0+11))]*
Özet Gördüğümüz tüm özdevinir çeşitleri (DSÖ, BSÖ, ε-BSÖ), ve ayni zamanda düzenli deyimler hep tam olarak ayni dilller kümesini tanımlar: düzenli diller.
DD’ler için Cebir Kuralları Birleşim ve bitiştirme toplama ve çarpma gibidir. + sırabağımsızdır (commutative) (a+b=b+a) ve birleşme özelliği vardır (associative) (a+(b+c)=(a+b)+c); bitişiklemenin birleşme özelliği vardır (a(bc)=(ab)c). Bitişikleme + üstünden dağılır (a(b+c)=ab+ac). Dikkat: Bitişikleme sırabağımsız değildir. (ab ve ba genellikle ayni değildir)
Özdeşlikler (identities) ve Yokediciler (annihilators) ∅ + için özdeştir. R + ∅ = R. ε bitişikleme için özdeştir. εR = Rε = R. ∅ bitişikleme için yokedicidir. ∅R = R∅ = ∅.