DHLTTB01
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM
KHOA CÔNG NGHỆ THÔNG TIN
------- oOo -------
ĐỀ THI MẪU NĂM 2007 (A)
Chuyên ngành: KHOA HỌC MÁY TÍNH
Môn Thi: Automata
Thời gian làm bài: 90 phút
Câu 7 (2,5 đ): Cho I={a,b}. Hãy xây dựng một automat hữu hạn M sao cho chấp nhận ngôn ngữ
L={(a
n
b
2
: n ≥ 0}
Câu 9 (2,5 đ): Cho văn phạm sau đây:
G= < {a,b} , {S} , P , S >
Với P = { S aSb, S λ} ( với λ là ký hiệu ký tự rỗng )
a) Hãy cho biết dạng thức của những dòng ký tự thuộc ngôn ngữ L(G).
(0,5 điểm)
b) Văn phạm G thuộc loại văn phạm gì ?
Câu 8 (2.5 đ): Xây dựng một automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ sau đây:
L= { a
n
b
n+1
: n ≥ 1}
Câu 6 (2.5 đ): Xây dựng một automat đẩy ngược ( pushdown automata) chấp nhận văn phạm sau đây:
G= < {a,b} , {S} , P , S >
Với P = { S aSb, S λ} ( với λ là ký hiệu ký tự rỗng )
------- hết -------
GIẢI
Câu 7 (2.5 đ): Automat hữu hạn M sao cho chấp nhận ngôn ngữ L={(a
n
b
2
: n ≥ 0} là:
M = (Q, Σ , δ , q
0 ,
F)
Với : Q = { q
0
, q
1
, q
2
, q
3
} ; Σ = { a,b} ; F = { q
2
}
δ( q
0
, a) = q
0
δ( q
0
, b) = q
1
δ( q
1
, a) = q
3
δ( q
1
, b) = q
2
δ( q
2
, a) = q
3
δ( q
2
, b) = q
3
δ( q
3
, a) = q
3
δ( q
3
, b) = q
3
Câu 9 (2.5 đ): Cho văn phạm sau đây:
G= < {a,b} , {S} , P , S >
q
0
q
1
q
3
q
2
a
b a,b
b
a
a,b
DHLTTB01
Với P = { S aSb, S λ} ( với λ là ký hiệu ký tự rỗng )
a) Đặt w ε { a,b}* , lúc đó từ P ta có:
S aSa aaSbb a
3
S b
3
… a
n
S b
n
Thế S λ vào ta được dạng thức của dòng ký tự thuộc L(G) là a
n
S b
n
: n ≥ 0
b) Văn phạm G thuộc loại văn phạm tuyến tính ( hoặc văn phạm phi ngữ cảnh)
Câu 8 (2.5 đ ): Automat đẩy ngược ( pushdown automaton) chấp nhận ngôn ngữ L= { a
n
b
n+1
: n ≥ 1} là:
M = (Q, Σ , Γ , δ , q
0 ,
z , F)
Với :
δ( q
0
, a , z ) = {( q
0
,az)} ,
δ( q
0
, a , a ) = {( q
0
,aa)} ,
δ( q
0
, λ , a ) = {( q
1
,a)} ,
δ( q
1
, b , a ) = {( q
1
, λ)} ,
δ( q
1
, b , z ) = {( q
1
, λ)} ,
δ( q
1
, λ , z ) = {( q
f
,z)} ,
Q = { q
0
, q
1
, q
f
} ; Σ = { a,b} ; Γ= {a,z} ; F = { q
f
}
Câu 10 (2.5 đ): Xây dựng một automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ sau đây:
L = {ww
R
: w ε { a,b}* }
với w
R
là sự đảo ngược của dòng ký tự w
và tập ký tự của ngôn ngữ là {a,b}
Giải : Automat đẩy ngược ( pushdown automata) chấp nhận ngôn ngữ L = {ww
R
: w ε { a,b}* } là:
M = (Q, Σ , Γ , δ , q
0 ,
z , F)
Với :
δ( q
0
, a , z ) = {( q
0
,az)} ,
δ( q
0
, a , a ) = {( q
0
,aa)} ,
δ( q
0
, a , b ) = {( q
0
,ab)} ,
δ( q
0
, b , a ) = {( q
0
,ba)} ,
δ( q
0
, b , b ) = {( q
0
,bb)} ,
δ( q
0
, b , z ) = {( q
0
,bz)} ,
δ( q
0
, λ , a ) = {( q
1
,a)} ,
δ( q
0
, λ , b ) = {( q
1
,b)} ,
δ( q
1
, a , a ) = {( q
1
, λ)},
δ( q
1
, b , b ) = {( q
1
, λ)},
δ( q
1
, λ , z ) = {( q
f
,z)} ,
Q = { q
0
, q
1
, q
f
} ; Σ = { a,b} ; Γ= {a,b,z} ; F = { q
f
}
Ghi chú: ......................................................................... Ký tên:
........................................................................................
........................................................................................ Trang: 2/2