logo

NFA örnekleri

Örnek 1:

Geçiş tablosu için aşağıda verildiği gibi bir NFA tasarlayın:

Mevcut durum 0 1
→q0 q0, q1 q0, q2
q1 q3 e
q2 q2, q3 q3
→ç3 q3 q3

Çözüm:

Geçiş diyagramı tabloda verilen eşleme fonksiyonu kullanılarak çizilebilir.

NFA örnekleri

Burada,

 δ(q0, 0) = {q0, q1} δ(q0, 1) = {q0, q2} Then, δ(q1, 0) = {q3} Then, δ(q2, 0) = {q2, q3} δ(q2, 1) = {q3} Then, δ(q3, 0) = {q3} δ(q3, 1) = {q3} 

Örnek 2:

∑ = {0, 1} ile bir NFA tasarlayın, 01 ile biten tüm dizeleri kabul edin.

Çözüm:

NFA örnekleri

Dolayısıyla NFA şöyle olacaktır:

NFA örnekleri

Örnek 3:

Çift '1'in ardından çift '0'ın geldiği ∑ = {0, 1} ile bir NFA tasarlayın.

kurt tilkiye karşı

Çözüm:

Çift 1'li FA aşağıdaki gibidir:

NFA örnekleri

Hemen ardından çift 0 gelmelidir.

Daha sonra,

NFA örnekleri

Şimdi double 1'den önce 0 ve 1'den oluşan herhangi bir dize olabilir. Benzer şekilde, double 0'dan sonra 0 ve 1'den oluşan herhangi bir dize olabilir.

Dolayısıyla NFA şöyle olur:

NFA örnekleri

Şimdi 01100011 dizesini ele alıyoruz

 q0 → q1 → q2 → q3 → q4 → q4 → q4 → q4 

Örnek 4:

Tüm dizelerin 1110 alt dizesini içerdiği bir NFA tasarlayın.

Çözüm:

Dil, alt diziyi (1010) içeren tüm diziden oluşur. Kısmi geçiş diyagramı şu şekilde olabilir:

NFA örnekleri

Artık 1010 alt dize olabilir. Bu nedenle, dilin 1010 alt dizesinin korunabilmesi için 0 ve 1 girişlerini ekleyeceğiz. Dolayısıyla NFA şöyle olur:

NFA örnekleri

Yukarıdaki geçiş diyagramına ait geçiş tablosu aşağıda verilebilir:

Mevcut durum 0 1
→q1 q1 q1, q2
q2 q3
q3 q4
q4 q5
*q5 q5 q5

111010 dizesini düşünün,

 δ(q1, 111010) = δ(q1, 1100) = δ(q1, 100) = δ(q2, 00) 

Takılmak! 0 giriş sembolü için q2'den bir yol olmadığından, 111010 dizesini başka bir şekilde işleyebiliriz.

java csv dosyasını oku
 δ(q1, 111010) = δ(q2, 1100) = δ(q3, 100) = δ(q4, 00) = δ(q5, 0) = δ(q5, ε) 

Durum q5 kabul durumudur. Tamamını taradık ve son duruma geldik.

Örnek 5:

∑ = {0, 1} olan bir NFA tasarlayın, sağ uçtan üçüncü sembolün her zaman 0 olduğu tüm dizeleri kabul eder.

Çözüm:

NFA örnekleri

Böylece sağdan üçüncü sembolü her zaman '0' olarak alırız. NFA şunlar olabilir:

NFA örnekleri

Yukarıdaki görüntü bir NFA'dır çünkü q0 durumunda 0 girişiyle q0 veya q1 durumuna gidebiliriz.