Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Solution to Exam Problem on Context-Free Grammars and Pushdown Automata, Study Guides, Projects, Research of Computer Science

The solution to problem 4 of a short exam on formal languages, context-free grammars, and pushdown automata. It includes the production rules for the grammar, the design of a pushdown automaton, and the acceptance of specific strings by the automaton.

Typology: Study Guides, Projects, Research

2018/2019

Uploaded on 11/17/2019

mhmtfrt
mhmtfrt 🇹🇷

5

(1)

18 documents

1 / 1

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
29-12-2011
BİÇİMSEL DİLLER VE OTOMATLAR
KISA SINAV-4
∑ = {a,b} alfabesi üzerinde tanımlanmış L(M)={ai bi+j aj | } dili için,
a) Gramer üretim kurallarını yazınız.
b) Bu dili gerçekleyen bir yığın yapılı otomat tasarlayarak, geçiş kurallarını
veriniz.
c) aabbba ve aaabbb katarlarının tasarladığınız otomat tarafından nasıl kabul
edildiğini gösteriniz.
Süre: 30 dakika
ÇÖZÜM
a) L(M)={ai bi+j aj | } L(M)={ai bi bj aj | }
<S> ::= <A><B>
<A> ::= a<A>b | ab
<B> ::= b<B>a | Λ
Chomsky sınıflandırmasına göre: Tip2
b) M = ( K, , Γ, Δ, s, F)
K = { q0, q1, q2, q3, f }, = { a,b}, Γ = { a,b,c}, s = {q0}, F = {f}
Δ = { [(q0, Λ, Λ), (q1, c)], [(q1, a, Λ), (q1, a)], [(q1, b, a), (q2, Λ)], [(q2, b, a), (q2, Λ)],
[(q2, Λ, c), (f, Λ)], [(q2, b, c), (q2, bc)], [(q2, b, b), (q2, bb)], [(q2, a, b), (q3, Λ)],
[(q3, a, b), (q3, Λ)], [(q3, Λ, c), (f, Λ)] }
q0: Yığının boşaldığını anlayabilmek için yığına bir c atılarak q1 durumuna geçiliyor.
q1: Giriş katarından a’lar okundukça yığına atılıyor. Giriş katarından b okunursa yığından bir a
çekilerek q2 durumuna geçiliyor.
q2: Giriş katarından okunan her b için yığından bir a çekiliyor. Yığın boşaldığında giriş katarının da
sonuna gelinmişse, f durumuna geçiliyor. Yığın boşaldığında giriş katarından b okunursa yığına
atılıyor ve bunu takiben okunan b’ler yığına atılıyor. Giriş katarından a okunursa yığından bir b
çekilerek q3 durumuna geçiliyor.
q3: Giriş katarından okunan her a için yığından bir b çekiliyor. Yığın boşaldığında giriş katarının da
sonuna gelinmişse, f durumuna geçiliyor.
f: PDA sonlanıyor
c)
Durum
Katar
Yığın
q0
aabbba
Λ
q1
aabbba
c
q1
abbba
ac
q1
bbba
aac
q2
bba
ac
q2
ba
c
q2
a
bc
q3
Λ
c
f
Λ
Λ
Katar
Yığın
aaabbb
Λ
aaabbb
c
aabbb
ac
abbb
aac
bbb
aaac
bb
aac
b
ac
Λ
c
Λ
Λ

Partial preview of the text

Download Solution to Exam Problem on Context-Free Grammars and Pushdown Automata and more Study Guides, Projects, Research Computer Science in PDF only on Docsity!

BİÇİMSEL DİLLER VE OTOMATLAR

KISA SINAV-

∑ = {a,b} alfabesi üzerinde tanımlanmış L(M)={ai^ bi+j^ aj^ | } dili için,

a) Gramer üretim kurallarını yazınız.

b) Bu dili gerçekleyen bir yığın yapılı otomat tasarlayarak, geçiş kurallarını

veriniz.

c) aabbba ve aaabbb katarlarının tasarladığınız otomat tarafından nasıl kabul

edildiğini gösteriniz.

Süre: 30 dakika

ÇÖZÜM

a) L(M)={ai^ bi+j^ aj^ | }  L(M)={ai^ bi^ bj^ aj^ | }

::=

::= ab | ab

::= ba | Λ Chomsky sınıflandırmasına göre: Tip

b) M = ( K, , Γ, Δ, s, F)

K = { q0, q1, q2, q3, f },  = { a,b}, Γ = { a,b,c}, s = {q0}, F = {f} Δ = { [(q0, Λ, Λ), (q1, c)], [(q1, a, Λ), (q1, a)], [(q1, b, a), (q2, Λ)], [(q2, b, a), (q2, Λ)], [(q2, Λ, c), (f, Λ)], [(q2, b, c), (q2, bc)], [(q2, b, b), (q2, bb)], [(q2, a, b), (q3, Λ)], [(q3, a, b), (q3, Λ)], [(q3, Λ, c), (f, Λ)] } q0: Yığının boşaldığını anlayabilmek için yığına bir c atılarak q1 durumuna geçiliyor. q1: Giriş katarından a’lar okundukça yığına atılıyor. Giriş katarından b okunursa yığından bir a çekilerek q2 durumuna geçiliyor. q2: Giriş katarından okunan her b için yığından bir a çekiliyor. Yığın boşaldığında giriş katarının da sonuna gelinmişse, f durumuna geçiliyor. Yığın boşaldığında giriş katarından b okunursa yığına atılıyor ve bunu takiben okunan b’ler yığına atılıyor. Giriş katarından a okunursa yığından bir b çekilerek q 3 durumuna geçiliyor. q3: Giriş katarından okunan her a için yığından bir b çekiliyor. Yığın boşaldığında giriş katarının da sonuna gelinmişse, f durumuna geçiliyor. f: PDA sonlanıyor

c) Durum Katar Yığın

q0 aabbba Λ

q1 aabbba c

q1 abbba ac

q1 bbba aac q2 bba ac q2 ba c q2 a bc q3 Λ c f Λ Λ

Durum Katar Yığın

q0 aaabbb Λ

q1 aaabbb c

q1 aabbb ac

q1 abbb aac

q1 bbb aaac q2 bb aac q2 b ac q2 Λ c f Λ Λ