Bài tp Lý thuyt Ngôn ng Hình thc và Automata
Trng H Bách Khoa - Khoa CNTT - Ngi son: H Vn Quân 1/5
BÀI TP LÝ THUYT NNHT&AUTOMATA
PHN NGÔN NG CHÍNH QUI
1. Tìm các dfa cho các ngôn ng sau:
L
1
= {w ∈ {a, b}*: n
a
(w) mod 2 = 0, n
b
(w) mod 2 = 1}
L
2
= {w ∈ {0, 1}*: mi chui 00 đc theo ngay sau bi mt s 1}
L
3
= {tp tt c các danh hiu ca Pascal}
Mô t danh hiu: bt đu bng mt kí t ch (a đn z, A đn Z) hoc du gch di
(_) sau đó là mt chui bt k bao gm các kí t ch, s (0 đn 9) và du gch di.
L
4
= {tp tt c các s nguyên ca Pascal}
Mô t s nguyên: 12, +12, -12
{tp tt c các s thc ca Pascal}
Mô t s thc: 12.5, +12.5, -12.5, 12E3, +12E3, -12E3, 12E-3, +12E+3, -12E+3,
+12E3, -12E3, 12E-312.5, +12.5, -12.5, Có th có bao nhiêu s 0 đi đu đu đc,
ví d: 012, 0012, +012, -012, 012.5, Có th đc vit di dng khoa hc nh sau:
12E3, 12.5E3, +12.5E3, -12.5E3, 12.5E+3, 12.5E-3, -12.5E-3,
2. Tìm các dfa cho các tp sau trên Σ = {a, b} bao gm:
L
14
= {kí hiu th t t bên phi khác vi kí hiu trái nht.}
5. Xây dng mt dfa mà chp nhn các chui trên {0, 1} nu và ch nu giá tr ca chui, đc din
dch nh là biu din nh phân ca mt s nguyên, là bng 0 trong modulo ca 5. Chng hn,
0101 và 1111, biu din tng ng các s nguyên 5 và 15, là đc chp nhn.
6. Tìm dfa chp nhn ngôn ng sau trên {a, b}:
L
15
= {vwv: w ∈{a, b}
*
, v= 2};
7. Tìm các nfa cho các ngôn ng sau:
L
1
= {vwv
R
∈ {a, b}*: |v| = 2}
L
2
= {abab
n
: n ≥ 0} ∪ {aba
n
: n ≥ 0} (vi điu kin nfa có không nhiu hn 5 trng thái)
L
3
= {a
n
b
Bài tp Lý thuyt Ngôn ng Hình thc và Automata
Trng H Bách Khoa - Khoa CNTT - Ngi son: H Vn Quân 2/5
Dfa M
1
Dfa M
2
Dfa M
3
Dfa M
4a b
λa b
λ
a b
λ a b
λ
q
0
q
, q
1
q
2
q
1
q
2
q
2
, q
0
q
1
q
2
q
2
q
0
q
1
q
1
2
q
0
, q
2
q
2
q
3
q
3
q
3
q
0
, q
4
q
3
q
4
q
3
q
4
q
4
q
4
q
3
F = {q
0
} F = {q
2
}
F = {q
2
} F = {q
4
}
q
0
q
1
q
2
q
0
q
1
q
2
q
0
q
1
q
3
q
1
q
4
q
2
q
2
q
2
q
3
q
2
q
1
q
4
q
2
q
0
q
3
q
3
q
3
q
3
q
5
q
5
q
3
q
4
q
3
q
0
q
4
q
2
q
3
q
5
q
4
q
6
q
5
1
q
7q
7
q
7
q
7
q
6
q
4F = {q
1
, q
4
}
F = {q
5
}
M
6
0
1
0, 1
1
0, λ
q
0
q
1
q
2
M
7
a, b
a
a
λ
b
λ
q
0
q
1
q
1
q
5
q
4
q
6
q
3
b
M
6
b
b
a
b
b
b
b
b
a
a
a
a
a
q
0
a
a
a
b
A
B
F
D
C
G
E
M
8
0
1
0,1
0
0
1
1
0,1
0,1
q
0
q
1
q
2
(Ghi chú : chng hn nu w có cha 000 thì xem nh chui con 00 xut hin đn 2 ln.)
L
3
= {w ∈ {0, 1}*: w bt đu bng 0 kt tht bng 1 và không cha chui con 00}
12. Tìm biu thc chính qui cho các nfa sau:
Nfa M
1
Nfa M
2a B a b
q
0
q
1
q
1q
0
q
1
q
2
q
3
q
2
F = {q
3
}
13. Xây dng các nfa và các dfa cho các BTCQ sau:
r
1
= aa* + aba*b*
r
2
= ab(a + ab)* (b + aa)
r
3
= ab*aa + bba*ab
r
4
= a*b(ab + b)*a*
r
5
= (ab* + a*b)(a + b*a)* b
r
: M
2
: 17. S dng b đ bm đ chng minh các ngôn ng sau là không chính qui:
L
1
= {a
2n
b
l
: n ≥ 0, l ≥ n + 2}
L
2
= {a
n
b
l
c
k
: n = l+1 hoc l ≠ k + 2}
18. Áp dng tính đóng ca h NNCQ đi vi các phép toán đ chng minh ngôn ng sau đây là
không chính qui:
L
1
= {a
n
b
l
:
a
b
a
a, b
a
b
b b
p
0
p
1
p
2
b
b
a a
q
0
q
2
q
1
Bài tp Lý thuyt Ngôn ng Hình thc và Automata
Trng H Bách Khoa - Khoa CNTT - Ngi son: H Vn Quân 4/5
PHN NGÔN NG PHI NG CNH
(w)}
L
5
= {a
n
b
m
: 2n ≤ m ≤ 3n}
20. Hãy s dng phng pháp phân tích cú pháp vét cn đ phân tích các chui w
1
, w
2
sau có đc
sinh ra bi vn phm sau hay không:
w
1
= aababb, w
2
= abababb.
S → aSb|SS|aA
A → aAa|bAb|a|b.
21. Hãy phân tích cú pháp cho các chui w sau trên các vn phm G tng ng. Trình bày dn xut
trái nht nu chui thuc vn phm
G
1
: S → aAS | bBS | λ (1, 2, 3)
A → aAA | b (4, 5)
B → bBB | a (6, 7)
w
1
dng loi 1 có th sinh ra lut sinh vô dng loi 2.
25. Hãy loi b đng thi các lut sinh-rng, lut sinh-đn v, lut sinh-vô dng ca vn phm sau:
S → aABC D → b|bS
A → λ E → cEF
B → λ F → d|dF.
C → AB|D|aE
26. Hãy bin đi các vn phm sau sang các vn phm có dng chun Greibach tng đng:
G
1
: S → BAbABa G
2
: S → SAa
A → aAb A → SbASa
B → bBaAa
27. S dng gii thut CYK đ xác đnh các chui w
1
= abab, w
2
= abaa có đc sinh ra bi các vn
phm tng ng G
1
, G
2
sau đây hay không, nu có hay đa ra các dn xut trái nht cho chúng:
G
1
: S → ABBB G
2
: S → AB
A → BAa A → BBa
m
: 2n ≤ m ≤ 3n} w
3
= aabbbbb
Bài tp Lý thuyt Ngôn ng Hình thc và Automata
Trng H Bách Khoa - Khoa CNTT - Ngi son: H Vn Quân 5/5
L
4
= {w: n
a
(w) = n
b
(w) + 2} w
4
= abaaba
L
5
= {w: n
a
(w) = 2n
b
(w)} w
5
= abbaaa
L
6
= {w: 2n
b
(w) ≤ n
G
1
: S → aAS | bBS | λ (1, 2, 3)
A → aAA | b (4, 5)
B → bBB | a (6, 7)
w
1
= abba, w
2
= bbaaab
G
2
: S → aS | bXaS (1, 2)
X → aXbX | bXaX | λ (3, 4, 5)
w
1
= abaab, w
2
= baaab
31. Hãy xây dng các dpda cho các ngôn ng sau và tìm các dãy chuyn hình trng đ chp nhn các
chui đc cho tng ng bên cnh.
L
1
= {a
n
b
2n
: n ≥ 0} w
1
= aabbbb
a
(w) = n
b
(w)} w
1
= abbaab
L
2
= {w: n
a
(w) > n
b
(w)} w
2
= abbaaba
L
3
= L(a*ba) ∪ L(abbb*) w
3
= abbb
34. Hãy xét xem các ngôn ng cho sau đây có PNC hay không. Nu không hãy s dng b đ bm
cho NNPNC đ chng minh.
L
1
= {a
n
b
j
c
k
L
3
= {a
n
b
j
c
k
: n < j, n ≤ k ≤ j} L
7
= { a
n
b
j
a
k
b
l
: n ≤ k, j ≤ l}
L
4
= {w: n
a
(w) < n
b
(w) < n
c
(w)} L
8
= {a
b
j
: j ≤ n ≤ 2j - 1}
L
4
= L(G) vi G đc cho nh sau:
E → T|E + T
T → F|T * F
F → I|(E)
I → a|b|c
36. Cho vn phm G sau. Hãy phân tích cú pháp cho các chui w
1
= (a+b*c)*a và w
2
= (a + b)*+c
theo phng pháp Earley.
G:
E → T|E + T F → I|(E)
T → F|T * F I → a|b|c